示例#1
0
文件: main.c 项目: setzer22/lxpanel
static void process_client_msg ( XClientMessageEvent* ev )
{
    int cmd = ev->data.b[0];
    switch( cmd )
    {
#ifndef DISABLE_MENU
        case LXPANEL_CMD_SYS_MENU:
        {
            GSList* l;
            for( l = all_panels; l; l = l->next )
            {
                LXPanel* p = (LXPanel*)l->data;
                GList *plugins, *pl;

                if (p->priv->box == NULL)
                    continue;
                plugins = gtk_container_get_children(GTK_CONTAINER(p->priv->box));
                for (pl = plugins; pl; pl = pl->next)
                {
                    const LXPanelPluginInit *init = PLUGIN_CLASS(pl->data);
                    if (init->show_system_menu)
                        /* queue to show system menu */
                        init->show_system_menu(pl->data);
                }
                g_list_free(plugins);
            }
            break;
        }
#endif
        case LXPANEL_CMD_RUN:
            gtk_run();
            break;
        case LXPANEL_CMD_CONFIG:
            {
            LXPanel * p = ((all_panels != NULL) ? all_panels->data : NULL);
            if (p != NULL)
                panel_configure(p, 0);
            }
            break;
        case LXPANEL_CMD_RESTART:
            restart();
            break;
        case LXPANEL_CMD_EXIT:
            gtk_main_quit();
            break;
    }
}
示例#2
0
	static void
engy_resize(Ecore_Evas * ee)
{
	Evas_Coord w, h;
	
	if (!shell->evas)
		return;
	
	evas_output_viewport_get(shell->evas, NULL, NULL, &w, &h);

	shell->w = (int)w;
	shell->h = (int)h;
	evas_object_resize(shell->o_bg, shell->w, shell->h);

        cl_configure(w,h);
        log_configure();
        info_configure();
        panel_configure();
        gui_put_string(DUP("_zoom_in|_zoom_out"));
}