Commit Graph

46 Commits

Author SHA1 Message Date
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
40226dadd5 Assert that the virtual method is implemented instead of being forgiving.
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-09-24 21:31:50 +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
fe8e487048 Check for row >= 0 here. (etgl_destroy): Disconnect from all the signals
2001-08-08  Christopher James Lahey  <clahey@ximian.com>

	* e-table-group-leaf.c, e-table-group-leaf.h (etgl_key_press):
	Check for row >= 0 here.
	(etgl_destroy): Disconnect from all the signals we connect to on
	our ETableItem here.

svn path=/trunk/; revision=11766
2001-08-08 07:49:24 +00:00
bc885bb22e The double_click signal on the table item now emits the model row instead
2001-05-22  Christopher James Lahey  <clahey@ximian.com>

	* e-table-group-leaf.c (etgl_double_click): The double_click
	signal on the table item now emits the model row instead of the
	view row so don't do the view to model conversion here.

svn path=/trunk/; revision=9924
2001-05-22 17:25: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
e420ccde44 One-line fix (missing a 'break' at the end of the ARG_SELECTION_MODEL
2001-04-25  Jason Leach  <jasonleach@usa.net>

	* e-table-group-leaf.c (etgl_set_arg): One-line fix (missing a
	'break' at the end of the ARG_SELECTION_MODEL case).

svn path=/trunk/; revision=9561
2001-04-25 15:53:51 +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
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
40d58afa7c Added e-table/e-table-sorting-utils.lo.
2001-02-23  Christopher James Lahey  <clahey@ximian.com>

	* gal/Makefile.am (libgal_la_LIBADD): Added
	e-table/e-table-sorting-utils.lo.

From gal/e-table/ChangeLog:

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

	* Makefile.am (libetable_la_SOURCES): Added
	e-table-sorting-utils.c.
	(libetableinclude_HEADERS): Added e-table-sorting-utils.h.

	* e-table-group-container.c: Implemented add_array method.  Use
	add_array to implement add_all instead of using add.  Did some
	general clean up.

	* e-table-group-leaf.c, e-table-group-leaf.h: Implemented
	add_array method.  Changed everything to use an ETableSubset
	variable instead of an ETableSortedVariable.  Implemented it as
	ETableSortedVariable if there's grouping involved and ETableSorted
	if there isn't.

	* e-table-group.c, e-table-group.h: Added add_array method.  Added
	unused get_position code.

	* e-table-sorted-variable.c, e-table-sorted-variable.h: Moved a
	lot of the actual implementation of sorting to
	e-table-sorting-utils.c.  Got rid of the signal handlers here
	since we weren't using them and ETableSubset has the proxy virtual
	methods.

	* e-table-sorted.c, e-table-sorted.h: Completely replaced these
	files with a variation on ETableSortedVariable that doesn't have
	the add methods and such but instead just mimics the source
	model's set of rows completely.

	* e-table-sorter.c, e-table-sorter.h: Added functions to get at
	the arrays here.

	* e-table-sorting-utils.c, e-table-sorting-utils.h: Utility
	functions for doing sorting.

	* e-table-subset-variable.c, e-table-subset-variable.h: Added
	add_array method.

	* e-table-subset.c, e-table-subset.h: Made it so that the signal
	hookups to the source model's signals are virtual methods.

	* e-table.c, e-table.h: Don't call add_all and add and remove type
	functions if not grouped.  Don't rebuild for sort changes unless
	it was either grouped before or will be grouped now.

svn path=/trunk/; revision=8374
2001-02-23 23:00:09 +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
ac063e3d36 Rename from Helix Code -> Ximian
svn path=/trunk/; revision=7520
2001-01-15 23:32:09 +00:00
feea74a8a7 Removed the set cursor and get cursor methods from ETableGroup.
2000-12-14  Christopher James Lahey  <clahey@helixcode.com>

	* e-table-group-container.c, e-table-group-leaf.c,
	e-table-group.c, e-table-group.h: Removed the set cursor and get
	cursor methods from ETableGroup.

	* e-table.c (e_table_get_cursor_row, e_table_set_cursor_row):
	Changed this to use the ETableSelection directly instead of going
	through the grouping structure.  This seems to fix a bug in
	evolution's folder list for some people.

svn path=/trunk/; revision=7018
2000-12-14 19:02:13 +00:00
640883f04d Add column and GdkEvent * parameters to the double click signal.
2000-12-07  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.c,
	e-table.h: Add column and GdkEvent * parameters to the double
	click signal.

	* e-table-header-item: Unref the ETableFullHeader when we're done
	with it.

	* e-table-scrolled.c, e-table-scrolled.h: Remove all of the
	proxies and add a function e_table_scrolled_get_table and a gtk
	argument "table".

svn path=/trunk/; revision=6850
2000-12-07 23:28:30 +00:00
a3de274f7c Moved files, fixed header files and paths - Federico
svn path=/trunk/; revision=5513
2000-09-19 22:57:58 +00:00
8c99725b91 Fixed e-table #includes so that it would compile.
svn path=/trunk/; revision=5482
2000-09-17 20:29:14 +00:00
876558f75f Remove a ton of (hopefully harmless) warnings from the ETable code.
svn path=/trunk/; revision=5081
2000-08-28 15:27:38 +00:00
5e1949f935 Added a click signal which gets sent if the user hits the left or middle
2000-08-24  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,
	e-table.c, e-table.h: Added a click signal which gets sent if the
	user hits the left or middle mouse button on a cell.

svn path=/trunk/; revision=5020
2000-08-24 21:13:17 +00:00
862d1f25de Made background colors alternate.
2000-08-19  Christopher James Lahey  <clahey@helixcode.com>

	* e-cell-text.c: Made background colors alternate.

	* e-table-click-to-add.c: Made tabbing off the right edge of the
	click to add commit the new values.

	* e-table-group-container.c, e-table-group-leaf.c,
	e-table-group.c, e-table-group.h, e-table-sorted-variable.c,
	e-table-subset-variable.c, e-table-subset-variable.h: Added a
	decrement method.  Made the add and remove methods not
	automatically increment and decrement.

	* e-table-item.c: Fixed some view vs model issues for both rows
	and columns.

	* e-table-model.c: Added debugging code.  Removed automatic
	signalling of changes by the ETableModel set_value_at function
	(the model should send these signals itself.)

	* e-table.c: Added increment and decrement calls when a row is
	removed or added from the source model.

svn path=/trunk/; revision=4881
2000-08-19 23:32:50 +00:00
660a75cc99 Made drag events calculate a row and column and signal that information.
2000-08-04  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:
	Made drag events calculate a row and column and signal that
	information.

	* e-table-selection-model.c, e-table-selection-model.h: Changed
	do_something to take a GdkModifierType.

svn path=/trunk/; revision=4529
2000-08-04 14:14:44 +00:00
32c3d29bbc Added "table_selection_model" argument. Removed foreach function and
2000-07-26  Christopher James Lahey  <clahey@helixcode.com>

	* e-table-group-container.c, e-table-group-container.h,
	e-table-group-leaf.c, e-table-group-leaf.h: Added "table_selection_model"
	argument.  Removed foreach function and selection notification.

	* e-table-group.c, e-table-group.h: Removed foreach function and
	selection notification.

	* e-table-header.c: Fixed header width calculation to include the
	last column.

	* e-table-item.c, e-table-item.h: Fixed this to use the new
	selection model.

	* e-table-scrolled.c, e-table-scrolled.h: Removed selection
	notification.

	* e-table-selection-model.c, e-table-selection-model.h: Finished
	notification signals and fixed a bunch of bit manipulations.
	Implemented do_something method.

	* e-table.c, e-table.h: Create an ETableSelectionModel and use it
	properly.

svn path=/trunk/; revision=4363
2000-07-26 20:33:39 +00:00
3649d5dc6d From mail:
2000-06-29  Christopher James Lahey  <clahey@helixcode.com>

	* message-list.c, mail-ops.c: Changed the name of
	e_table_select_row to e_table_set_cursor_row.

From widgets/e-table:

2000-06-29  Christopher James Lahey  <clahey@helixcode.com>

	* e-table-click-to-add.c: Made this appear a bit better.

	* e-table-defines.h: Cleaned this up a bit, added
	ETableForeachFunc.

	* 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,
	e-table.c, e-table.h: Changed e_table_select_row to
	e_table_set_cursor_row.  Changed e_table_get_selected_view_row to
	e_table_get_cursor_row.  Added e_table_selected_row_foreach.

	* e-table-header-item.c: Fixed some warnings.

	* e-table-sorted-variable.c: Removed some unneeded debugging print
	statments.

	* e-tree-example-1.c: Changed e_table_get_selected_view_row to
	e_table_get_cursor_row.

svn path=/trunk/; revision=3799
2000-06-29 19:22:24 +00:00
e4de45da5f Calculate height including if clip_height is set to -1.
2000-06-26  Christopher James Lahey  <clahey@helixcode.com>

	* widgets/e-text/e-text.c: Calculate height including if
	clip_height is set to -1.

From addressbook/ChangeLog:

2000-06-26  Christopher James Lahey  <clahey@helixcode.com>

	* contact-editor/e-contact-editor-categories.c,
	addressbook/gui/component/e-cardlist-model.c: Added
	value_to_string handlers.

	* demo/addressbook-widget.c, demo/demo.c: Removed usage of "x" and
	"y" arguments.

	* addressbook/gui/component/addressbook.c: Activated Click To Add
	and set the click to add message.

	* addressbook/gui/component/e-addressbook-model.c: Added
	value_to_string and append_row handlers.

	* addressbook/gui/component/e-select-names.c: Added a column.

From calendar/ChangeLog:

2000-06-26  Christopher James Lahey  <clahey@helixcode.com>

	* gui/calendar-model.c: Added an #ifdefed value_to_string handler
	assignment.

From camel/ChangeLog:

2000-06-26  Christopher James Lahey  <clahey@helixcode.com>

	* providers/mbox/camel-mbox-summary.c: Added debugging
	information.

From composer/ChangeLog:

2000-06-26  Christopher James Lahey  <clahey@helixcode.com>

	* Makefile.am: Added e-msg-composer-select-file.h for make
	distcheck.

From e-util/ChangeLog:

2000-06-26  Christopher James Lahey  <clahey@helixcode.com>

	* Makefile.am: Added e-canvas-vbox.c and e-canvas-vbox.h.

	* e-canvas-vbox.c, e-canvas-vbox.h: New canvas object to act like
	a vbox using the reflow system.

From mail/ChangeLog:

2000-06-26  Christopher James Lahey  <clahey@helixcode.com>

	* message-list.c: Added a value_to_string handler.

From shell/ChangeLog:

2000-06-26  Christopher James Lahey  <clahey@helixcode.com>

	* glade/Makefile.am: Added EXTRA_DIST for make distcheck.

From widgets/e-table/ChangeLog:

2000-06-26  Christopher James Lahey  <clahey@helixcode.com>

	* Makefile.am: Added e-table-click-to-add.c,
	e-table-click-to-add.h, e-table-one.c, and e-table-one.h.

	* e-table-click-to-add.c, e-table-click-to-add.h: A new canvas
	item that represents a single row that sometimes exists.  It's for
	adding new rows to your table.

	* e-table-example-1.c, e-table-example-2.c, e-table-size-test.c,
	test-check.c, test-cols.c, test-table.c: Added value_to_string handlers.

	* e-table-group-container.c: Use value_to_string to make grouping
	not crash for non string columns.  Made some changes to work
	properly in an ECanvasVbox.

	* e-table-group-leaf.c, e-table-item.c: Made some changes to work
	properly in an ECanvasVbox.

	* e-table-model.c, e-table-model.h: Added append_row and
	value_to_string methods.

	* e-table-one.c, e-table-one.h: Given a source ETableModel, this
	provides a single row model that uses the initialize_value,
	duplicate_value, free_value, and value_is_empty methods of the
	original source to implement set_value and value_at (and proxies
	most of the other methods.)  This is used for ETableClickToAdd.

	* e-table-simple.c, e-table-simple.h: Added append_row and
	value_to_string handlers.  append_row uses a GtkArg instead of a
	parameter to e_table_simple_new.

	* e-table-subset.c: Added append_row and value_to_string handlers.

	* e-table.c, e-table.h: Use a vbox containing an ETableClickToAdd
	and an ETableItem instead of an ETableItem directly.  Only show
	the ETableClickToAdd if the top level of the xml SPEC has the
	attribute click-to-add set to some non-zero integer.
	(click-to-add="1").  Add a "click_to_add_message" argument.

	* e-tree-model.c: Add a commented out value_to_string handler.

From widgets/meeting-time-sel/ChangeLog:

2000-06-26  Christopher James Lahey  <clahey@helixcode.com>

	* Makefile.am: Added the include path to top_srcdir.

svn path=/trunk/; revision=3744
2000-06-27 00:51:06 +00:00
e1416310da Fix a minor warning.
2000-06-20  Christopher James Lahey  <clahey@helixcode.com>

	* e-table-group-leaf.c: Fix a minor warning.

	* e-table-item.c: Add to the selection if shift is held down.
	Show cursor when changing sort (or if table changes majorly.)

svn path=/trunk/; revision=3667
2000-06-21 04:48:58 +00:00
c62863d087 Removed the unfocus method since that's handled by the canvas itself now.
2000-06-20  Christopher James Lahey  <clahey@helixcode.com>

	* e-table-group-container.c, e-table-group-leaf.c,
	e-table-group.c, e-table-group.h: Removed the unfocus method since
	that's handled by the canvas itself now.

	* e-table-item.c, e-table-item.h: Finished adapting ETableItem to
	use the canvas selection/cursor system.  Selection and cursor now
	use row numbers associated with the source model instead of the
	sorted model (if the model they are given is an ETableSubset.)
	This has no effect on the interface, except that unfocus was
	removed and e_table_item_focus was renamed to
	e_table_item_set_cursor.

svn path=/trunk/; revision=3660
2000-06-21 03:07:30 +00:00
c57de49bb5 Added $(GNOME_PRINT_LIBS) to all of the LDADDs.
2000-06-10  Christopher James Lahey  <clahey@helixcode.com>

	* Makefile.am: Added $(GNOME_PRINT_LIBS) to all of the LDADDs.

	* e-cell-text.c: Added printing of text cells.

	* e-cell.c, e-cell.h: Added print and print_height methods.

	* e-table-field-chooser.glade: Added a minimum size.

	* e-table-group-container.c: Fixed a rectangle sizing bug.

	* e-table-group-leaf.c: Implemented get_printable.

	* e-table-group.c, e-table-group.h: Added a get_printable method
	to return an EPrintable.

	* e-table-item.c, e-table-item.h: Added a get_printable function
	to return an EPrintable.

	* e-table.c, e-table.h: Added a get_printable function to return
	an EPrintable.

svn path=/trunk/; revision=3511
2000-06-10 21:16:45 +00:00
06978bc736 Added a right click signal.
2000-06-06  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,
	e-table.c, e-table.h: Added a right click signal.

	* e-table-sorted-variable.c: Fixed a buffer overrun.

svn path=/trunk/; revision=3437
2000-06-06 05:50:12 +00:00
f9b79bb0f6 Added a "key_press" signal.
2000-06-01  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,
	e-table.c, e-table.h: Added a "key_press" signal.

svn path=/trunk/; revision=3366
2000-06-02 02:57:39 +00:00
0a898d1c96 Added e_table_get_selected_view_row.
2000-06-01  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.c,
	e-table.h: Added e_table_get_selected_view_row.

svn path=/trunk/; revision=3351
2000-06-02 00:18:00 +00:00
a076f5b58f Fixed a bunch of selection bugs. Removed "spreadsheet" argument (for now.)
2000-05-30  Christopher James Lahey  <clahey@helixcode.com>

	* 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-item.c, e-table-item.h, e-table.c,
	e-table.h, test-check.c, test-cols.c, test-table.c: Fixed a bunch
	of selection bugs.  Removed "spreadsheet" argument (for now.)
	Added "cursor_mode" argument.  Added "cursor_change" signal.
	Temporarily removed "selection_mode" argument.

svn path=/trunk/; revision=3277
2000-05-30 13:19:32 +00:00
f91435fc0c Added double click handling.
2000-05-28  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,
	e-table.c, e-table.h: Added double click handling.

svn path=/trunk/; revision=3238
2000-05-28 04:25:22 +00:00
628ca43584 Made "drawgrid", "drawfocus", "spreadsheet", and "length_threshold"
2000-05-26  Christopher James Lahey  <clahey@helixcode.com>

	* e-table-group-container.c, e-table-group-container.h,
	e-table-group-leaf.c, e-table-group-leaf.h, e-table.c, e-table.h:
	Made "drawgrid", "drawfocus", "spreadsheet", and
	"length_threshold" arguments set from the ETable effect all the
	end ETableItems.

	* e-table-header.c: Made column resize a bit less bumpy.

svn path=/trunk/; revision=3223
2000-05-26 20:38:49 +00:00
93d002705c Removed a memory leak here.
2000-05-16  Christopher James Lahey  <clahey@helixcode.com>

	* e-table-group-container.c: Removed a memory leak here.

	* e-table-group-leaf.c: Added a ref/sink pair.

	* e-table-group.c, e-table-header-item.c: Removed some unused
	code.

svn path=/trunk/; revision=3079
2000-05-16 09:53:16 +00:00
32471accad From widgets/e-table/ChangeLog
2000-05-14  Christopher James Lahey  <clahey@helixcode.com>

	* Implemented the feature where the ETable columns automatically
	fill the given space.

	* e-cell-text.c, e-cell-text.h: Moved #include
	e-text-event-processor.h from the .h to the .c.

	* e-table-col.c, e-table-col.h: Added an expansion variable, and
	made it so that width isn't set by the programmer but instead by
	the e-table-header.

	* e-table-example-1.c, e-table-example-2.c, e-table-size-test.c,
	test-check.c, test-cols.c, test-table.c: Fixed to handle new
	ETable column resizing.

	* 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-item.c, e-table-item.h: Fixed these to do
	a proper canvas reflow/update loop.  Changed them to take a
	minimum width and return a width and a height.

	* e-table-header-item.c, e-table-header-item.h: Made this so that
	it depends on e-table-header.c for deciding the actual size of
	columns during resize (it was making incorrect decisions on its
	own.)

	* e-table-header.c, e-table-header.h: Changed this to make sure
	that the sum of the widths of the columns was always as close as
	possible to the width of the window.  This is done by taking a
	full width and having each of the columns have an "expansion"
	field.  This field is what makes each column have approximately
	the same portion of its part of the screen that it used to.

	* e-table.c: Changed this to set the width on the ETableHeader as
	well as set the proper minimum width on the ETableGroup and get
	the width and height it reports.

From addressbook/ChangeLog

2000-05-14  Christopher James Lahey  <clahey@helixcode.com>

	* backend/ebook/Makefile.am: Added libeutil for e-card's support
	for categories.

	* backend/ebook/e-card-list.c, backend/ebook/e-card-list.h: Added
	a function to get the length.

	* backend/ebook/e-card.c, backend/ebook/e-card.h: Added categories
	support (accessible either as "categories" or "category_list".)

	* contact-editor/Makefile.am: Added e-table and all of the
	categories files.

	* contact-editor/categories.glade,
	contact-editor/categories-strings.h,
	contact-editor/e-contact-editor-categories.c,
	contact-editor/e-contact-editor-categories.h:

	* contact-editor/contact-editor.glade,
	contact-editor/e-contact-editor-strings.h: Rearranged this dialog.

	* contact-editor/e-contact-editor.c: Rearranged dialog a bit.
	Added opening of categories dialog.

	* gui/component/Makefile.am: Rearranged libraries so that
	libetable would be available for the contact editor categories
	dialog.

	* gui/component/addressbook.c: Fix for new ETable resizing.  Make
	contact editor dialog resizable.

	* gui/minicard/Makefile.am: Added libetable contact editor
	categories dialog.

	* gui/minicard/e-minicard.c: Make contact editor dialog resizable.

From mail/ChangeLog

2000-05-14  Christopher James Lahey  <clahey@helixcode.com>

	* message-list.c: Updated to work with new ETable resizing.

svn path=/trunk/; revision=3027
2000-05-14 14:31:22 +00:00
ccd8e1fedd Add an e_table_group_add_all function and implement it in the different
2000-05-04  Christopher James Lahey  <clahey@helixcode.com>

	* e-table-group-container.c, e-table-group-leaf.c,
	e-table-group.c, e-table-group.h: Add an e_table_group_add_all
	function and implement it in the different ETableGroup classes.

	* e-table-sort-info.c: Make set_nth not call changed twice if it
	needs to allocate more space.

	* e-table-sorted-variable.c, e-table-subset-variable.c,
	e-table-subset-variable.h: Add and implement an
	e_table_subset_variable_add_all command.

	* e-table.c: Use e_table_group_add_all as appropriate.  Fix ETable
	grouping xml to work if there is a text element at the bottom of
	the grouping tree.

svn path=/trunk/; revision=2806
2000-05-05 00:10:32 +00:00
e6f93efbad Fix author information.
2000-05-04  Christopher James Lahey  <clahey@helixcode.com>

	* e-cell-text.c, e-cell-text.h: Fix author information.

	* e-table-group-leaf.c: Set a length threshold of 200.

	* e-table-item.c: Height cache is now actually a map.  Made
	"length_threshold" argument work.  If over the length threshold,
	use the height cache to get a better estimate so that once the
	height cache is full, height estimate is perfect.

svn path=/trunk/; revision=2791
2000-05-04 06:49:31 +00:00
3c1ddb743e Add argument handling here.
2000-04-24  Miguel de Icaza  <miguel@helixcode.com>

	* e-table.c (e_table_class_init): Add argument handling here.

	* e-table-group-leaf.c (e_table_group_apply_to_leafs): New method.
	Enables us to walk all the children of an ETableGroup.

	* e-table.c (et_get_arg, et_set_arg): Implement ::get and ::set
	methods.
	(e_table_construct_from_spec_file): Now we return the etable.
	(e_table_construct): ditto.
	(et_real_construct): Now we return the ETable.  Returns NULL on
	construct failure.
	(e_table_new): ditto.
	(e_table_new_from_spec_file): ditto.

	* (et_build_grouping_spec): Removed vestige code that still
	contained references to the etable->specification XML code.

	Dumped all the ifdefed out code.

	* e-table.h: Removed ETable->specification finally.

svn path=/trunk/; revision=2632
2000-04-26 14:47:10 +00:00
fe016cce58 Got rid of some warnings.
2000-04-06  Christopher James Lahey  <clahey@helixcode.com>

	* test-cols.c, test-table.c: Got rid of some warnings.

	* 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-sort-info.c, e-table-sort-info.h,
	e-table-sorted-variable.c, e-table-sorted-variable.h, e-table.c,
	e-table.h: Changed ETableSortInfo to not use xml internally.

svn path=/trunk/; revision=2305
2000-04-06 08:00:35 +00:00
a02608b078 Fix indentation
svn path=/trunk/; revision=2252
2000-03-30 01:35:18 +00:00
5fe5e0f743 i2000-03-20 Christopher James Lahey <clahey@helixcode.com>
* e-table-group-container.c, e-table-group-container.h,
        e-table-group-leaf.c: Updated these to use the new ECanvas reflow
        infrastructure.

        * e-table-item.c, e-table-item.h: Updated these to use the new
        ECanvas reflow infrastructure.  Fixed the bounding box.

        * e-table.c, e-table.h: Made the header have no extra space around it.

svn path=/trunk/; revision=2124
2000-03-21 02:50:04 +00:00
df08e926e4 Add a "row_selection" signal.
2000-03-06  Christopher James Lahey  <clahey@helixcode.com>

        * e-table.c, e-table.h: Add a "row_selection" signal.

        * test-table.c: Test the new "row_selection" signal.

        * e-table-group-container.c, e-table-group-leaf.c: Implement the
        "row_selection" property properly.

        * e-table-group.c, e-table-group.h: Add a "row_selection" signal.

svn path=/trunk/; revision=2069
2000-03-06 06:08:56 +00:00
77b51962b5 Touched this up a bit.
2000-03-04  Christopher James Lahey  <clahey@helixcode.com>

        * TODO: Touched this up a bit.

        * e-table-group.c, e-table-group-leaf.c: Check for NULL before
        calling gtk_object_unref or gtk_object_destroy.

svn path=/trunk/; revision=2045
2000-03-04 21:22:23 +00:00
14bfde56c8 Added duplicate_value and add_value. Use the new compare functions. Made
2000-02-24  Christopher James Lahey  <clahey@helixcode.com>

        * test-table.c: Added duplicate_value and add_value.  Use the new
        compare functions.  Made it so we only create one model to better
        test model view stuff.  Changed the test to not have as many
        extra, useless, columns.

        * test-cols.c, test-check.c: Added duplicate_value and add_value.  Use the new
        compare functions.

        * e-table.c, e-table.h: Use all the new features of e-table-groups
        (sorting and grouping).  Handle on the fly reorganization of
        groups in an idle loop.  Compare functions now are to return -1 if
        the first item is greater, 0 if they are equal, or 1 if the second
        item is greater.

        * e-table-subset.c, e-table-subset.h: Made e-table-subset
        disconnect properly from its signals when it dies.

        * e-table-subset-variable.c, e-table-subset-variable.h:
        Virtualized the add and remove commands so that
        e_table_sorted_variable could override the add command to do sorting.

        * e-table-sorted.c: Fixed this to inherit properly from
        ETableSubset.

        * e-table-simple.h, e-table-simple.c: Added handling of
        duplicate_value and free_value;

        * e-table-model.c, e-table-model.h: Added duplicate_value and
        free_value for memory allocation of table elements outside the
        table.

        * e-table-item.c: Fixed a crashing bug.

        * e-table-group.c: Added sorting.  Fixed destruction to delete the
        right things.

        * e-table-group-leaf.c, e-table-group-leaf.h: Pass column and sort
        order information into the e_table_sorted_variable.  Properly
        destroy things when deleted.

        * e-table-group-container.c, e-table-group-container.h: Properly
        handle the list of subgroups.  Handle proper sorting and grouping
        of subgroups.

        * e-table-sorted-variable.c, e-table-sorted-variable.h: Files to
        do a sorted model that stays sorted as you add and remove rows.

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

svn path=/trunk/; revision=1930
2000-02-25 04:08:59 +00:00
7699b8996a This were moved to widgets/e-text/ a while ago but never removed. They
2000-02-24  Christopher James Lahey  <clahey@helixcode.com>

        * widgets/e-text.c, widgets/e-text.h, e-text-event-processor.c,
        e-text-event-processor.h, e-text-event-processor-emacs-like.c,
        e-text-event-processor-emacs-like.h,
        e-text-event-processor-types.h: This were moved to widgets/e-text/
        a while ago but never removed.  They have now been removed.

        * widgets/e-text/e-text.c, widgets/e-text/e-text.h: Removed some
        warnings from this file.  Made tooltips disappear when you're
        finished with them.

        * widgets/e-minicard/test-reflow.c,
        widgets/e-minicard/test-minicard.c,
        widgets/e-minicard/test-minicard-label.c: Commented out unused
        about_callback functions.

        * widgets/e-minicard/e-reflow.c: Made e-reflow pass an EFocus to
        its e-minicard children.

        * widgets/e-minicard/e-minicard.c: Made e-minicard take and return
        an EFocus for its "has_focus" argument.  This makes shift-tab work properly.

        * widgets/e-minicard/e-minicard-label.c: Made e-minicard-label take and return
        an EFocus for its "has_focus" argument.  Made the font that
        e-minicard-label uses only be allocated once.

        * e-util/e-canvas-utils.h: Fixed the comment at the top and added
        #ifndef __E_CANVAS_UTILS__.

        * e-util/Makefile.am: Added e-xml-utils.c and
        e-xml-utils.h.

        * e-util/e-xml-utils.h, e-util/e-xml-utils.c: Added files for some
        xml utilities.

        * e-util/e-util.h: Added type EFocus which describes which
        direction the focus will be coming from.


in mail:

2000-02-24  Christopher James Lahey  <clahey@helixcode.com>

        * message-list.c: Changed this to not use the "x" and "y"
        arguments to e-table-item.


in widgets/e-table:

2000-02-24  Christopher James Lahey  <clahey@helixcode.com>

        * e-table-subset-variable.c, e-table-subset-variable.h: A new
        model which is a subset, but you can add and remove rows.

        * test-table.c: Added a thaw method for use with the
        e-table-subset (emits model_changed.)  Adapted to the changes to
        e_table_item.  Properly parse headers.  Adapted to the changes to
        e_table, including creating example xml spec data.

        * test-cols.c, test-check.c: Added a thaw method for use with the
        e-table-subset (emits model_changed.)  Adapted to the changes to
        e_table_item.

        * e-table.c, e-table.h: Reworked e-table to use the ETable
        grouping system.  The only difference for the interface is that
        instead of passing in a column_spec and a grouping_spec, you pass
        in a single string that is an xml format that includes both pieces
        of information.

        * e-table-subset.h: Added rules for emacs to do correct
        indentation.

        * e-table-subset.c: Implemented freezing.  No signals are emitted
        while frozen and "model_changed" is emitted when thawed.

        * e-table-sorted.h: ETableSortedClass has ETableSubset as its
        parent object instead of ETableSubsetClass.  Fixed this.

        * e-table-simple.c, e-table-simple.h: Implemented the thaw method.
        Use of simple now requires an extra argument (the thaw method.)

        * e-table-model.h, e-table-model.c: Added e_table_model_freeze and
        e_table_model_thaw.

        * e-table-item.h, e-table-item.c: Reworked this a bit to make it
        provide some things the new group system needed and to make
        inter-item keyboard focus work.  Changed the external interface
        only in the list of arguments it recognizes and signals it emits.
        Instead of "x" and "y", you have to use
        e_canvas_item_move_absolute and instead of emitting a
        "height_changed" signal, it emits a "resize" signal.  There's new
        "has_focus", "width", and "height" arguments and a function to get
        the currently focused column.

        * e-table-header-item.c: Got rid of some warnings here.  Changed
        the

        * e-table-group-leaf.h, e-table-group-leaf.c,
        e-table-group-container.h, e-table-group-container.c: New types to
        make e_table_group work properly.

        * e-table-group.h, e-table-group.c: Completely reworked e-table
        grouping.  e-table-group now uses a hierarchical structure.

        * e-cell.h: Added e_cell_print.  This doesn't work yet.

        * e-cell.c: Made e_cell_realize exist.  (It was improperly named
        e_cell_view_realize in the .c.)

        * e-cell-text.c: Made the blinking cursor disappear properly.

        * check-filled.xpm, check-empty.xpm: Made these const char *[]
        instead of char *[] to avoid compiler warnings.

        * Makefile.am: Added e-table-group-container.c,
        e-table-group-container.h, e-table-group-leaf.c,
        e-table-group-leaf.h, e-table-subset-variable.c,
        e-table-subset-variable.h.

svn path=/trunk/; revision=1915
2000-02-24 06:51:23 +00:00