Пример #1
0
void show_fonts(hash_entry h[])
{
    int i;
    if ( h == NULL ) {  return;  }
    for(i=0; i<HASH_KEYS_PER_TABLE; i++)
    {
        if ( h[i].key == NULL ) {  continue;  }
        if ( h[i].key == hash_next_magic ) {  show_fonts(h[i].value);  }
        else {  printf("%s\t%p\t%s\n", h[i].key, h[i].value, (*(((fontface*)h[i].value)->ftface))->family_name);  }
    }
}
Пример #2
0
int main(int argc, char **argv)
{
    int argcnt = 0, i;

    INIT_NAME;

    /* Handle command line arguments, open display */
    Setup_Display_And_Screen(&argc, argv);

    for (argv++, argc--; argc; argv++, argc--) {
        if (argv[0][0] == '-') {
            if (argcnt > 0) usage ();
            for (i=1; argv[0][i]; i++)
                switch(argv[0][i]) {
                case 'l':
                    long_list++;
                    break;
                case 'm':
                    min_max++;
                    break;
                case 'C':
                    columns = 0;
                    break;
                case '1':
                    columns = 1;
                    break;
                case 'f': /* "-fn" */
                    if (--argc <= 0) usage ();
                    if (argv[0][i+1] != 'n') usage ();
                    argcnt++;
                    argv++;
                    get_list(argv[0]);
                    goto next;
                case 'w':
                    if (--argc <= 0) usage ();
                    argv++;
                    max_output_line_width = atoi(argv[0]);
                    goto next;
                case 'n':
                    if (--argc <= 0) usage ();
                    argv++;
                    columns = atoi(argv[0]);
                    goto next;
                case 'o':
                    open_instead_of_list = True;
                    break;
                case 'u':
                    sort_output = False;
                    break;
                default:
                    usage();
                    break;
                }
            if (i == 1)
                usage();
        } else {
            argcnt++;
            get_list(argv[0]);
        }
      next: ;
    }

    if (argcnt == 0)
        get_list("*");

    show_fonts();
    
    Close_Display();
    return EXIT_SUCCESS;
}
Пример #3
0
int
main(int argc, char *argv[])
{
    int         argcnt = 0,
                i;
    char       *servername = NULL;

    program_name = argv[0];

    for (i = 1; i < argc; i++) {
	if (strncmp(argv[i], "-s", 2) == 0) {
	    if (++i >= argc)
		usage();
	    servername = argv[i];
	}
    }

    if ((svr = FSOpenServer(servername)) == NULL) {
	if (FSServerName(servername) == NULL) {
	    fprintf(stderr, "%s: no font server defined\n", program_name);
	    exit(0);
	}
	fprintf(stderr, "%s:  unable to open server \"%s\"\n",
		program_name, FSServerName(servername));
	exit(0);
    }
    /* Handle command line arguments, open display */
    for (argv++, argc--; argc; argv++, argc--) {
	if (argv[0][0] == '-') {
	    if (argcnt > 0)
		usage();
	    for (i = 1; argv[0][i]; i++)
		switch (argv[0][i]) {
		case 'l':
		    long_list++;
		    break;
		case 'm':
		    min_max++;
		    break;
		case 'C':
		    columns = 0;
		    break;
		case '1':
		    columns = 1;
		    break;
		case 'f':
		    if (--argc <= 0)
			usage();
		    argcnt++;
		    argv++;
		    get_list(argv[0]);
		    goto next;
		case 'w':
		    if (--argc <= 0)
			usage();
		    argv++;
		    max_output_line_width = atoi(argv[0]);
		    goto next;
		case 'n':
		    if (--argc <= 0)
			usage();
		    argv++;
		    columns = atoi(argv[0]);
		    goto next;
		case 'u':
		    sort_output = False;
		    break;
		case 's':	/* eat -s */
		    if (--argc <= 0)
			usage();
		    argv++;
		    goto next;
		default:
		    usage();
		    break;
		}
	    if (i == 1)
		usage();
	} else {
	    argcnt++;
	    get_list(argv[0]);
	}
next:	;
    }
    if (argcnt == 0)
	get_list("*");
    FSCloseServer(svr);
    show_fonts();
    exit(0);
}