Commit Graph

91 Commits

Author SHA1 Message Date
fcbbdfbd18 Coding style and whitespace cleanup. 2011-09-04 07:34:32 -04:00
992c8b7d58 libetable cleanups. 2011-01-16 18:52:52 -05:00
11026671da e-table: Remove unused member variables from ETableItem
x1 and y1 were never set, only used. Replace all users with 0 and remove
the members.
2010-10-29 13:50:01 -04:00
a7d37040bf e-table: Draw grids with Cairo
Gets rid of the need for GdkGC completely.
2010-10-29 13:50:01 -04:00
e5cf725c52 e-table: Fix includes to only ever include libgnomecanvas.h 2010-10-29 13:49:59 -04:00
5245a810b2 e-table: Draw focus with Cairo 2010-10-29 13:49:58 -04:00
29a48cb2ce Fix ETable/ETree signal signatures.
To avoid another case like bug #587014, add GSignalAccumulator functions
to all ETable and ETree signals that return a flag to indicate the signal
has been handled.

See commit e9dc381d3a for an example of
the kind of problems not having a GSignalAccumulator can cause.

Signals changed:

  ETree::click
  ETree::right-click
  ETree::white-space-event
  ETable::click
  ETable::key-press
  ETable::right-click
  ETable::start-drag
  ETable::white-space-event
  ETableItem::click
  ETableItem::right-click
  ETableItem::start-drag
  ETableGroup::click
  ETableGroup::key-press
  ETableGroup::right-click
  ETableGroup::start-drag
2010-02-18 11:48:37 -05:00
e9dc381d3a Bug 587014 - Magic space does not work as expected
Neither ETree::key-press nor ETableItem::key-press signal definitions
specify a GSignalAccumulator that terminates the signal emission when
a handler returns TRUE, and Evolution 2.29 connects multiple handlers
to ETree::key-press.

When the space key is pressed, the first handler implements the magic
space bar behavior and returns TRUE, which should terminate signal
emission but doesn't because there's no accumulator function on the
signal.  So the second handler runs and checks for other keys besides
space.  It returns FALSE since it didn't handle the key press.

End result: emission site gets back FALSE (from the second handler) as
the return value, so it thinks the key press was not handled at all and
invokes the fallback handler -- e_selection_model_toggle_single_row() --
which -unselects- the newly selected row, making it appear the next
unread message was never selected.

Several other ETable-related signals that return "handled" flags also
lack GSignalAccumulator functions.  I've made a note to myself to fix
those as well.
2010-02-17 19:45:28 -05:00
95072d1bc3 Remove unused tooltip support from ECanvas/ETable/EText. 2010-01-14 11:34:28 -05:00
dd65b18ddf Kill ETableScrolled.
ETableScrolled is nothing but a GtkScrolledWindow containing an ETable.
It adds nothing of value and actually makes customizing ETable harder.
2009-12-08 01:55:28 -05:00
0274669179 Fix excessive whitespace. 2009-07-12 23:33:07 -04:00
8771a6de35 More code cleanup. 2009-06-01 19:09:19 -04:00
6413227cef Whitespace cleanup. 2009-05-28 13:13:05 -04:00
fad4af8a3d Prefer GLib basic types over C types. 2009-05-28 12:13:23 -04:00
6f5464f34c Remove trailing whitespace, again. 2009-05-28 12:13:22 -04:00
1bad915150 License Changes
svn path=/trunk/; revision=36116
2008-08-27 10:33:22 +00:00
9e2412ce34 Committing on behalf of Milan Crha <mcrha@redhat.com>
2008-07-15  Milan Crha  <mcrha@redhat.com>

       ** Part of fix for bug #329821

       * e-table-item.c: (find_cell): Do not consider last row's height
       till the bottom.
       * e-table-item.h: (e_table_item_compute_mouse_over):
       * e-table-item.c: (e_table_item_compute_mouse_over):
       * e-table-group-container.c: (etgc_compute_mouse_over),
       (etgc_class_init):
       * e-table-group-leaf.c: (etgl_compute_mouse_over),
(etgl_class_init):
       * e-table.h: (e_table_get_mouse_over_cell):
       * e-table.c: (e_table_get_mouse_over_cell):
       * e-table-group.h: (struct ETableGroupClass),
       (e_table_group_compute_mouse_over):
       * e-table-group.c: (e_table_group_compute_mouse_over),
       (etg_class_init): Be able to calculate mouse-over position
correctly,
       relatively to the ETableItem.


