int main( int argc, char * argv[] ) { Desktop desktop; ooc_init_class( Exception ); srand ( time(NULL) ); /* initialize random seed */ desktop = desktop_new(); { ooc_manage_object( desktop ); ooc_get_interface_must_have( desktop, Serializable )->serialize( (Object) desktop, 0 ); ooc_delete( (Object) ooc_pass( desktop ) ); } ooc_finalize_all(); return 0; }
/* main */ int main(int argc, char * argv[]) { int o; Desktop * desktop; DesktopPrefs prefs; char * p; if(setlocale(LC_ALL, "") == NULL) _error("setlocale", 1); bindtextdomain(PACKAGE, LOCALEDIR); textdomain(PACKAGE); prefs.alignment = -1; prefs.icons = -1; prefs.monitor = -1; prefs.popup = 1; prefs.window = -1; gtk_init(&argc, &argv); while((o = getopt(argc, argv, "HVWacfhm:nNw")) != -1) switch(o) { case 'H': prefs.alignment = DESKTOP_ALIGNMENT_HORIZONTAL; break; case 'V': prefs.alignment = DESKTOP_ALIGNMENT_VERTICAL; break; case 'W': prefs.window = 0; break; case 'a': prefs.icons = DESKTOP_ICONS_APPLICATIONS; break; case 'c': prefs.icons = DESKTOP_ICONS_CATEGORIES; break; case 'f': prefs.icons = DESKTOP_ICONS_FILES; break; case 'h': prefs.icons = DESKTOP_ICONS_HOMESCREEN; break; case 'm': prefs.monitor = strtol(optarg, &p, 0); if(optarg[0] == '\0' || *p != '\0') return _usage(); break; case 'n': prefs.icons = DESKTOP_ICONS_NONE; break; case 'N': prefs.popup = 0; break; case 'w': prefs.window = 1; break; default: return _usage(); } if(optind < argc) return _usage(); if((desktop = desktop_new(&prefs)) == NULL) { gtk_main(); return 2; } gtk_main(); desktop_delete(desktop); return 0; }