コード例 #1
0
ファイル: base_server.cpp プロジェクト: jlijian3/mcd-server
void base_server_init(const Setup *setup) {
  base_conf_init(setup);
  /*cout << "event method: " << event_base_get_method(main_base) << endl;*/
  evthread_use_pthreads();
  thread_init();
  main_base = get_main_thread()->get_event_base();
  conn_init();
  clock_handler(0, 0, 0);
}
コード例 #2
0
void init_clock_indicator(void)
{
    if(!config.clock.enabled)
    {
        gtk_widget_hide(greeter.ui.clock.time_box);
        return;
    }

    if(config.clock.calendar && GTK_IS_MENU_SHELL(greeter.ui.clock.time_menu))
    {
        GtkWidget* calendar_menuitem = NULL;

        #ifdef CLOCK_USE_IDO_CALENDAR
        calendar_menuitem = ido_calendar_menu_item_new();
        greeter.ui.clock.calendar_widget = ido_calendar_menu_item_get_calendar(IDO_CALENDAR_MENU_ITEM(calendar_menuitem));
        #else
        calendar_menuitem = create_simple_calendar_item(&greeter.ui.clock.calendar_widget);
        #endif

        if(!greeter.ui.clock.date_widget)
            greeter.ui.clock.date_widget = gtk_menu_item_new_with_label("");
        gtk_menu_shell_append(GTK_MENU_SHELL(greeter.ui.clock.time_menu), greeter.ui.clock.date_widget);
        gtk_menu_shell_append(GTK_MENU_SHELL(greeter.ui.clock.time_menu), calendar_menuitem);

        gtk_widget_add_events(greeter.ui.clock.date_widget, GDK_VISIBILITY_NOTIFY_MASK);
        visibility_notify_id = g_signal_connect(greeter.ui.clock.date_widget,
                                                "visibility-notify-event",
                                                G_CALLBACK(on_visibility_notify),
                                                NULL);

        gtk_widget_show_all(greeter.ui.clock.time_menu);
        if(GTK_IS_MENU_ITEM(greeter.ui.clock.time_widget))
            gtk_menu_item_set_submenu(GTK_MENU_ITEM(greeter.ui.clock.time_widget), greeter.ui.clock.time_menu);
    }
    else if(GTK_IS_MENU_ITEM(greeter.ui.clock.time_widget))
        gtk_menu_item_set_submenu(GTK_MENU_ITEM(greeter.ui.clock.time_widget), NULL);
    else
        gtk_widget_hide(greeter.ui.clock.time_menu);

    if(greeter.ui.clock.time_widget)
    {
        clock_handler(NULL);
        g_timeout_add_seconds(1, (GSourceFunc)clock_handler, (gpointer)TRUE);
        gtk_widget_show(greeter.ui.clock.time_widget);
    }
}