2002-01-31 Christopher James Lahey <clahey@ximian.com>
* e-tree-model.c (e_tree_model_node_find): Made this function much
more readable. Got rid of all the gotos. Fixed a case where
going backwards during a root search checked the root node first.
(e_tree_model_node_real_traverse): Made backwards traversals be
postorder, as they should be, instead of preorder.
* e-tree.c (find_next_callback): Use an extra callback function
here to go from sorted path to model path.
svn path=/trunk/; revision=15543
2002-01-31 Christopher James Lahey <clahey@ximian.com>
* e-tree.c, e-tree.h (e_tree_find_next): Make this function take a
bitfield of parameters instead of two bools.
svn path=/trunk/; revision=15538
2002-01-31 Christopher James Lahey <clahey@ximian.com>
* e-tree-selection-model.c, e-tree-selection-model.h
(e_tree_selection_model_get_cursor): Added this simple accessor
function.
* e-tree.c, e-tree.h (e_tree_find_next): Searches from the cursor
given the search parameters and moves the cursor if it ever
matches.
svn path=/trunk/; revision=15537
2002-01-31 Christopher James Lahey <clahey@ximian.com>
* e-tree-model.c, e-tree-model.h (e_tree_model_node_find): New
function to do a search through a tree in one direction or the
other.
svn path=/trunk/; revision=15536
2002-01-21 Christopher James Lahey <clahey@ximian.com>
* e-cell-text.c: Implement max_width_by_row.
* e-cell-tree.c: Use max_width_by_row in max_width function.
* e-cell.c, e-cell.h (e_cell_max_width_by_row): Added this new
method to ECell.
svn path=/trunk/; revision=15418
2002-01-15 Christopher James Lahey <clahey@ximian.com>
* e-cell.c, e-cell.h (e_cell_save_state, e_cell_load_state,
e_cell_free_state): New functions for saving selection state and
such.
* e-cell-text.c (ect_save_state): Implemented the new state
functions.
* e-table-item.c, e-table-item.h: Use the new cell state functions
when focusing in or out. Fixes Ximian bug #14968.
svn path=/trunk/; revision=15335
2002-01-09 Christopher James Lahey <clahey@ximian.com>
* e-table-header-item.c, e-table-header-item.h (scroll_timeout):
Made the header item here handle horizontal scrolling when adding
a column.
svn path=/trunk/; revision=15278
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
2002-01-09 Christopher James Lahey <clahey@ximian.com>
* e-tree.c (collapse_drag): Collapse nodes that were opened during
a drag, unless the drop site is a child node. Fixes Ximian bug
#4965.
svn path=/trunk/; revision=15271
2001-12-17 Christopher James Lahey <clahey@ximian.com>
* e-cell-toggle.c (etog_set_value): Don't queue a redraw here.
the value changed signal will do that automatically.
svn path=/trunk/; revision=15160
2001-12-12 Christopher James Lahey <clahey@ximian.com>
* e-cell-text.c (ect_stop_editing): Change to not editing before
committing values. Then commit the values.
svn path=/trunk/; revision=15104
2001-12-11 Christopher James Lahey <clahey@ximian.com>
* gal/widgets/e-canvas.c (e_canvas_unrealize): Turn off idle
handling in the unrealize function instead of the destroy
function.
From gal/e-table/ChangeLog:
2001-12-11 Christopher James Lahey <clahey@ximian.com>
* e-table-item.c: Turn off idle handling in the unrealize function
instead of the destroy function.
svn path=/trunk/; revision=15102
2001-12-11 Gustavo Giráldez <gustavo.giraldez@gmx.net>
* gal/e-table/e-table-header-item.c (ethi_unrealize): unregister
ETableHeaderItem widget as a drag target when unrealizing it.
svn path=/trunk/; revision=14996
2001-12-06 Christopher James Lahey <clahey@ximian.com>
* e-table-config.c, e-table-config.h (setup_gui): Set the title of
the window here.
* e-table-header-item.c (ethi_popup_customize_view): Use a useful
string for the header here.
svn path=/trunk/; revision=14975
2001-12-05 Christopher James Lahey <clahey@ximian.com>
* e-table-header-item.c (ethi_find_col_by_x,
ethi_find_col_by_x_nearest): Made these return 0 to the left of
all columns and ethi_find_col_by_x return cols - 1 if to the right
of all columns. Fixes Ximian bug #14414.
svn path=/trunk/; revision=14971
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-14 Christopher James Lahey <clahey@ximian.com>
* e-table-item.c (eti_event): Ungrab and set maybe_in_grab to
FALSE before sending the double click signal.
svn path=/trunk/; revision=14708
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-11-07 Christopher James Lahey <clahey@ximian.com>
* e-tree-selection-model.c (etsm_select_all): Don't select all if
the source model doesn't have a root node (it used to crash.)
Fixes Ximian bug #14542.
svn path=/trunk/; revision=14661
2001-11-08 Christopher James Lahey <clahey@ximian.com>
* e-table-sorter.c (ets_sort_info_changed): Make a printout here
be conditionally compiled (and compiled out by default.)
svn path=/trunk/; revision=14660
2001-11-03 Christopher James Lahey <clahey@ximian.com>
* e-cell-popup.c, e-cell-popup.h (e_cell_popup_set_shown,
e_cell_popup_queue_cell_redraw): New functions here.
* e-cell-combo.c: Use e_cell_popup_set_shown to set the
popup_shown variable so that ECellPopup can properly request a
redraw.
svn path=/trunk/; revision=14592
2001-11-03 Christopher James Lahey <clahey@ximian.com>
* e-tree-memory.c (e_tree_memory_freeze): We should only
pre_change here if frozen = 0, otherwise we'll leak pre_changes.
Helps fix Ximian bug #14422.
* e-tree-sorted.c (ets_proxy_node_data_changed,
ets_proxy_node_col_changed): Send a no_change signal here if given
a NULL path. Helps fix Ximian bug #14422.
svn path=/trunk/; revision=14591
2001-11-03 Christopher James Lahey <clahey@ximian.com>
* configure.in: Bumped the version number to 0.17.99.0. Bumped
the soname to 18.
* gal/widgets/e-categories.c (e_categories_destroy): Got rid of a
GtkWarning here that was due to Gtk+ casting a NULL pointer.
Fixes Ximian bug #14327.
From gal/e-table/ChangeLog:
2001-11-02 Christopher James Lahey <clahey@ximian.com>
* e-cell-popup.c, e-cell-popup.h (e_cell_popup_do_popup): Make
ECellPopup not display multiple arrows while the popup is up and
the table is in grouped mode. Fixes Ximian bug #14207.
svn path=/trunk/; revision=14580
2001-10-31 Christopher James Lahey <clahey@ximian.com>
* e-tree-selection-model.c (etsm_node_deleted): Fixed the
signature of this function.
svn path=/trunk/; revision=14560
2001-10-31 Christopher James Lahey <clahey@ximian.com>
* configure.in: Bumped the version number to 0.16.99.0 and
GAL_CURRENT to 17.
From gal/e-table/ChangeLog:
2001-10-31 Christopher James Lahey <clahey@ximian.com>
* e-table-item.c (eti_unfreeze): Check for unfreezing past 0 here
and give a warning.
(eti_add_table_model): Call eti_freeze here since
eti_table_model_changed will call unfreeze.
* e-tree-memory.c (e_tree_memory_node_remove): Send deleted signal
after freeing the child.
* e-tree-model.c, e-tree-model.h: Added node_deleted signal.
removed/deleted signals will always come in pairs in that order
with a single pre_change for both of them.
* e-tree-selection-model.c (etsm_node_deleted): Clear the tree on
deleted here instead of on removed.
* e-tree-sorted.c (ets_proxy_node_deleted): Chain deleted here.
Chains to NULL node which is fine for now.
svn path=/trunk/; revision=14557
2001-10-31 Christopher James Lahey <clahey@ximian.com>
* e-table-item.c, e-table-item.h: Added frozen_count variable to
know not to show the cursor while a change is going on.
* e-table-model.c, e-table-model.h, e-tree-model.c,
e-tree-model.h: Added a model_no_change signal to pair with a
pre_change if there's no change.
* e-table-selection-model.h: Removed an unused frozen field here.
* e-table-sorted.c, e-table-subset.c, e-table-subset.h,
e-table-without.c, e-tree-memory.c, e-tree-sorted.c,
e-tree-table-adapter.c: Made sure pre_changes were all matched by
some change. Proxy no_change signal where appropriate.
* e-tree-selection-model.c: Keep track of the frozen_count
variable to know whether a change is going on.
svn path=/trunk/; revision=14523
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-item.c (eti_show_cursor, eti_check_cursor_bounds):
Request the right regions here. The range given is inclusive, not
inclusive/exclusive.
svn path=/trunk/; revision=14479
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-30 Christopher James Lahey <clahey@ximian.com>
* e-tree-sorted.c (check_last_access): Fix this to check from
initial instead of initial + 1.
svn path=/trunk/; revision=14445
2001-10-30 Christopher James Lahey <clahey@ximian.com>
* configure.in: Bumped the version number here to 0.15.99.9.
From gal/e-table/ChangeLog:
2001-10-30 Christopher James Lahey <clahey@ximian.com>
* e-cell-combo.c: Adapt to the changed popup signature.
* e-cell-popup.c, e-cell-popup.h: Changed the behavior here to
draw the button whenever we have the cursor. Changed the popup
virtual method to pass in the row and column popping up.
* e-cell.h: Added an E_CELL_CURSOR flag.
* e-table-item.c: Pass in the E_CELL_CURSOR flag to event and draw
calls as appropriate.
svn path=/trunk/; revision=14439
2001-10-29 Christopher James Lahey <clahey@ximian.com>
* e-table-config.c (setup_gui): Hide the Help button here since
there's nothing connected to it.
* e-tree-sorted.c (ets_sort_idle): Don't nest ets_sort_idle calls.
Fixes Ximian bug #13929.
svn path=/trunk/; revision=14368
2001-10-29 Christopher James Lahey <clahey@ximian.com>
* e-table-subset.c (etss_get_view_row), e-tree-sorted.c
(check_last_access), e-tree-table-adapter.c (find_row_num): Don't
go outside the table looking for matches when doing the
last_access search.
svn path=/trunk/; revision=14359
2001-10-28 Christopher James Lahey <clahey@ximian.com>
* e-cell-text.c: Removed erroneous comment about needing to handle
selection better.
svn path=/trunk/; revision=14272
2001-10-26 Christopher James Lahey <clahey@ximian.com>
* e-table-item.c (eti_cursor_activated): Chain the
cursor_activated signal even if the row is -1.
* e-tree.c (item_cursor_activated): Don't error out here if path
is NULL.
svn path=/trunk/; revision=14185
2001-10-26 Christopher James Lahey <clahey@ximian.com>
* e-cell-float.c, e-cell-float.h: Changed the license announcement
at the top of these files.
svn path=/trunk/; revision=14168
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-26 Christopher James Lahey <clahey@ximian.com>
* e-tree-selection-model.c (etsm_selected_count): If the root node
is hidden and selected, don't count it in the selected path count.
* e-tree.c (et_canvas_root_event): Attach to the event handler on
the root canvas item instead of the canvas itself when making the
ETree leave editing state.
svn path=/trunk/; revision=14128