comparison src/aim.c @ 1560:72235e3fcff6

[gaim-migrate @ 1570] Jason Boerner's --file patch. Also added/removed files from POTFILES.in and added the MSN protocol spec. committer: Tailor Script <tailor@pidgin.im>
author Eric Warmenhoven <eric@warmenhoven.org>
date Sat, 10 Mar 2001 22:42:47 +0000
parents 5e54c7a2a394
children 23ad4f7b644f
comparison
equal deleted inserted replaced
1559:99606e418aae 1560:72235e3fcff6
71 71
72 GtkWidget *mainwindow = NULL; 72 GtkWidget *mainwindow = NULL;
73 73
74 int opt_away = 0; 74 int opt_away = 0;
75 char *opt_away_arg = NULL; 75 char *opt_away_arg = NULL;
76 char *opt_rcfile_arg = NULL;
76 77
77 void BuddyTickerCreateWindow(void); 78 void BuddyTickerCreateWindow(void);
78 79
79 void cancel_logon(void) 80 void cancel_logon(void)
80 { 81 {
422 "Make away on signon (optional argument MESG specifies name of away message to use)", "[MESG]"}, 423 "Make away on signon (optional argument MESG specifies name of away message to use)", "[MESG]"},
423 {"login", 'l', POPT_ARG_STRING, NULL, 'l', 424 {"login", 'l', POPT_ARG_STRING, NULL, 'l',
424 "Automatically login (optional argument NAME specifies account(s) to use)", "[NAME]"}, 425 "Automatically login (optional argument NAME specifies account(s) to use)", "[NAME]"},
425 {"user", 'u', POPT_ARG_STRING, &opt_user_arg, 'u', 426 {"user", 'u', POPT_ARG_STRING, &opt_user_arg, 'u',
426 "Use account NAME", "NAME"}, 427 "Use account NAME", "NAME"},
428 {"file", 'f', POPT_ARG_STRING, &opt_rcfile_arg, 'f',
429 "Use FILE as config", "FILE"},
427 {0, 0, 0, 0, 0, 0, 0} 430 {0, 0, 0, 0, 0, 0, 0}
428 }; 431 };
429 #else 432 #else
430 struct option long_options[] = { 433 struct option long_options[] = {
431 {"acct", no_argument, NULL, 'a'}, 434 {"acct", no_argument, NULL, 'a'},
432 {"away", optional_argument, NULL, 'w'}, 435 {"away", optional_argument, NULL, 'w'},
433 {"help", no_argument, NULL, 'h'}, 436 {"help", no_argument, NULL, 'h'},
434 {"login", optional_argument, NULL, 'l'}, 437 {"login", optional_argument, NULL, 'l'},
435 {"user", required_argument, NULL, 'u'}, 438 {"user", required_argument, NULL, 'u'},
439 {"file", required_argument, NULL, 'f'},
436 {"version", no_argument, NULL, 'v'}, 440 {"version", no_argument, NULL, 'v'},
437 {0, 0, 0, 0} 441 {0, 0, 0, 0}
438 }; 442 };
439 #endif /* USE_GNOME */ 443 #endif /* USE_GNOME */
440 444
509 opt_away_arg = g_strdup (argv[i+1]); 513 opt_away_arg = g_strdup (argv[i+1]);
510 strcpy (argv[i+1], " "); 514 strcpy (argv[i+1], " ");
511 } 515 }
512 strcpy(argv[i], " "); 516 strcpy(argv[i], " ");
513 } 517 }
518 /* --file option */
519 else if (strstr (argv[i], "--fi") == argv[i]) {
520 char *equals;
521 if ((equals = strchr(argv[i], '=')) != NULL) {
522 /* --file=FILE */
523 opt_rcfile_arg = g_strdup (equals+1);
524 } else if (i+1 < argc && argv[i+1][0] != '-') {
525 /* --file FILE */
526 opt_rcfile_arg = g_strdup (argv[i+1]);
527 strcpy (argv[i+1], " ");
528 }
529 strcpy (argv[i], " ");
530 }
531 /* -f option */
532 else if (strstr (argv[i], "-f") == argv[i]) {
533 if (strlen (argv[i]) > 2) {
534 /* -fFILE */
535 opt_rcfile_arg = g_strdup (argv[i]+2);
536 } else if (i+1 < argc && argv[i+1][0] != '-') {
537 /* -f FILE */
538 opt_rcfile_arg = g_strdup (argv[i+1]);
539 strcpy (argv[i+1], " ");
540 }
541 strcpy(argv[i], " ");
542 }
514 } 543 }
515 544
516 gnome_init_with_popt_table(PACKAGE, VERSION, argc, argv, popt_options, 0, NULL); 545 gnome_init_with_popt_table(PACKAGE, VERSION, argc, argv, popt_options, 0, NULL);
517 #else 546 #else
518 gtk_init(&argc, &argv); 547 gtk_init(&argc, &argv);
519 548
520 /* scan command-line options */ 549 /* scan command-line options */
521 opterr = 1; 550 opterr = 1;
522 while ((opt = getopt_long(argc, argv, "ahl::w::u:v", 551 while ((opt = getopt_long(argc, argv, "ahl::w::u:f::v",
523 long_options, NULL)) != -1) { 552 long_options, NULL)) != -1) {
524 switch (opt) { 553 switch (opt) {
525 case 'u': /* set user */ 554 case 'u': /* set user */
526 opt_user = 1; 555 opt_user = 1;
527 opt_user_arg = g_strdup(optarg); 556 opt_user_arg = g_strdup(optarg);
534 opt_away = 1; 563 opt_away = 1;
535 opt_away_arg = g_strdup (optarg); 564 opt_away_arg = g_strdup (optarg);
536 break; 565 break;
537 case 'a': /* account editor */ 566 case 'a': /* account editor */
538 opt_acct = 1; 567 opt_acct = 1;
568 break;
569 case 'f':
570 opt_rcfile_arg = g_strdup (optarg);
539 break; 571 break;
540 case 'v': /* version */ 572 case 'v': /* version */
541 opt_version = 1; 573 opt_version = 1;
542 break; 574 break;
543 case 'h': /* help */ 575 case 'h': /* help */