596 |
enum { |
enum { |
597 |
SELECT_ROW, |
SELECT_ROW, |
598 |
SELECT_COLUMN, |
SELECT_COLUMN, |
599 |
|
DOUBLE_CLICK_ROW, |
600 |
|
DOUBLE_CLICK_COLUMN, |
601 |
SELECT_RANGE, |
SELECT_RANGE, |
602 |
CLIP_RANGE, |
CLIP_RANGE, |
603 |
RESIZE_RANGE, |
RESIZE_RANGE, |
723 |
gtkextra_VOID__INT, |
gtkextra_VOID__INT, |
724 |
GTK_TYPE_NONE, 1, GTK_TYPE_INT); |
GTK_TYPE_NONE, 1, GTK_TYPE_INT); |
725 |
|
|
726 |
|
|
727 |
|
/** |
728 |
|
* GtkSheet::double-click-row |
729 |
|
* @sheet: the sheet widget that emitted the signal |
730 |
|
* @row: the row that was double clicked. |
731 |
|
* |
732 |
|
* A row's title button has been double clicked |
733 |
|
*/ |
734 |
|
sheet_signals[DOUBLE_CLICK_ROW] = |
735 |
|
gtk_signal_new ("double-click-row", |
736 |
|
GTK_RUN_LAST, |
737 |
|
GTK_CLASS_TYPE(object_class), |
738 |
|
0, |
739 |
|
gtkextra_VOID__INT, |
740 |
|
GTK_TYPE_NONE, 1, GTK_TYPE_INT); |
741 |
|
|
742 |
|
|
743 |
|
/** |
744 |
|
* GtkSheet::double-click-column |
745 |
|
* @sheet: the sheet widget that emitted the signal |
746 |
|
* @column: the column that was double clicked. |
747 |
|
* |
748 |
|
* A column's title button has been double clicked |
749 |
|
*/ |
750 |
|
sheet_signals[DOUBLE_CLICK_COLUMN] = |
751 |
|
gtk_signal_new ("double-click-column", |
752 |
|
GTK_RUN_LAST, |
753 |
|
GTK_CLASS_TYPE(object_class), |
754 |
|
0, |
755 |
|
gtkextra_VOID__INT, |
756 |
|
GTK_TYPE_NONE, 1, GTK_TYPE_INT); |
757 |
|
|
758 |
sheet_signals[SELECT_RANGE] = |
sheet_signals[SELECT_RANGE] = |
759 |
gtk_signal_new ("select-range", |
gtk_signal_new ("select-range", |
760 |
GTK_RUN_LAST, |
GTK_RUN_LAST, |
5015 |
g_return_val_if_fail (GTK_IS_SHEET (widget), FALSE); |
g_return_val_if_fail (GTK_IS_SHEET (widget), FALSE); |
5016 |
g_return_val_if_fail (event != NULL, FALSE); |
g_return_val_if_fail (event != NULL, FALSE); |
5017 |
|
|
5018 |
/* |
sheet = GTK_SHEET (widget); |
5019 |
|
|
5020 |
|
if ( event->type == GDK_2BUTTON_PRESS) |
5021 |
|
{ |
5022 |
|
gtk_widget_get_pointer (widget, &x, &y); |
5023 |
|
gtk_sheet_get_pixel_info (sheet, x, y, &row, &column); |
5024 |
|
|
5025 |
|
if (event->window == sheet->column_title_window ) |
5026 |
|
{ |
5027 |
|
gtk_signal_emit (GTK_OBJECT (sheet), |
5028 |
|
sheet_signals[DOUBLE_CLICK_COLUMN], column); |
5029 |
|
} |
5030 |
|
else if (event->window == sheet->row_title_window ) |
5031 |
|
{ |
5032 |
|
gtk_signal_emit (GTK_OBJECT (sheet), |
5033 |
|
sheet_signals[DOUBLE_CLICK_ROW], row); |
5034 |
|
} |
5035 |
|
} |
5036 |
|
|
5037 |
|
|
5038 |
|
/* |
5039 |
if(event->type != GDK_BUTTON_PRESS) return TRUE; |
if(event->type != GDK_BUTTON_PRESS) return TRUE; |
5040 |
*/ |
*/ |
5041 |
gdk_window_get_pointer(widget->window, NULL, NULL, &mods); |
gdk_window_get_pointer(widget->window, NULL, NULL, &mods); |
5042 |
|
|
5043 |
if(!(mods & GDK_BUTTON1_MASK)) return TRUE; |
if(!(mods & GDK_BUTTON1_MASK)) return TRUE; |
5044 |
|
|
|
sheet = GTK_SHEET (widget); |
|
5045 |
|
|
5046 |
/* press on resize windows */ |
/* press on resize windows */ |
5047 |
if (event->window == sheet->column_title_window && |
if (event->window == sheet->column_title_window && |