#include "gtkextra-sheet.h"
#include "gsheetmodel.h"
-#include "gsheet-column-iface.h"
-#include "gsheet-row-iface.h"
-
+#include "psppire-axis.h"
G_BEGIN_DECLS
#define GTK_TYPE_SHEET_RANGE (gtk_sheet_range_get_type ())
+#define GTK_TYPE_SHEET_CELL (gtk_sheet_cell_get_type ())
#define GTK_TYPE_SHEET (gtk_sheet_get_type ())
#define GTK_SHEET(obj) GTK_CHECK_CAST (obj, gtk_sheet_get_type (), GtkSheet)
typedef struct _GtkSheetClass GtkSheetClass;
typedef struct _GtkSheetCellAttr GtkSheetCellAttr;
-typedef struct _GtkSheetCell GtkSheetCell;
+
typedef struct _GtkSheetHoverTitle GtkSheetHoverTitle;
gboolean is_visible;
};
-struct _GtkSheetCell
-{
- gint row;
- gint col;
-};
-
-
struct _GtkSheetHoverTitle
{
GtkWidget *window;
GtkBin parent;
gboolean dispose_has_run;
- GSheetColumn *column_geometry;
- GSheetRow *row_geometry;
+ PsppireAxis *haxis;
+ PsppireAxis *vaxis;
guint16 flags;
/* The type of entry_widget */
GtkType entry_type;
+ /* Handler of the "changed" callback for the entry widget */
+ glong entry_handler_id;
+
/* expanding selection */
GtkSheetCell selection_cell;
gint row, gint column,
gint *new_row, gint *new_column);
- gboolean (*deactivate) (GtkSheet *sheet,
- gint row, gint column);
-
gboolean (*activate) (GtkSheet *sheet,
gint row, gint column);
/* create a new sheet */
-GtkWidget * gtk_sheet_new (GSheetRow *vgeo, GSheetColumn *hgeo,
- GSheetModel *model);
+GtkWidget * gtk_sheet_new (GSheetModel *model);
/* create a new sheet with custom entry */
GtkWidget *
-gtk_sheet_new_with_custom_entry (GSheetRow *vgeo,
- GSheetColumn *hgeo,
- GtkType entry_type);
-void
-gtk_sheet_construct_with_custom_entry (GtkSheet *sheet,
- GSheetRow *vgeo,
- GSheetColumn *hgeo,
- GtkType entry_type);
+gtk_sheet_new_with_custom_entry (GtkType entry_type);
+
/* Change entry */
void gtk_sheet_change_entry (GtkSheet *sheet, GtkType entry_type);
/* obvious */
void gtk_sheet_unselect_range (GtkSheet *sheet);
-/* set active cell where the entry will be displayed
- * returns FALSE if current cell can't be deactivated or
- * requested cell can't be activated */
-gboolean gtk_sheet_set_active_cell (GtkSheet *sheet,
- gint row, gint column);
+/* set active cell where the entry will be displayed */
+void gtk_sheet_set_active_cell (GtkSheet *sheet,
+ gint row, gint column);
/* Sets *ROW and *COLUMN to be the coordinates of the active cell.
ROW and/or COLUMN may be null if the caller is not interested in their