2002-01-09 Christopher James Lahey <clahey@ximian.com>
* configure.in: Bumped version number to 0.19.99.0. Bumped
GAL_CURRENT. Reset GAL_REVISION.
From gal/e-table/ChangeLog:
2002-01-09 Christopher James Lahey <clahey@ximian.com>
* e-table.c, e-table.h (scroll_timeout), e-tree.c
(scroll_timeout): Made these handle horizontal scrolling during
drags.
svn path=/trunk/; revision=15272
2001-12-04 Christopher James Lahey <clahey@ximian.com>
* configure.in (GAL_CURRENT): Bumped version number to 0.18.99.0
and CURRENT to 19.
2001-11-21 Christopher James Lahey <clahey@ximian.com>
* gal/widgets/e-reflow.c, gal/widgets/e-reflow.h: Handle
selection_row_changed signal.
* gal/widgets/e-selection-model-array.c,
gal/widgets/e-selection-model-array.h: Properly send
selection_row_changed signals if changing from a single row
selected to a single other row selected or if moving the
selection_end by a single row.
* gal/widgets/e-selection-model.c,
gal/widgets/e-selection-model.h: Added selection_row_changed
signal.
(e_selection_model_select_as_key_press): Fixed the case statement
here to make MULTIPLE and EXTENDED the same as BROWSE instead of
as SINGLE.
From gal/e-table/ChangeLog:
2001-11-21 Christopher James Lahey <clahey@ximian.com>
* e-table-item.c, e-table-item.h: Handle selection_row_changed
signal. Keep track of the old cursor row so that we only redraw
two rows when the cursor changes.
* e-table.c, e-tree.c: Handle selection_row_changed signal.
* e-tree-selection-model.c: Properly send selection_row_changed
signals if changing from a single row selected to a single other
row selected or if moving the selection_end by a single row.
svn path=/trunk/; revision=14870
2001-11-28 Christopher James Lahey <clahey@ximian.com>
* e-table.c (context_destroyed), e-tree.c (context_destroyed):
Check for et being destroyed here before doing anything. Fixes
Ximian bug #15728.
svn path=/trunk/; revision=14864
2001-12-04 Christopher James Lahey <clahey@ximian.com>
* e-table-group.c, e-table.c, e-tree.c: Changed some comments.
Added a bunch of documentation here.
svn path=/trunk/; revision=14861
2001-11-10 Christopher James Lahey <clahey@ximian.com>
* e-table.c (group_key_press), e-tree.c (item_key_press): Handle
the case where page up or page down goes off the end of the table
or tree.
svn path=/trunk/; revision=14702
2001-10-30 Christopher James Lahey <clahey@ximian.com>
* e-table.c (e_table_commit_click_to_add): Leave edit if commit is
called.
svn path=/trunk/; revision=14487
2001-10-30 Christopher James Lahey <clahey@ximian.com>
* e-table-click-to-add.c (etcta_class_init): Remove point handler
and just let GnomeCanvasGroup handle it.
* e-table.c (e_table_commit_click_to_add): Don't commit the
click_to_add if there's no click_to_add to commit.
svn path=/trunk/; revision=14476
2001-10-30 Christopher James Lahey <clahey@ximian.com>
* configure.in: Bumped the version number here to 0.15.99.10.
From gal/e-table/ChangeLog:
2001-10-30 Christopher James Lahey <clahey@ximian.com>
* e-table.c (e_table_commit_click_to_add): Added this new function
to allow the user to specify a commit.
svn path=/trunk/; revision=14473
2001-10-26 Christopher James Lahey <clahey@ximian.com>
* docs/etablexml.txt: Document allow-grouping attribute.
* tests/test-table-1.c (SPEC): Updated this to test the
allow_grouping=\"false\" attribute.
From gal/e-table/ChangeLog:
2001-10-26 Christopher James Lahey <clahey@ximian.com>
* e-table-config.c (config_group_info_update,
config_fields_info_update): Added some checks for NULL labels
here.
* e-table-specification.c, e-table-specification.h: Added
allow_grouping field. Fixes Ximian bug #13412.
* e-table.c, e-table.h: Added allow_grouping field. Set this
field for the sort infos from state objects.
svn path=/trunk/; revision=14134
2001-10-25 Federico Mena Quintero <federico@ximian.com>
Fixes Ximian bug #6832.
* e-table.c (e_table_setup_table): Use a callback instead of
gtk_widget_queue_draw() for focus events, as the latter does not
have the correct prototype for an event handler.
(group_start_drag): Emit START_DRAG, not KEY_PRESS!
(focus_first_etable_item): Focus the first row in the first
ETableItem if there is no focused item.
* e-tree.c (e_tree_setup_table): Same change as in
e_table_setup_table().
(table_canvas_focus_event_cb): Focus the first row in the tree
item if there is no focused item.
svn path=/trunk/; revision=14124
2001-10-24 Christopher James Lahey <clahey@ximian.com>
* e-cell-combo.c: Added #include "gal/widgets/e-unicode.h".
* e-cell-text.c: Added lots of deactivated debugging printfs here.
(ect_event): Fixed the flags check here. Set edit->actions to 0
before calling e_text_event_processor_handle_event.
* e-table-item.c, e-table-item.h: Use eti_grab and eti_ungrab all
over the place. Added lots and lots of deactivated debugging
printfs here.
(eti_grab, eti_ungrab): New functions to encapsulate grabbing and
ungrabbing the cursor and to allow for recursive grabs
(refcounting style.)
* e-table.c: Added deactivated debugging printfs here.
(et_canvas_root_event): Attach to the event handler on the root
canvas item instead of the canvas itself when making the ETable
leave editing state. Fixes Ximian bug #9737.
svn path=/trunk/; revision=14072
2001-10-12 Christopher James Lahey <clahey@ximian.com>
* e-table-click-to-add.c (set_initial_selection): Use new
e_table_header_prioritized_column field.
* e-table-header.c, e-table-header.h
(e_table_header_prioritized_column): New function. Refactors the
code from ETableClickToAdd to find the column with the highest
priority.
* e-table-selection-model.c, e-table-selection-model.h
(model_changed_idle): Changed this function to use the
e_table_header_prioritized_column function. Added an argument to
set the "header" on this selection model.
* e-table-utils.h: Indentation cleanup.
* e-table.c (et_real_construct): Set the "header" argument on the
selection model here.
* e-table.h: #include <gal/e-table/e-table-sorter.h>
svn path=/trunk/; revision=13633
2001-10-10 Christopher James Lahey <clahey@ximian.com>
* e-table.c, e-table.h (e_table_get_selection_model): Added this
function.
svn path=/trunk/; revision=13548
2001-10-06 Christopher James Lahey <clahey@ximian.com>
* e-tree.c (context_destroyed), e-table.c (context_destroyed): Use
g_dataset_set_data_full to find out when the context is destroyed.
Fixes Ximian bug #8502 and Ximian bug #11691.
svn path=/trunk/; revision=13482
2001-10-05 Michael Meeks <michael@ximian.com>
* gal/util/e-util.h: add E_OBJECT_CLASS_ADD_SIGNALS and
E_OBJECT_CLASS_TYPE to ease migration to Gnome 2.0 from
a single source base.
* All C files:
s/object_class->type,/E_OBJECT_CLASS_TYPE (object_class),/g;
s/gtk_object_class_add_signals([^\(]*)\(([^,]*),([^,]*),([^\)]*)/
E_OBJECT_CLASS_ADD_SIGNALS\1(\2,\3,\4/;
svn path=/trunk/; revision=13428
2001-09-26 Christopher James Lahey <clahey@ximian.com>
* e-table.c, e-tree.c: Set the step_increment on the horizontal
scrollbars here to 20.
svn path=/trunk/; revision=13146
2001-09-24 Federico Mena Quintero <federico@ximian.com>
* e-table.c (et_canvas_button_press): Use the correct prototype
for the signal handler.
* e-tree.c (et_canvas_button_press): Likewise.
svn path=/trunk/; revision=13105
2001-09-24 Federico Mena Quintero <federico@ximian.com>
* e-table-group.c (e_table_group_add): Assert that the virtual
method is implemented instead of being forgiving.
(e_table_group_add_array): Likewise.
(e_table_group_add_all): Likewise.
(e_table_group_remove): Likewise.
(e_table_group_increment): Likewise.
(e_table_group_decrement): Likewise.
(e_table_group_row_count): Likewise.
(e_table_group_set_focus): Likewise.
(e_table_group_get_focus): Likewise.
(e_table_group_get_focus_column): Likewise.
(e_table_group_get_printable): Likewise.
(e_table_group_compute_location): Likewise.
(e_table_group_get_cell_geometry): Likewise.
(etg_destroy): Clear the fields after we unref them.
* e-table-group-leaf.c (etgl_destroy): Clear the fields after we
unref them.
(e_table_group_leaf_construct): Subsets should not be sunk. Do
not ref/sink the subset.
* e-table-header.c (e_table_header_add_column): Document the fact
that the header assumes ownership of the column.
svn path=/trunk/; revision=13102
2001-08-24 Christopher James Lahey <clahey@ximian.com>
* e-table-group-container.c, e-table-group-leaf.c,
e-table-group-leaf.h, e-table-group.c, e-table-group.h: Added
start_drag signals.
* e-table-item.c, e-table-item.h (eti_event): Send the start_drag
signal. Fixes Ximian bug #807.
* e-table.c, e-table.h, e-tree.c, e-tree.h: Added start_drag
signal. Made default handler start drag & drop if we're set to
automatically handle dnd. Ripped out the code to handle watching
events for dnd since start_drag does this now.
svn path=/trunk/; revision=12437
2001-08-10 JP Rosevear <jpr@ximian.com>
* gal/widgets/e-canvas-vbox.h: new proto and virtual method
* gal/widgets/e-canvas-vbox.c (e_canvas_vbox_real_add_item_start):
adds the the item to the beginning
(e_canvas_vbox_add_item_start): call the virtual method
2001-08-10 JP Rosevear <jpr@ximian.com>
* e-table.c (et_build_groups): add the items to the start or end
based on where the click to add should be
(e_table_setup_table): ditto
(et_real_construct): read additional spec flag
* e-table.h: new flag
* e-table-specification.c (etsp_init): init new flag
(e_table_specification_load_from_node): set click to add end flag
(e_table_specification_save_to_node): write out flag
* e-table-specification.h: new flag
svn path=/trunk/; revision=11880
2001-08-07 Christopher James Lahey <clahey@ximian.com>
* e-tree.c (scroll_timeout): Added scrolling to access nodes that
are scrolled off screen for drops. Fixes Ximian bug #5645.
* e-table.c, e-table.h (scroll_timeout): Added scrolling to access
rows that are scrolled off screen for drops. This doesn't work
for some reason, but I'm checking the code in.
svn path=/trunk/; revision=11724
2001-08-01 Federico Mena Quintero <federico@ximian.com>
* e-table.c (group_cursor_change): Set the et->cursor_loc *before*
committing the click-to-add to avoid reentrancy issues if the
table model changes while the click-to-add is being committed.
svn path=/trunk/; revision=11564
2001-07-11 Christopher James Lahey <clahey@ximian.com>
* gal/widgets/e-selection-model.c, gal/widgets/e-selection-model.h
(e_selection_model_select_as_key_press): Created this function for
key presses that move in some way other than just to the next or
previous row.
(e_selection_model_key_press): Use
e_selection_model_select_as_key_press for handling home and end
here.
svn path=/trunk/; revision=10993
2001-07-11 Christopher James Lahey <clahey@ximian.com>
* e-table.c (group_key_press), e-tree.c (item_key_press): Made the
amount to scroll by smaller here.
svn path=/trunk/; revision=10992
2001-07-11 Christopher James Lahey <clahey@ximian.com>
* e-table.c (group_key_press), e-tree.c (item_key_press): Use
e_selection_model_do_something directly for page up and page down
instead of emulating a key press.
svn path=/trunk/; revision=10990
2001-05-25 Christopher James Lahey <clahey@ximian.com>
* e-table.c (et_table_rows_deleted): Remove row row + i instead of
row i.
(et_table_rows_inserted): Insert row row + i instead of row row.
svn path=/trunk/; revision=10003
2001-05-25 Christopher James Lahey <clahey@ximian.com>
* e-table.c (et_table_rows_deleted): Remove row i instead of row
row. Destroy et->group when you get the changed or
sort_info_changed signal instead of in the idle handler.
svn path=/trunk/; revision=10002
2001-04-28 Jason Leach <jasonleach@usa.net>
(Make the alternating row colors a option in ETableSpecification
instead of a compiled in #define)
* e-table-specification.c (e_table_specification_load_from_node):
Read in the "alternating-row-colors=bool" option for
ETableSpecifications. Default value is true so unless it is
specified to be false, row colors will alternate.
(e_table_specification_save_to_node): Save the alternating row
color options here.
* e-table.c (et_build_groups): Pass down the alternating row
colors through to the ETableGroup.
* e-table-group-container.[ch]: Handle the new alternating row
colors
option here, passing it to ETableItem.
* e-table-group-leaf.[ch]: Here too.
* e-table-item.c (eti_get_cell_background_color): Got rid of the
#define ALTERNATE_COLORS, replaced with truth check for
ETableItem::alternating_row_colors.
* e-tree.c: Make ETree recognize alternating row color options as
well.
svn path=/trunk/; revision=9622
2001-04-25 Christopher James Lahey <clahey@ximian.com>
* e-table.c (e_table_get_cell_geometry): Add the header height to
the returned y location here so that things will be lined up
correctly.
svn path=/trunk/; revision=9563
2001-04-23 Christopher James Lahey <clahey@ximian.com>
* e-table.c (e_table_get_cell_geometry): Documented this function
properly.
* e-tree.c, e-tree.h (e_tree_get_cell_geometry): Added this
function.
svn path=/trunk/; revision=9533
* e-table.c (et_destroy): Free some things that weren't getting
freed.
* e-tree.c (et_destroy): Free some things that weren't getting
freed.
(e_tree_set_state_object): Don't ref the return value of
e_table_state_to_header.
svn path=/trunk/; revision=9448
i18n fixes.
2001-04-10 Gediminas Paulauskas <menesis@delfi.lt>
* gal/widgets/e-unicode.c (e_utf8_*_*_string): if (!string) return NULL;
to avoid crashes in strlen(NULL). TODO: need g_strlen which does that.
2001-04-10 Gediminas Paulauskas <menesis@delfi.lt>
* e-table.c (et_real_construct): convert click_to_add_message locale->utf8.
svn path=/trunk/; revision=9214
2001-04-02 Federico Mena Quintero <federico@ximian.com>
* e-cell-popup.c (ecp_unrealize): Typo fix; call
e_cell_unrealize(), not e_cell_realize().
* e-cell-text.c (ect_event): Removed fallback "else", from "if
(edit_display)"since our planned return value is already zero and
we do need to unbuild_current_cell() instead of returning
immediately.
* e-table-state.c (etst_destroy): Free the expansions field.
* e-table.c (e_table_set_state_object): Do not ref the header
since we just created it!
svn path=/trunk/; revision=9123
2001-03-30 Christopher James Lahey <clahey@ximian.com>
* e-table-group.c, e-table-header-item.c, e-table-item.c,
e-table.c, e-tree.c: Made these use GTK_TYPE_GDK_EVENT whenever
sending an event through the signal system instead of
GTK_TYPE_POINTER.
* e-table.c, e-tree.c (set_header_canvas_width): Check that none
of the variables we're going to need are NULL before executing
this function.
svn path=/trunk/; revision=9042
2001-03-30 Christopher James Lahey <clahey@ximian.com>
* e-table-group-container.c, e-table-group-container.h,
e-table-group-leaf.c, e-table-group-leaf.h, e-table-item.c,
e-table-item.h, e-table.c, e-tree.c: Changed the signal
"table_selection_model" to just be "selection_model" everywhere
and made it be ESelectionModels instead of ETableSelectionModels
for generality.
* e-table-item.c (eti_event): Make right arrow and left arrow
accessible as events that can be caught.
* e-tree-sorted.c, e-tree-sorted.h (e_tree_sorted_orig_position):
Added this function.
svn path=/trunk/; revision=9041
2001-03-29 Christopher James Lahey <clahey@ximian.com>
* e-table.c, e-tree.c, e-tree.h: Updated to set the width of the
header canvas to be equal to the width of the table canvas to
avoid infinite loops. Added left arrow and right arrow as tree
collapse and expand bindings.
svn path=/trunk/; revision=9035
* e-table.c (et_real_construct): ref the sort_info taken from the
state object.
* e-tree.c (et_real_construct): Ditto. Fixes the last ETree
crash-on-exit bug for me.
svn path=/trunk/; revision=8929