コード例 #1
0
ファイル: menu_info.c プロジェクト: mikeri/pasystray
void menu_info_item_clicked(GtkWidget* item, GdkEventButton* event,
        menu_info_item_t* mii)
{
    g_debug("[menu_info] item clicked mod:%s%s button:%i",
            (event->state & GDK_CONTROL_MASK) ? "[ctrl]" : "",
            (event->state & GDK_MOD1_MASK) ? "[alt]" : "",
            event->button);

    switch(event->button)
    {
        case 1:
            /* on alt + left-click, toggle mute device/stream */
            if(event->state & GDK_MOD1_MASK)
                pulseaudio_toggle_mute(mii);

            /* on left-click, set device as default */
            else
                pulseaudio_set_default(mii);
            break;
        /* on middle-click, toggle mute device/stream */
        case 2:
            pulseaudio_toggle_mute(mii);
            break;
        /* on right-click, show context menu (if any) */
        case 3:
            if(mii->context)
                gtk_menu_popup(GTK_MENU(mii->context), NULL, NULL, NULL, NULL,
                        (event != NULL) ? event->button : 0,
                        gdk_event_get_time((GdkEvent*)event));
            break;
    }
}
コード例 #2
0
ファイル: menu_info.c プロジェクト: KoviRobi/pasystray
void menu_info_item_clicked(GtkWidget* item, GdkEventButton* event,
        menu_info_item_t* mii)
{
#ifdef DEBUG
    g_message("[systray] button-press-event mod:%s button:%i",
            (event->state & GDK_CONTROL_MASK) ? "ctrl" : "", event->button);
#endif

    switch(event->button)
    {
        /* on left-click, set device as default */
        case 1:
            pulseaudio_set_default(mii);
            break;
        /* on middle-click, toggle mute device/stream */
        case 2:
            pulseaudio_toggle_mute(mii);
            break;
        /* on right-click, show context menu (if any) */
        case 3:
            if(mii->context)
                gtk_menu_popup(GTK_MENU(mii->context), NULL, NULL, NULL, NULL,
                        (event != NULL) ? event->button : 0,
                        gdk_event_get_time((GdkEvent*)event));
            break;
    }
}