static gboolean on_FileSelect_key_release_event( GtkWidget * widget, GdkEvent * event, gpointer user_data ) { if ( GTK_WIDGET_TYPE( widget ) == GTK_TYPE_BUTTON ) { if (event->key.keyval == GDK_Return) gtk_button_released( GTK_BUTTON( widget ) ); } else { switch ( event->key.keyval ) { case GDK_Escape: gtk_button_released( GTK_BUTTON( fsCancel ) ); break; case GDK_Return: gtk_button_released( GTK_BUTTON( fsOk ) ); break; case GDK_BackSpace: gtk_button_released( GTK_BUTTON( fsUp ) ); gtk_widget_grab_focus( fsFNameList ); break; } } return FALSE; }
static gboolean mailwatch_button_release_cb(GtkWidget *w, GdkEventButton *evt, gpointer user_data) { XfceMailwatchPlugin *mwp = user_data; if(evt->x >= w->allocation.x && evt->x < w->allocation.x + w->allocation.width && evt->y >= w->allocation.y && evt->y < w->allocation.y + w->allocation.height) { switch(evt->button) { case 1: /* left */ if(mwp->click_command && *mwp->click_command) xfce_exec(mwp->click_command, FALSE, FALSE, NULL); break; case 2: /* middle */ xfce_mailwatch_force_update(mwp->mailwatch); break; } } if(evt->button == 2) gtk_button_released(GTK_BUTTON(w)); return FALSE; }
gboolean on_FileSelect_key_release_event( GtkWidget * widget,GdkEventKey * event,gpointer user_data ) { switch ( event->keyval ) { case GDK_Escape: gtk_button_released( GTK_BUTTON( fsCancel ) ); break; case GDK_Return: gtk_button_released( GTK_BUTTON( fsOk ) ); break; case GDK_BackSpace: gtk_button_released( GTK_BUTTON( fsUp ) ); break; } return FALSE; }
static gboolean fs_fsFNameList_event( GtkWidget * widget, GdkEvent * event, gpointer user_data ) { GdkEventButton *bevent; gint row, col; (void) user_data; bevent = (GdkEventButton *) event; if ( event->type == GDK_BUTTON_RELEASE && bevent->button == 2 ) { if ( gtk_clist_get_selection_info( GTK_CLIST( widget ), bevent->x, bevent->y, &row, &col ) ) { gtk_clist_get_text( GTK_CLIST( widget ), row, 1, &fsSelectedFile ); g_free( fsSelectedFileUtf8 ); fsSelectedFileUtf8 = g_filename_from_utf8( fsSelectedFile, -1, NULL, NULL, NULL ); if ( fsSelectedFileUtf8 ) fsSelectedFile = fsSelectedFileUtf8; gtk_button_released( GTK_BUTTON( fsOk ) ); return TRUE; } } return FALSE; }
static void fs_fsFNameList_select_row( GtkWidget * widget, gint row, gint column, GdkEventButton *bevent, gpointer user_data) { gtk_clist_get_text( GTK_CLIST(widget ),row,1,&fsSelectedFile ); g_free( fsSelectedFileUtf8 ); fsSelectedFileUtf8 = g_filename_from_utf8( fsSelectedFile, -1, NULL, NULL, NULL ); if ( fsSelectedFileUtf8 ) fsSelectedFile = fsSelectedFileUtf8; if( bevent && bevent->type == GDK_BUTTON_PRESS ) gtk_button_released( GTK_BUTTON( fsOk ) ); }
static void panel_menu_button_menu_deactivated (PanelMenuButton *button) { panel_toplevel_pop_autohide_disabler (button->priv->toplevel); GTK_BUTTON (button)->in_button = FALSE; BUTTON_WIDGET (button)->ignore_leave = FALSE; gtk_button_released (GTK_BUTTON (button)); }
static void fs_fsFNameList_select_row( GtkCList * clist, gint row, gint column, GdkEvent * event, gpointer user_data) { fsCurrFNameListSelected = row; gtk_clist_get_text( clist,row,1,&fsSelectedFile ); g_free( fsSelectedFileUtf8 ); fsSelectedFileUtf8 = g_filename_from_utf8( fsSelectedFile, -1, NULL, NULL, NULL ); if ( fsSelectedFileUtf8 ) fsSelectedFile = fsSelectedFileUtf8; if( event && event->type == GDK_BUTTON_PRESS ) gtk_button_released( GTK_BUTTON( fsOk ) ); }
/* Emits a GtkButton::released signal to the given GtkButton. */ int clip_GTK_BUTTONRELEASED(ClipMachine * ClipMachineMemory) { C_widget *cbtn = _fetch_cw_arg(ClipMachineMemory); CHECKCWID(cbtn, GTK_IS_BUTTON); gtk_button_released(GTK_BUTTON(cbtn->widget)); return 0; err: return 1; }
static gboolean proxy_button_release_event_cb (GtkButton *button, GdkEventButton *event, gpointer user_data) { if (event->button == 2) { gtk_button_released (button); } return FALSE; }
static void restart_widget (AbiTable *table) { table->selected_cols = init_cols; table->selected_rows = init_rows; table->total_cols = my_max(init_cols + 1, 5); table->total_rows = my_max(init_rows + 1, 6); gtk_button_released(GTK_BUTTON(table)); gtk_widget_hide(GTK_WIDGET(table->window)); }
static gboolean gtk_button_button_release (GtkWidget *widget, GdkEventButton *event) { GtkButton *button; if (event->button == 1) { button = GTK_BUTTON (widget); gtk_button_released (button); } return TRUE; }
static void tile_clicked (GtkButton * widget) { TileEvent *tile_event; tile_event = g_new0 (TileEvent, 1); tile_event->type = TILE_EVENT_ACTIVATED_DOUBLE_CLICK; tile_event->time = gtk_get_current_event_time (); g_signal_emit (widget, tile_signals[TILE_ACTIVATED_SIGNAL], 0, tile_event); gtk_button_released (widget); g_free (tile_event); }
static gboolean tile_button_release (GtkWidget * widget, GdkEventButton * event) { Tile *tile = TILE (widget); TilePrivate *priv = TILE_GET_PRIVATE (tile); TileEvent *tile_event; if (priv->is_dragging) { priv->is_dragging = FALSE; return TRUE; } switch (event->button) { case 1: tile_event = g_new0 (TileEvent, 1); tile_event->time = event->time; if (double_click_detector_is_double_click (priv->double_click_detector, event->time, TRUE)) tile_event->type = TILE_EVENT_ACTIVATED_DOUBLE_CLICK; else tile_event->type = TILE_EVENT_ACTIVATED_SINGLE_CLICK; g_signal_emit (tile, tile_signals[TILE_ACTIVATED_SIGNAL], 0, tile_event); gtk_button_released (GTK_BUTTON (widget)); g_free (tile_event); break; case 3: if (GTK_IS_MENU (tile->context_menu)) gtk_menu_popup (tile->context_menu, NULL, NULL, NULL, NULL, event->button, event->time); break; default: break; } return TRUE; }
/** * Callback for the button clicked signal * * @param widget the button widget * @param data applet info struct */ static gboolean applet_icon_pressed(GtkWidget *widget, GdkEventButton *button, gpointer data) { LauncherNavigatorAppletPrivate *info; g_return_val_if_fail(data, FALSE); info = (LauncherNavigatorAppletPrivate*)data; gtk_button_released(GTK_BUTTON(info->button)); osso_rpc_t retval; osso_return_t result; result = osso_rpc_run(info->osso, "org.telescope", "/Launcher", "org.telescope.Launcher", "Show", &retval, DBUS_TYPE_INVALID); osso_rpc_free_val(&retval); (void) button; return TRUE; }
static int gtk_combo_list_key_press (GtkWidget * widget, GdkEventKey * event, GtkCombo * combo) { if (event->keyval == GDK_Escape) { if (GTK_WIDGET_HAS_GRAB (combo->popwin)) { gtk_grab_remove (combo->popwin); gdk_pointer_ungrab (GDK_CURRENT_TIME); } else if (GTK_WIDGET_HAS_GRAB (combo->list)) gtk_list_end_drag_selection (GTK_LIST (combo->list)); gtk_widget_hide (combo->popwin); if (GTK_WIDGET_HAS_GRAB (combo->button)) { combo->current_button = 0; GTK_BUTTON (combo->button)->in_button = FALSE; gtk_button_released (GTK_BUTTON (combo->button)); gtk_grab_remove (combo->button); } return TRUE; } return FALSE; }
static gboolean mouse_capplet_check_button_button_release (GtkWidget *widget, GdkEventButton *event) { gtk_button_released (GTK_BUTTON (widget)); return TRUE; }
static void thunar_chooser_button_pressed (ThunarChooserButton *chooser_button, GtkWidget *button) { ThunarVfsMimeApplication *default_application; ThunarVfsMimeInfo *info; ThunarIconFactory *icon_factory; GtkIconTheme *icon_theme; const gchar *icon_name; GdkPixbuf *icon; GtkWidget *image; GtkWidget *item; GtkWidget *menu; GList *applications; GList *lp; gint icon_size; _thunar_return_if_fail (THUNAR_IS_CHOOSER_BUTTON (chooser_button)); _thunar_return_if_fail (chooser_button->button == button); _thunar_return_if_fail (GTK_IS_BUTTON (button)); /* verify that we have a valid file */ if (G_UNLIKELY (chooser_button->file == NULL)) return; /* determine the mime info for the file */ info = thunar_file_get_mime_info (chooser_button->file); /* determine the default application */ default_application = thunar_vfs_mime_database_get_default_application (chooser_button->database, info); if (G_UNLIKELY (default_application == NULL)) { /* no default application, just popup the application chooser */ thunar_chooser_button_activate_other (chooser_button); return; } /* determine all applications that claim to be able to handle the file */ applications = thunar_vfs_mime_database_get_applications (chooser_button->database, info); /* make sure the default application comes first */ lp = g_list_find (applications, default_application); if (G_LIKELY (lp != NULL)) { applications = g_list_delete_link (applications, lp); g_object_unref (G_OBJECT (default_application)); } applications = g_list_prepend (applications, default_application); /* allocate a new popup menu */ menu = gtk_menu_new (); /* determine the icon size for menus */ gtk_icon_size_lookup (GTK_ICON_SIZE_MENU, &icon_size, &icon_size); /* determine the icon factory for our screen */ icon_theme = gtk_icon_theme_get_for_screen (gtk_widget_get_screen (button)); icon_factory = thunar_icon_factory_get_for_icon_theme (icon_theme); /* add the other possible applications */ for (lp = applications; lp != NULL; lp = lp->next) { item = gtk_image_menu_item_new_with_label (thunar_vfs_mime_handler_get_name (lp->data)); g_object_set_data_full (G_OBJECT (item), I_("thunar-vfs-mime-application"), lp->data, g_object_unref); g_signal_connect_swapped (G_OBJECT (item), "activate", G_CALLBACK (thunar_chooser_button_activate), chooser_button); gtk_menu_shell_append (GTK_MENU_SHELL (menu), item); gtk_widget_show (item); /* setup the icon for the application */ icon_name = thunar_vfs_mime_handler_lookup_icon_name (lp->data, icon_theme); icon = thunar_icon_factory_load_icon (icon_factory, icon_name, icon_size, NULL, FALSE); image = gtk_image_new_from_pixbuf (icon); gtk_image_menu_item_set_image (GTK_IMAGE_MENU_ITEM (item), image); gtk_widget_show (image); if (G_LIKELY (icon != NULL)) g_object_unref (icon); } /* cleanup */ g_object_unref (G_OBJECT (icon_factory)); /* append a separator */ item = gtk_separator_menu_item_new (); gtk_menu_shell_append (GTK_MENU_SHELL (menu), item); gtk_widget_show (item); /* release the applications list */ g_list_free (applications); /* add the "Other Application..." choice */ item = gtk_image_menu_item_new_with_mnemonic (_("_Other Application...")); g_signal_connect_swapped (G_OBJECT (item), "activate", G_CALLBACK (thunar_chooser_button_activate_other), chooser_button); gtk_menu_shell_append (GTK_MENU_SHELL (menu), item); gtk_widget_show (item); /* make sure the menu has atleast the same width as the chooser */ if (menu->allocation.width < button->allocation.width) gtk_widget_set_size_request (menu, button->allocation.width, -1); /* run the menu on the button's screen (takes over the floating reference of menu) */ thunar_gtk_menu_run (GTK_MENU (menu), button, menu_position, button, 0, gtk_get_current_event_time ()); /* yeppa, that's a requirement */ gtk_button_released (GTK_BUTTON (button)); }
static VALUE button_released(VALUE self) { gtk_button_released(_SELF(self)); return self; }
void fs_fsFNameList_select_row( GtkWidget * widget,gint row,gint column,GdkEventButton *bevent,gpointer user_data ) { gtk_clist_get_text( GTK_CLIST(widget ),row,1,&fsSelectedFile ); if( bevent && bevent->type == GDK_BUTTON_PRESS ) gtk_button_released( GTK_BUTTON( fsOk ) ); }