make this somewhat key-navigable
2001-03-23 Havoc Pennington <hp@pobox.com> * gtk/gtkhsv.c: make this somewhat key-navigable * gtk/gtkfontsel.c: mnemonics * gtk/gtkgamma.c: mnemonics * gtk/gtkcolorsel.c: add mnemonics to labels 2001-03-22 Havoc Pennington <hp@pobox.com> Applied big patch from Seth Lytle to fix event handler return values, slightly modified. * gtk/gtkcalendar.c (gtk_calendar_button_press): return TRUE if handled. (gtk_calendar_key_press): return TRUE for GDK_space triggers select_day * gtk/gtkclist.c (gtk_clist_button_press): return TRUE if handled (gtk_clist_button_release): return TRUE if handled * gtk/gtkcolorsel.c (mouse_release): (palette_activate): (palette_press): (palette_new): (mouse_press): (get_screen_color): fixed return type (void to gboolean), return TRUE, added GTK_SIGNAL_FUNC cast * gtk/gtkcombo.c (gtk_combo_popup_button_press): fixed return type (void to gboolean), and return TRUE (gtk_combo_button_release): changed return value to TRUE after gtk_grab_add on combo->popwin * gtk/gtkctree.c (gtk_ctree_button_press): return TRUE if triggers a collapse or expand * gtk/gtkcurve.c (gtk_curve_graph_events): return TRUE for button/motion * gtk/gtkdnd.c (gtk_drag_source_event_cb): return TRUE for button press/release and motion that trigger act * gtk/gtkentry.c (gtk_entry_button_release): return TRUE * gtk/gtkfontsel.c (gtk_font_selection_size_key_press): return TRUE for GDK_Return * gtk/gtklist.c (gtk_list_button_press): return TRUE mostly (gtk_list_button_release): return TRUE if selection * gtk/gtklistitem.c (gtk_list_item_button_press): return TRUE on press * gtk/gtkmenushell.c (gtk_menu_shell_button_press): (gtk_menu_shell_button_release): chain parent_menu_shell retval * gtk/gtknotebook.c (gtk_notebook_button_press): return FALSE if nothing triggered (gtk_notebook_button_release): return TRUE if we do anything * gtk/gtkspinbutton.c (gtk_spin_button_button_press): (gtk_spin_button_button_release): return TRUE or chained retval * gtk/gtktext.c (gtk_text_button_press): (gtk_text_button_release): return TRUE (gtk_text_key_press): remove redundant retval code * gtk/gtktreeitem.c (gtk_tree_item_button_press): return TRUE if button and sensitive (gtk_tree_item_subtree_button_click): changed type to gint, and return TRUE if sensitive * gtk/gtktooltips.c (gtk_tooltips_event_handler): deactivate implies return TRUE
This commit is contained in:
committed by
Havoc Pennington
parent
b6b4e13fd8
commit
207e3bb977
@ -2305,6 +2305,7 @@ gtk_calendar_button_press (GtkWidget *widget,
|
||||
GtkCalendar *calendar;
|
||||
GtkCalendarPrivateData *private_data;
|
||||
gint x, y;
|
||||
void (* action_func) (GtkCalendar *);
|
||||
|
||||
g_return_val_if_fail (widget != NULL, FALSE);
|
||||
g_return_val_if_fail (GTK_IS_CALENDAR (widget), FALSE);
|
||||
@ -2318,23 +2319,23 @@ gtk_calendar_button_press (GtkWidget *widget,
|
||||
|
||||
if (event->window == private_data->main_win)
|
||||
gtk_calendar_main_button (widget, event);
|
||||
|
||||
if (event->type != GDK_BUTTON_PRESS)
|
||||
return FALSE; /* Double-clicks? Triple-clicks? No thanks! */
|
||||
|
||||
action_func = NULL;
|
||||
|
||||
if (event->window == private_data->arrow_win[ARROW_MONTH_LEFT])
|
||||
gtk_calendar_set_month_prev (calendar);
|
||||
action_func = gtk_calendar_set_month_prev;
|
||||
else if (event->window == private_data->arrow_win[ARROW_MONTH_RIGHT])
|
||||
action_func = gtk_calendar_set_month_next;
|
||||
else if (event->window == private_data->arrow_win[ARROW_YEAR_LEFT])
|
||||
action_func = gtk_calendar_set_year_prev;
|
||||
else if (event->window == private_data->arrow_win[ARROW_YEAR_RIGHT])
|
||||
action_func = gtk_calendar_set_year_next;
|
||||
|
||||
/* only call the action on single click, not double */
|
||||
if (event->type == GDK_BUTTON_PRESS)
|
||||
(* action_func) (calendar);
|
||||
|
||||
if (event->window == private_data->arrow_win[ARROW_MONTH_RIGHT])
|
||||
gtk_calendar_set_month_next (calendar);
|
||||
|
||||
if (event->window == private_data->arrow_win[ARROW_YEAR_LEFT])
|
||||
gtk_calendar_set_year_prev (calendar);
|
||||
|
||||
if (event->window == private_data->arrow_win[ARROW_YEAR_RIGHT])
|
||||
gtk_calendar_set_year_next (calendar);
|
||||
|
||||
return FALSE;
|
||||
return action_func != NULL;
|
||||
}
|
||||
|
||||
static gboolean
|
||||
@ -2732,6 +2733,7 @@ gtk_calendar_key_press (GtkWidget *widget,
|
||||
|
||||
if (row > -1 && col > -1)
|
||||
{
|
||||
return_val = TRUE;
|
||||
gtk_calendar_freeze (calendar);
|
||||
|
||||
if (calendar->day_month[row][col] == MONTH_PREV)
|
||||
|
||||
Reference in New Issue
Block a user