svn path=/trunk/; revision=35778
2008-07-20 17:02:33 +00:00
abda2bda85 updated novell copyright notices (left others alone)
svn path=/trunk/; revision=35665
2008-06-20 22:26:57 +00:00
9e4fcb29cf ** Remove trailing whitespace from source code.
2007-11-14  Matthew Barnes  <mbarnes@redhat.com>

	** Remove trailing whitespace from source code.


svn path=/trunk/; revision=34537
2007-11-14 22:04:21 +00:00
8e47917e8c Update FSF address in header comments (#469886). Patch from Tobias
2007-09-02  Matthew Barnes  <mbarnes@redhat.com>

	* Update FSF address in header comments (#469886).
	  Patch from Tobias Mueller.


svn path=/trunk/; revision=34151
2007-09-02 04:19:22 +00:00
df07f02cae Added widgets in INCLUDES.
2005-06-23  Kaushal Kumar  <kakumar@novell.com>

        * e-util/Makefile.am, widgets/e-timezone-dialog/Makefile.am,
        addressbook/gui/search/Makefile.am,
        plugins/groupwise-features/Makefile.am: Added widgets in INCLUDES.

        Updated the include paths to use misc instead of widgets/misc.

svn path=/trunk/; revision=29574
2005-06-23 09:11:11 +00:00
27a61acf27 Retired GAL from Head. The relevant files have moved inside evolution.
2005-06-17  Kaushal Kumar  <kakumar@novell.com>

        * Retired GAL from Head. The relevant files have moved inside
        evolution. Thanks to JP Rosevear for performing the cvs surgery. The
        files have been moved in the following order.

        evolution/e-util <- gal/gal/util
        evolution/a11y <-  gal/gal/a11y
        evolution/a11y/e-table <- gal/gal/a11y/e-table
        evolution/a11y/e-text <- gal/gal/a11y/e-text
        evolution/widgets/table <- gal/gal/e-table
        evolution/widgets/text <- gal/gal/e-text
        evolution/widgets/misc <- gal/gal/widgets
        evolution/widgets/misc/pixmaps <- gal/gal/widgets/pixmaps
        evolution/widgets/menus <- gal/gal/menus

        Following is the summary of changes done to fix the build:-
        - New files added to cvs repository,
                - a11y/e-table/Makefile.am
                - a11y/e-text/Makefile.am
                - widgets/table/Makefile.am
                - widgets/text/Makefile.am
                - widgets/misc/pixmaps/Makefile.am
                - iconv-detect.h
                - iconv-detect.c
        - Updated configure.in.
        - Updated all the relevant Makefile.am files.
        - Updated the include paths to replace all gal references.
        - Updated the marshal list to suit gal files requirements.

svn path=/trunk/; revision=29522
2005-06-17 15:20:35 +00:00
ad315e4a7d Fixes # 50480
2003-11-11  Bolian Yin  <bolian.yin@sun.com>

        Fixes # 50480

        * e-table-item: add two signals: "selection_model_removed" and "selection_model_added"

svn path=/trunk/; revision=23281
2003-11-11 03:42:17 +00:00
405b846e5b extracted from ect_draw (draw_expander): new gtktreeview-like expander
2003-08-15  Mike Kestner  <mkestner@ximian.com>

	* e-cell-tree.c (draw_retro_expander): extracted from ect_draw
	(draw_expander): new gtktreeview-like expander drawing
	(ect_draw): draw lines and expanders based on retro_look style prop
	(adjust_event_position): extracted method from ect_event
	(event_in_expander): new checks for motion/clicks in expander
	(ect_event): handle prelight for new expanders
	* e-table-item.c (eti_init): init new motion col/row
	(eti_event): synthesize leave_notify events for cells and propogate
	existing motion events to the cells.
	* e-tree.c (e_tree_class_init): add retro_look and expander_size
	style props.

svn path=/trunk/; revision=22251
2003-08-15 20:23:12 +00:00
bc9697c7d2 add cursor_idle_id.
2003-03-18  Chris Toshok  <toshok@ximian.com>

	* e-table-item.h (ETableItem): add cursor_idle_id.

	* e-table-item.c (eti_idle_maybe_show_cursor): save off the
	cursor_idle_id.
	(eti_idle_show_cursor_cb): reset the cursor_idle_id to 0.
	(eti_dispose): remove the cursor_idle_id.  Fixes a crash in the
	evolution select-names dialog.

svn path=/trunk/; revision=20346
2003-03-18 20:49:31 +00:00
0bbe38655b GObject port work.
2002-11-16  Chris Toshok  <toshok@ximian.com>

	* e-cell-checkbox.[ch]: GObject port work.

	* e-cell-combo.[ch]: same.

	* e-cell-date.[ch]: same.

	* e-cell-float.[ch]: same.

	* e-cell-number.[ch]: same.

	* e-cell-pixbuf.[ch]: same.

	* e-cell-popup.[ch]: same.

	* e-cell-progress.[ch]: same.

	* e-cell-size.[ch]: same.

	* e-cell-spin-button.[ch]: same.

	* e-cell-text.[ch]: same.

	* e-cell-toggle.[ch]: same.

	* e-cell-tree.[ch]: same.

	* e-cell-vbox.[ch]: same.

	* e-cell.[ch]: same.

	* e-table-col.c: same.

	* e-table-column.c: same.

	* e-table-config-field.[ch]: same.

	* e-table-config.c: same.

	* e-table-config.glade: same.

	* e-table-field-chooser-dialog.[ch]: same.

	* e-table-field-chooser-item.[ch]: same.

	* e-table-field-chooser.[ch]: same.

	* e-table-group-container.[ch]: same.

	* e-table-group-leaf.[ch]: same.

	* e-table-group.[ch]: same.

	* e-table-header-item.[ch]: same.

	* e-table-header-utils.[ch]: same.

	* e-table-header.c: same.

	* e-table-item.[ch]: same.

	* e-table-scrolled.[ch]: same.

	* e-table-utils.c: same.

	* e-table.[ch]: same.

	* e-tree-memory-callbacks.h: same.

	* e-tree-scrolled.[ch]: same.

	* e-tree-sorted-variable.c: same.

	* e-tree.[ch]: same.

	* test-check.c: same.

	* test-cols.c: same.

	* test-table.c: same.

svn path=/trunk/; revision=18801
2002-11-17 00:02:53 +00:00
613453b109 merging the gal-2 branch back to the trunk.
merging the gal-2 branch back to the trunk.

svn path=/trunk/; revision=18471
2002-10-31 21:30:57 +00:00
57a8777026 Switch from gnome_canvas_item_grab to e_canvas_item_grab.
2002-05-09  Christopher James Lahey  <clahey@ximian.com>

	* gal/e-text/e-text.c: Switch from gnome_canvas_item_grab to
	e_canvas_item_grab.

	* gal/widgets/e-canvas.c, gal/widgets/e-canvas.h
	(e_canvas_item_grab, e_canvas_item_ungrab): Added these functions.

From gal/e-table/ChangeLog:

2002-05-09  Christopher James Lahey  <clahey@ximian.com>

	* e-table-item.c, e-table-item.h: Switched from
	gnome_canvas_item_grab to e_canvas_item_grab.

svn path=/trunk/; revision=16738
2002-05-09 22:12:01 +00:00
88a322f15d Check for a style_set signal on all the contained GnomeCanvasItems.
2002-03-15  Christopher James Lahey  <clahey@ximian.com>

	* gal/widgets/e-canvas.c (e_canvas_style_set): Check for a
	style_set signal on all the contained GnomeCanvasItems.

From gal/e-table/ChangeLog:

2002-03-15  Christopher James Lahey  <clahey@ximian.com>

	* e-cell-toggle.c: Clear the pixmap cache in e_cell_style_set.

	* e-cell.c, e-cell.h (e_cell_style_set): Added this virtual
	method.

	* e-table-item.c, e-table-item.h: Call e_cell_style_set in out
	style_set signal.

svn path=/trunk/; revision=16180
2002-03-15 23:16:01 +00:00
8dcab9df57 Added #include <libgnome/gnome-defs.h>.
2002-01-16  Christopher James Lahey  <clahey@ximian.com>

	* e-cell-checkbox.h, e-cell-date.h, e-cell-float.h,
	e-cell-number.h, e-cell-size.h, e-cell-text.h, e-cell-toggle.h,
	e-cell-tree.h, e-cell.h, e-table-click-to-add.h,
	e-table-col-dnd.h, e-table-config-field.h, e-table-extras.h,
	e-table-field-chooser-item.h, e-table-group-container.h,
	e-table-group-leaf.h, e-table-group.h, e-table-header-item.h,
	e-table-item.h, e-table-scrolled.h, e-table-sorter.h,
	e-table-tooltip.h, e-table-tree.h, e-table-utils.h, e-table.h,
	e-tree-scrolled.h, e-tree-sorted-variable.h, e-tree.h: Added
	#include <libgnome/gnome-defs.h>.

svn path=/trunk/; revision=15339
2002-01-16 17:17:04 +00:00
1d68f8289f New functions for saving selection state and such.
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-15 22:33:13 +00:00
410f3bc629 Merging changes:
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-12-04 21:03:28 +00:00
23587bebe8 Added frozen_count variable to know not to show the cursor while a change
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-31 10:33:51 +00:00
c3e3a85f28 Changed the license announcement at the top of these files.
2001-10-26  Christopher James Lahey  <clahey@ximian.com>

	* e-cell-checkbox.c, e-cell-checkbox.h, e-cell-combo.c,
	e-cell-combo.h, e-cell-date.c, e-cell-date.h, e-cell-number.c,
	e-cell-number.h, e-cell-pixbuf.c, e-cell-pixbuf.h, e-cell-popup.c,
	e-cell-popup.h, e-cell-size.c, e-cell-size.h,
	e-cell-spin-button.c, e-cell-spin-button.h, e-cell-string.c,
	e-cell-text.c, e-cell-text.h, e-cell-toggle.c, e-cell-toggle.h,
	e-cell-tree.c, e-cell-tree.h, e-cell.c, e-cell.h,
	e-table-click-to-add.c, e-table-click-to-add.h, e-table-col-dnd.h,
	e-table-col.c, e-table-col.h, e-table-column-specification.c,
	e-table-column-specification.h, e-table-column.c,
	e-table-config-field.c, e-table-config-field.h, e-table-config.c,
	e-table-config.h, e-table-defines.h, e-table-example-1.c,
	e-table-example-2.c, e-table-extras.c, e-table-extras.h,
	e-table-field-chooser-dialog.c, e-table-field-chooser-dialog.h,
	e-table-field-chooser-item.c, e-table-field-chooser-item.h,
	e-table-field-chooser.c, e-table-field-chooser.h,
	e-table-group-container.c, e-table-group-container.h,
	e-table-group-leaf.c, e-table-group-leaf.h, e-table-group.c,
	e-table-group.h, e-table-header-item.c, e-table-header-item.h,
	e-table-header-utils.c, e-table-header-utils.h, e-table-header.c,
	e-table-header.h, e-table-item.c, e-table-item.h,
	e-table-memory-callbacks.c, e-table-memory-callbacks.h,
	e-table-memory.c, e-table-memory.h, e-table-model.c,
	e-table-model.h, e-table-one.c, e-table-one.h, e-table-scrolled.c,
	e-table-scrolled.h, e-table-selection-model.c,
	e-table-selection-model.h, e-table-simple.c, e-table-simple.h,
	e-table-size-test.c, e-table-sort-info.c, e-table-sort-info.h,
	e-table-sorted-variable.c, e-table-sorted-variable.h,
	e-table-sorted.c, e-table-sorted.h, e-table-sorter.c,
	e-table-sorter.h, e-table-sorting-utils.c,
	e-table-sorting-utils.h, e-table-specification.c,
	e-table-specification.h, e-table-state.c, e-table-state.h,
	e-table-subset-variable.c, e-table-subset-variable.h,
	e-table-subset.c, e-table-subset.h, e-table-tooltip.h,
	e-table-tree.h, e-table-utils.c, e-table-utils.h,
	e-table-without.c, e-table-without.h, e-table.c, e-table.h,
	e-tree-memory-callbacks.c, e-tree-memory-callbacks.h,
	e-tree-memory.c, e-tree-memory.h, e-tree-model.c, e-tree-model.h,
	e-tree-scrolled.c, e-tree-scrolled.h, e-tree-selection-model.c,
	e-tree-selection-model.h, e-tree-simple.c, e-tree-simple.h,
	e-tree-sorted-variable.c, e-tree-sorted-variable.h,
	e-tree-sorted.c, e-tree-sorted.h, e-tree-table-adapter.c,
	e-tree-table-adapter.h, e-tree.c, e-tree.h, table-test.c,
	table-test.h, test-check.c, test-cols.c, test-table.c: Changed the
	license announcement at the top of these files.

	* e-cell-string.c: Removed unused file.

svn path=/trunk/; revision=14154
2001-10-26 18:25:47 +00:00
f1172ec0fd Added #include "gal/widgets/e-unicode.h".
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-24 22:41:13 +00:00
9a92cc103a Adapted height method to deal with a row of -1.
2001-10-05  Christopher James Lahey  <clahey@ximian.com>

	* e-cell-text, e-cell-pixbuf: Adapted height method to deal with a
	row of -1.

	* 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-table.h, e-tree.c: Added
	"uniform_row_height" argument.

svn path=/trunk/; revision=13440
2001-10-05 13:27:03 +00:00
ce45d995aa Only show the cursor during changes if it was already shown. Fixes Ximian
2001-10-02  Christopher James Lahey  <clahey@ximian.com>

	* e-table-item.c, e-table-item.h: Only show the cursor during
	changes if it was already shown.  Fixes Ximian bug #9810 and
	Ximian bug #4048.

svn path=/trunk/; revision=13297
2001-10-02 11:13:47 +00:00
109c5702ba Don't do_something on button_release if we did something on button_press.
2001-09-07  Christopher James Lahey  <clahey@ximian.com>

	* e-table-item.c, e-table-item.h (eti_event): Don't do_something
	on button_release if we did something on button_press.  Fixes
	Ximian bug #3742.

svn path=/trunk/; revision=12680
2001-09-07 19:04:29 +00:00
f7120120cd Added start_drag signals.
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-24 16:33:30 +00:00
6d4840cae8 Changed the variable names here to make it clear that these are view model
2001-07-05  Christopher James Lahey  <clahey@ximian.com>

	* e-table-item.c, e-table-item.h (find_cell): Changed the variable
	names here to make it clear that these are view model and row.
	(eti_event): Added click_count to make it so that if we get two
	clicks in different rows we don't send a double click event.
	(eti_event, view_to_model_row): Set row_guess in a few extra
	places.

svn path=/trunk/; revision=10791
2001-07-05 10:42:36 +00:00
2d3c06b3a4 (Make the alternating row colors a option in ETableSpecification instead
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-29 01:14:50 +00:00
44c7d23144 Added get_cell_geometry method.
2001-04-23  Christopher James Lahey  <clahey@ximian.com>

	* e-table-group-container.c, e-table-group-leaf.c,
	e-table-group.c, e-table-group-.h: Added get_cell_geometry method.

	* e-table-item.c, e-table-item.h: Added
	e_table_item_get_cell_geometry.

	* e-table.c, e-table.h: Added e_table_get_cell_geometry.

svn path=/trunk/; revision=9532
2001-04-24 01:30:48 +00:00
0e347fdbe1 Changed the signal "table_selection_model" to just be "selection_model"
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-30 08:52:04 +00:00
451c410dec Bumped the version number to 05.99.9.
2001-03-20  Christopher James Lahey  <clahey@ximian.com>

	* configure.in: Bumped the version number to 05.99.9.

From gal/e-table/ChangeLog:

2001-03-20  Christopher James Lahey  <clahey@ximian.com>

	* e-table-click-to-add.c: Turn on the vertical grid.

	* 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: Replaced the "drawgrid" argument with
	"horizontal_draw_grid" and "vertical_draw_grid" arguments.

	* e-table-specification.c, e-table-specifcation: Replaced the
	draw_grid setting with the horizontal_draw_grid and
	vertical_draw_grid settings.  If the draw-grid property is set in
	a ETableSpecification it is still obeyed and overrides the
	vertical-draw-grid and horizontal-draw-grid properties.

	* e-table.c, e-table.h, e-tree.c, e-tree.h: Deal with the
	horizontal_draw_grid and vertical_draw_grid changes.

	* e-tree-model.h: Added a missing include.

svn path=/trunk/; revision=8846
2001-03-20 16:22:30 +00:00
1510304c2d Deal with proxy_node_changed being called on a different root node than
2001-03-19  Christopher James Lahey  <clahey@ximian.com>

	* e-tree-sorted.c (ets_proxy_node_changed): Deal with
	proxy_node_changed being called on a different root node than the
	one we have in our tree.

	* e-tree-table-adapter.c: Did some general clean up here.

	* Merged branch:

2001-03-19  Christopher James Lahey  <clahey@ximian.com>

	* e-tree-sorted.c (find_child_path): Added this function to allow
	us to find paths that have been removed from the source.
	(ets_proxy_node_removed): Fixed the memmove here a bit.  Call
	find_child_path.

	* e-tree-table-adapter.c (find_node): Check that the passed in
	path isn't NULL.

2001-03-19  Christopher James Lahey  <clahey@ximian.com>

	* e-table-item.c (eti_reflow): Get width from header object
	instead of calculating it ourselves.

	* e-table-selection-model.c: Turn off selection saving since it's
	so slow.

	* e-table.c (e_table_set_state_object): Set the width of the newly
	created header object.

	* e-tree.c (e_tree_set_state_object): Set the width of the newly
	created header object.
	(tree_canvas_size_allocate): Don't bother setting the dimensions
	of the white background twice.

2001-03-18  Christopher James Lahey  <clahey@ximian.com>

	* e-table-selection-model.c, e-table-selection-model.h: Made
	ETableSelectionModel save the cursor properly across changed
	signals if has_save_id is true.

2001-03-18  Christopher James Lahey  <clahey@ximian.com>

	* e-table-selection-model.c, e-table-selection-model.h: Made
	ETableSelectionModel save selection properly across changed
	signals if has_save_id is true.

	* e-tree-memory.c: A couple of typos.

2001-03-18  Christopher James Lahey  <clahey@ximian.com>

	* e-tree-memory.c, e-tree-sorted.c: Send pre_changes properly.

2001-03-18  Christopher James Lahey  <clahey@ximian.com>

	* e-tree-table-adapter.c: Send pre_changes when performing
	set_expanded or root_node_set_visible.

2001-03-18  Christopher James Lahey  <clahey@ximian.com>

	* e-tree-sorted.c (ets_is_expandable): When the API requests
	whether the object is expandable and it isn't, make sure to send a
	signal when it becomes expandable.

	* e-tree-table-adapter.c: Made it so that in a number of cases
	where it doesn't need to create an empty hash table node if the
	current tree node has no children, it doesn't.

2001-03-18  Christopher James Lahey  <clahey@ximian.com>

	* e-tree-memory-callbacks.c, e-tree-memory-callbacks.h
	(etmc_has_save_id, etmc_get_save_id): Added has_save_id and
	get_save_id to the list of methods supported by
	e_tree_memory_callbacks.

	* e-tree-table-adapter.c, e-tree-table-adapter.h: Added saving of
	expanded nodes.

2001-03-18  Christopher James Lahey  <clahey@ximian.com>

	* e-table-model.c, e-table-model.h (e_table_model_get_save_id):
	Changed row_save_id to get_save_id to be consistent with ETree.

	* e-tree-model.c, e-tree-model.h: Added "pre_change" signal.
	Added has_save_id and get_save_id methods.

	* e-tree-sorted.c: Proxy pre_change signal.  Implemented
	has_save_id and get_save_id.  If the base model doesn't provide
	has_save_id then we g_strdup_printf the pointer of the base model
	ETreePath as the save_id.

	* e-tree-table-adapter.c: Proxy pre_change signal.  If base model
	has_save_id, then use the results of get_save_id as the key for
	the hash table of node attributes.  Otherwise use the pointer as
	before.

2001-03-17  Christopher James Lahey  <clahey@ximian.com>

	* e-tree-sorted.c (ets_sort_idle): Fixed it so that all nodes get
	sorted properly instead of just the top node.

2001-03-17  Christopher James Lahey  <clahey@ximian.com>

	* e-table-sorting-utils.c (e_table_sorting_utils_tree_sort): Made
	tree sorting faster by using a cache.

	* e-tree-sorted.c: Added commented out debugging g_prints.

2001-03-17  Christopher James Lahey  <clahey@ximian.com>

	* e-tree-sorted.c: Switched to using GMemChunks.

2001-03-17  Christopher James Lahey  <clahey@ximian.com>

	* e-tree-sorted.c (resort_node): Made it so that children of a
	node that's being sorted don't send changed signals.

2001-03-17  Christopher James Lahey  <clahey@ximian.com>

	* e-table-sorting-utils.c, e-table-sorting-utils.h: Switched to
	using e_sort and e_search instead of qsort and a linear search.
	Added the tree functions e_table_sorting_utils_tree_sort,
	e_table_sorting_utils_tree_check_position, and
	e_table_sorting_utils_tree_insert.

	* e-tree-sorted.c: Made this actually do sorting.

	* e-tree-table-adapter.c (etta_proxy_node_changed): The old_size
	needs to be the number of visible children + 1 to include the top
	node.

	* e-tree.c (e_tree_set_state_object): Set the sort_info on the
	ETreeSorted when you get a new sort_info.

2001-03-16  Christopher James Lahey  <clahey@ximian.com>

	* Makefile.am: Added e-tree-sorted.c and e-tree-sorted.h.

	* e-table-item.c (eti_realize_cell_views): Only realize the cells
	if they're not realized already and if the canvas is realized.

	* e-table-sorted.c (ets_proxy_model_cell_changed): Matched the
	change to the signature of e_table_sorting_utils_affects_sort.

	* e-table-sorting-utils.c, e-table-sorting-utils.h
	(e_table_sorting_utils_affects_sort): Changed the signature of
	this function to not take the ETableModel source since it doesn't
	use it and we need to use this function for ETreeSorted which
	doesn't have an ETableModel.

	* e-tree-memory.c (etmm_get_expanded_default): Actually implement
	the get_expanded_default for this tree.

	* e-tree-model.h: Cleaned up the indentation here.

	* e-tree-sorted.c, e-tree-sorted.h: New class meant to be used for
	sorting trees.  It doesn't actually sort yet.  It simply acts as
	an ETreeProxy which is the hardest part of making ETreeSorted.

	* e-tree.c, e-tree.h: Made this use an ETreeSorted.

2001-03-14  Christopher James Lahey  <clahey@ximian.com>

	* e-table-item.c, e-table-item.h, e-table-selection-model.c,
	e-table-selection-model.h, e-table-sorted.c, e-table-sorted.h,
	e-table-subset.c, e-table-subset.h, e-table.c, e-table.h: Switch
	to handling e_table_model_rows_inserted instead of
	e_table_model_row_inserted and e_table_model_rows_deleted instead
	of e_table_model_row_deleted.

	* e-table-model.c, e-table-model.h: Replaced the signals
	"model_row_inserted" and "model_row_deleted" with
	"model_rows_inserted" and "model_rows_deleted" so that when
	multiple rows are inserted or deleted at the same time they can be
	handled properly.

	* e-tree-table-adapter.c: Call "model_rows_inserted" and
	"model_rows_deleted" instead of "model_changed" when inserting or
	deleting multiple rows.

2001-03-14  Christopher James Lahey  <clahey@ximian.com>

	* e-table-item.c (e_table_item_row_diff): Made this not count the
	pixel between rows if it isn't there.

2001-03-14  Christopher James Lahey  <clahey@ximian.com>

	* e-table-item.c (eti_header_structure_changed): Properly attach &
	realize cell views here.

2001-03-13  Christopher James Lahey  <clahey@ximian.com>

	* e-tree-table-adapter.c (etta_proxy_node_removed): Check that
	parent_node and parent aren't NULL before making function calls on
	them.

2001-03-13  Christopher James Lahey  <clahey@ximian.com>

	* e-table-item.c (confirm_height_cache): Fixed a height cache
	miscalculation.

	* e-tree-table-adapter.c (find_first_child_node): Made the
	semantics of this mean that find_first_child_node(adapter, -1)
	means return the first node in the tree.

2001-03-13  Christopher James Lahey  <clahey@ximian.com>

	* e-table-extras.c: Added a "string-integer" comparison function
	to the default %ETableExtras so you can do comparisons based on
	integer value even if you using strings for the data (this lets
	you do editable numbers, for instance.)

	* e-table-item.c: Rearranged it a bit so that if you have
	draw_grid off it doesn't add space for the horizontal lines, nor
	leave them the background color.

	* e-table-model.c, e-table-model.h: Added the row_save_id and
	has_save_id methods to %ETableModel.

	* e-tree.c, e-tree.h: Replaced e_tree_compute_location with
	e_tree_get_cell_at.

2001-03-08  Christopher James Lahey  <clahey@ximian.com>

	* Makefile.am: Added e-table/e-table-utils.c,
	e-table/e-tree-memory-callbacks.c, e-table/e-tree-memory.c,
	e-table/e-tree-scrolled.c, e-table/e-tree-table-adapter.c, and
	e-table/e-tree.c.  Removed e-table/e-tree-simple.c.  Added
	e-table/e-table-utils.h, e-table/e-tree-memory-callbacks.h,
	e-table/e-tree-memory.h, e-table/e-tree-scrolled.h,
	e-table/e-tree-table-adapter.h, and e-table/e-tree.h.  Removed
	e-table/e-tree-simple.h.

	* e-cell-tree.c: Updated this for the new tree.

	* e-table-item.c: Added some redraw requests where appropriate.

	* e-table-item.h: Fixed an incorrect class method declaration.

	* e-table-model.c, e-table-model.h: Removed
	e_table_model_has_sort_group and e_table_model_row_sort_group.

	* e-table-scrolled.h: Removed unused headers.

	* e-table-simple.c, e-table-simple.h: Rearranged this a bit.

	* e-table-sorter.c, e-table-sorting-utils.c,
	e-table-sorting-utils.h: Removed sort group stuff.  Added the
	function e_table_sorting_utils_check_position.

	* e-table-utils.c, e-table-utils.h: Utility functions for ETable
	and ETree.

	* e-table.c: Moved some of the functionality from here to
	e-table-utils.c so that it can be reused by ETree.

	* e-tree-memory-callbacks.c, e-tree-memory-callbacks.h: Class to
	implement an ETreeMemory as callbacks instead of overriding the
	class.

	* e-tree-memory.c, e-tree-memory.h: ETreeModel that stores a tree
	of physical nodes.

	* e-tree-model.c, e-tree-model.h: Removed most of the
	functionality from here to the classes ETreeMemory and
	ETreeTableAdapter.  This is now just a simple virtualized tree
	class.

	* e-tree-scrolled.c, e-tree-scrolled.h: New class.  An ETree in an
	EScrollFrame.

	* e-tree-simple.c: Small change.  This is no longer used.

	* e-tree-table-adapter.c, e-tree-table-adapter.h: ETableModel that
	represents an ETreeModel as a table.

	* e-tree.c, e-tree.h: New super class kind of like ETable but for
	trees.

End of branch

svn path=/trunk/; revision=8837
2001-03-20 04:43:42 +00:00
6a8d4951dc Changed e_table_selection_model_clear to e_selection_model_clear.
2001-02-27  Christopher James Lahey  <clahey@ximian.com>

	* gal/e-text/e-completion-view.c: Changed
	e_table_selection_model_clear to e_selection_model_clear.

	* tests/test-tree-3.c: Changed E_TABLE_CURSOR_LINE to
	E_CURSOR_LINE.

From gal/e-table/ChangeLog:

2001-02-27  Christopher James Lahey  <clahey@ximian.com>

	* e-table-click-to-add.c, 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-specification.c, e-table-specification.h, e-table.c,
	e-table.h: Changed a lot of the ETableSelectionModels to
	ESelectionModels, a lot of the ETableSorters to ESorters, all the
	ETableCursorModes to ECursorModes, and all of the
	ETableForeachFuncs into EForeachFuncs.

	* e-table-defines.h: Moved ETableForeachFunc and ETableCursorMode
	to e-selection-model.h.

	* e-table-selection-model.c, e-table-selection-model.h: Made this
	a subclass of ESelectionModel which simple connects to an
	ETableModel.

	* e-table-sorter.c, e-table-sorter.h: Made this a subclass of
	ESorter so that implements the same semantics it used to.

svn path=/trunk/; revision=8422
2001-02-28 03:36:29 +00:00
e65ce47c20 new abstract ECell subclass to be used as base class for popup ECells.
2001-02-25  Damon Chaplin  <damon@ximian.com>

	* e-cell-popup.c: new abstract ECell subclass to be used as base class
	for popup ECells.

	* e-cell-combo.c: subclass of ECellPopup which pops up a simple list
	of strings.

	* e-table-item.c: Renamed eti_row_diff() to e_table_item_row_diff() and
	made public, since the ECellPopup subclasses need it.

	* Makefile.am: added e-cell-popup.[hc] and e-cell-combo.[hc]

svn path=/trunk/; revision=8387
2001-02-25 19:29:40 +00:00
5480b1b7bd From a patch submitted by Murray Cumming <Murray.Cumming@mybau.com>
2001-02-17  Christopher James Lahey  <clahey@ximian.com>

	From a patch submitted by Murray Cumming <Murray.Cumming@mybau.com>

	* e-cell-checkbox.h, e-cell-date.h, e-cell-number.h,
	e-cell-size.h, e-cell-text.h, e-cell-toggle.h, e-cell-tree.h,
	e-cell.h, e-table-click-to-add.h, e-table-col-dnd.h,
	e-table-col.h, e-table-column-specification.h,
	e-table-config-field.h, e-table-config.h, e-table-defines.h,
	e-table-extras.h, e-table-field-chooser-item.h,
	e-table-group-container.h, e-table-group-leaf.h, e-table-group.h,
	e-table-header-item.h, e-table-header-utils.h, e-table-header.h,
	e-table-item.h, e-table-model.h, e-table-one.h,
	e-table-selection-model.h, e-table-simple.h, e-table-sort-info.h,
	e-table-sorted-variable.h, e-table-sorted.h, e-table-sorter.h,
	e-table-specification.h, e-table-state.h,
	e-table-subset-variable.h, e-table-subset.h, e-table-tooltip.h,
	e-table-tree.h, e-tree-model.h, e-tree-simple.h,
	e-tree-sorted-variable.h: Added GNOME_DECLS.

svn path=/trunk/; revision=8265
2001-02-17 08:36:01 +00:00
b924182143 Made the scrolling to show the current roll happen in a time out.
2001-01-28  Christopher James Lahey  <clahey@helixcode.com>

	* e-table-item.c, e-table-item.h: Made the scrolling to show the
	current roll happen in a time out.

svn path=/trunk/; revision=7875
2001-01-28 12:38:29 +00:00
9c73622d38 Documented. Added a "cursor_activated" signal. Removed some unused
2001-01-25  Christopher James Lahey  <clahey@helixcode.com>

	* e-table-group-container.c, e-table-group-leaf.c,
	e-table-group.c, e-table-group.h, e-table-item.c, e-table-item.h:
	Documented.  Added a "cursor_activated" signal.  Removed some
	unused functions (e_table_group_get_count and
	e_table_group_get_ecol).

	* e-table-selection-model.c, e-table-selection-model.h: Added a
	"cursor_activated" signal.  Call it when the user changes the
	selection to match the cursor.

	* e-table.c, e-table.h: Added a "cursor_activated" signal.  Fixed
	the e_table_compute_location function to take into account the
	scrolled position.

svn path=/trunk/; revision=7808
2001-01-25 14:48:39 +00:00