168 typedef BasicCell * (*CellCreateFunc) (void);
170 typedef void (*CellSetValueFunc) (BasicCell *cell,
171 const char * new_value);
173 typedef gboolean (*CellEnterFunc) (BasicCell *cell,
174 int *cursor_position,
175 int *start_selection,
178 typedef void (*CellModifyVerifyFunc) (BasicCell *cell,
181 const char *new_value,
183 int *cursor_position,
184 int *start_selection,
187 typedef gboolean (*CellDirectUpdateFunc) (BasicCell *cell,
188 int *cursor_position,
189 int *start_selection,
193 typedef void (*CellLeaveFunc) (BasicCell *cell);
195 typedef void (*CellRealizeFunc) (BasicCell *cell, gpointer gui_handle);
197 typedef void (*CellMoveFunc) (BasicCell *cell);
199 typedef void (*CellDestroyFunc) (BasicCell *cell);
211 gchar *cell_type_name;
220 CellDestroyFunc destroy;
223 CellEnterFunc enter_cell;
224 CellModifyVerifyFunc modify_verify;
225 CellDirectUpdateFunc direct_update;
226 CellLeaveFunc leave_cell;
229 CellRealizeFunc gui_realize;
230 CellMoveFunc gui_move;
231 CellDestroyFunc gui_destroy;
244 gboolean gnc_cell_name_equal (
const char * cell_name_1,
245 const char * cell_name_2);
247 BasicCell * gnc_basic_cell_new (
void);
248 void gnc_basic_cell_init (BasicCell *bcell);
249 void gnc_basic_cell_destroy (BasicCell *bcell);
251 void gnc_basic_cell_set_name (BasicCell *cell,
const char *name);
252 gboolean gnc_basic_cell_has_name (BasicCell *cell,
const char *name);
253 void gnc_basic_cell_set_type_name (BasicCell *cell,
const gchar *type_name);
254 gboolean gnc_basic_cell_has_type_name (BasicCell *cell,
const gchar *type_name);
258 void gnc_basic_cell_set_sample_text (BasicCell *cell,
259 const char *sample_text);
260 void gnc_basic_cell_set_alignment (BasicCell *cell,
261 CellAlignment alignment);
262 void gnc_basic_cell_set_expandable (BasicCell *cell,
263 gboolean expandable);
264 void gnc_basic_cell_set_span (BasicCell *cell,
267 const char * gnc_basic_cell_get_value (BasicCell *cell);
268 void gnc_basic_cell_set_value (BasicCell *bcell,
const char *value);
270 gboolean gnc_basic_cell_get_changed (BasicCell *cell);
271 gboolean gnc_basic_cell_get_conditionally_changed (BasicCell *cell);
273 void gnc_basic_cell_set_changed (BasicCell *cell, gboolean changed);
274 void gnc_basic_cell_set_conditionally_changed (BasicCell *cell,
278 void gnc_basic_cell_set_value_internal (BasicCell *bcell,
281 char * gnc_basic_cell_validate (BasicCell *bcell,
286 gint *cursor_position);
utility functions for the GnuCash UI
CellAlignment alignment
sample text for sizing purposes
gboolean span
can fill with extra space
guint value_chars
current value
gboolean conditionally_changed
true if value modified
CellSetValueFunc set_value
true if value modified conditionally
gpointer gui_private
is a popup widget
gboolean is_popup
can span multiple columns
gboolean changed
number of characters in value
gboolean expandable
horizontal alignment in column
The BasicCell class provides an abstract base class defining the handling of the editing of a cell of...