Commit Graph

283 Commits

Author SHA1 Message Date
2529bb621e Make printing of groups work better and make them print headers.
2000-08-28  Christopher James Lahey  <clahey@helixcode.com>

	* e-table-group-container.c: Make printing of groups work better
	and make them print headers.

	* e-table-item.c: Turn off alternating row support.

svn path=/trunk/; revision=5086
2000-08-28 21:21:37 +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
20925d94eb Added some g_return_if_fails and g_return_val_if_fails.
2000-08-25  Christopher James Lahey  <clahey@helixcode.com>

	* e-table-col.c, e-table-config.c, e-table-header.c,
	e-table-text-model.c: Added some g_return_if_fails and
	g_return_val_if_fails.

svn path=/trunk/; revision=5056
2000-08-26 09:15:32 +00:00
ffc43362bc Fix an off by one error that was causing crashes.
2000-08-24  Christopher James Lahey  <clahey@helixcode.com>

	* e-table.c: Fix an off by one error that was causing crashes.

svn path=/trunk/; revision=5027
2000-08-24 23:18:08 +00:00
c99edac0b5 Set default values for all of the signal emissions.
2000-08-24  Christopher James Lahey  <clahey@helixcode.com>

	* e-table.c: Set default values for all of the signal emissions.

svn path=/trunk/; revision=5026
2000-08-24 22:24:36 +00:00
aa9505c5ae Check for selection->selection being NULL in
2000-08-24  Christopher James Lahey  <clahey@helixcode.com>

	* e-table-selection-model.c: Check for selection->selection being
	NULL in e_table_selection_model_selected_count.

svn path=/trunk/; revision=5025
2000-08-24 22:03:48 +00:00
5722c2786e Pay attention to the return value from the click signal.
2000-08-24  Christopher James Lahey  <clahey@helixcode.com>

	* e-table-item.c: Pay attention to the return value from the click
	signal.

svn path=/trunk/; revision=5022
2000-08-24 21:24:17 +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
3877d4077d Forgot to commit this
svn path=/trunk/; revision=5019
2000-08-24 20:47:23 +00:00
ba232a706e Added g_return_if_fails.
2000-08-24  Christopher James Lahey  <clahey@helixcode.com>

	* e-table-scrolled.c, e-table.c: Added g_return_if_fails.

svn path=/trunk/; revision=5015
2000-08-24 19:36:44 +00:00
695baf618d Added infrastructure for setting the justification of columns. Still need
2000-08-24  Christopher James Lahey  <clahey@helixcode.com>

	* e-cell-text.c, e-cell-toggle.c, e-cell-tree.c, e-cell.c,
	e-cell.h, e-table-col.c, e-table-col.h, e-table-item.c: Added
	infrastructure for setting the justification of columns.  Still
	need to change the cells to support it and need to add user
	interface to change the justification.

svn path=/trunk/; revision=5010
2000-08-24 19:06:54 +00:00
c512a22478 Fixed a bug in e_table_subset_variable_increment that causes problems with
2000-08-23  Christopher James Lahey  <clahey@helixcode.com>

	* e-table-subset-variable.c: Fixed a bug in
	e_table_subset_variable_increment that causes problems with
	ETree's.  Specifically, when you incremented at position x, the
	row x didn't get incremented as it should (s/>/>=/.)

svn path=/trunk/; revision=4994
2000-08-23 22:59:09 +00:00
049c61546b remove tree-expanded.xpm and tree-unexpanded.xpm.
2000-08-22  Chris Toshok  <toshok@helixcode.com>

	* Makefile.am (icons): remove tree-expanded.xpm and
	tree-unexpanded.xpm.

	* e-tree-example-1.c: use art/tree-expanded.xpm and
	art/tree-unexpanded.xpm.
	(remove_node): commit the change listed below (08-21).

	* tree-expanded.xpm: removed.

	* tree-unexpanded.xpm: removed.

svn path=/trunk/; revision=4975
2000-08-23 01:48:20 +00:00
1e5ae349da Handle iso-8859-1 keys nicely in e-text and e-table. Other encodings to
come...

svn path=/trunk/; revision=4972
2000-08-23 00:22:18 +00:00
a30113eebc Moved drawing of the cell backgrounds from ECell into ETableItem.
2000-08-22  Christopher James Lahey  <clahey@helixcode.com>

	* e-cell-text.c, e-cell-toggle.c, e-cell-tree.c, e-table-item.c:
	Moved drawing of the cell backgrounds from ECell into ETableItem.

	* e-tree-model.c: Include stdlib.c.

svn path=/trunk/; revision=4915
2000-08-22 10:03:36 +00:00
a0e3d19542 Changed UTF-8 handling syntax from char based to byte based
svn path=/trunk/; revision=4913
2000-08-22 02:53:04 +00:00
95ba651873 we can remove nodes with children now.
2000-08-21  Chris Toshok  <toshok@helixcode.com>

	* e-tree-example-1.c (remove_node): we can remove nodes with
	children now.

	* e-tree-model.h: add prototype for e_tree_model_node_sort.

	* e-tree-model.c (etree_set_expanded): if the node is invisible,
	just set its expanded flag and return.
	(e_tree_model_root_node_set_visible): call set_expanded before we
	remove it from the row array or else the aforementioned change
	will result in nothing happening.
	(e_tree_model_node_insert): use a position of -1 as "append".
	(e_tree_model_node_insert): if the model was marked with
	root_visible == FALSE, make sure to set it's expanded flag to TRUE
	when the root node is inserted.
	(e_tree_model_node_sort): new function.

svn path=/trunk/; revision=4912
2000-08-22 00:42:14 +00:00
bfd2e9c92d pass table, not site as the closure for these drag signals, since
2000-08-21  Chris Toshok  <toshok@helixcode.com>

	* e-table.c (e_table_drag_source_set): pass table, not site as the
	closure for these drag signals, since e_table_drag_source_event_cb
	assumes it's the table.

svn path=/trunk/; revision=4911
2000-08-22 00:24:03 +00:00
475a5d499c Added e_table_selection_model_selected_count.
2000-08-20  Christopher James Lahey  <clahey@helixcode.com>

	* e-table-selection-model.c: Added
	e_table_selection_model_selected_count.

svn path=/trunk/; revision=4893
2000-08-20 23:18:45 +00:00
9a88f3d4d6 First step moving to UTF-8 strings
svn path=/trunk/; revision=4885
2000-08-20 00:02:10 +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
62ca9f5fd7 Make right click select if the current row is not selected.
2000-08-09  Christopher James Lahey  <clahey@helixcode.com>

	* e-table-item.c, e-table-selection-model.c,
	e-table-selection-model.h: Make right click select if the current
	row is not selected.

svn path=/trunk/; revision=4658
2000-08-09 19:40:04 +00:00
92a068467b Call our parent's destroy method.
2000-07-18  Miguel de Icaza  <miguel@helixcode.com>

	* e-tree-model.c (etree_destroy): Call our parent's destroy
	method.

svn path=/trunk/; revision=4643
2000-08-09 06:33:46 +00:00
e2ad42ace2 Tag some strings for translation.
2000-08-08  Miguel de Icaza  <miguel@helixcode.com>

	* e-table-header-item.c: Tag some strings for translation.

svn path=/trunk/; revision=4642
2000-08-09 06:33:19 +00:00
a0522bcc25 Changed e_popup_menu_run call to match the new arguments.
2000-08-09  Christopher James Lahey  <clahey@helixcode.com>

	* e-table-header-item.c: Changed e_popup_menu_run call to match
	the new arguments.

svn path=/trunk/; revision=4628
2000-08-09 05:15:14 +00:00
c115cff69d Added functions to convert from view row to model row or from model row to
2000-08-05  Christopher James Lahey  <clahey@helixcode.com>

	* e-table.c, e-table.h: Added functions to convert from view row
	to model row or from model row to view row.  Also changed
	e_table_set_cursor_row and e_table_get_cursor_row to take a model
	row as this works better with the rest of the model.  Changed the
	name of e_table_get_next_row_sorted and
	e_table_get_prev_row_sorted.  (Dropped the _sorted.)

svn path=/trunk/; revision=4556
2000-08-05 23:00:41 +00:00
8a79e9aa26 fix
* e-table.c (e_table_get_{next,prev}_row_sorted): fix

svn path=/trunk/; revision=4553
2000-08-05 18:53:56 +00:00
9346032727 Added a function to get the next row with sorting taken into account.
2000-08-05  Christopher James Lahey  <clahey@helixcode.com>

	* e-table.c: Added a function to get the next row with sorting
	taken into account.

svn path=/trunk/; revision=4549
2000-08-05 13:21:39 +00:00
cab78cd062 Made it so that selection ranges work even if the table is using grouping.
2000-08-05  Christopher James Lahey  <clahey@helixcode.com>

	* e-table-sorter.c: Made it so that selection ranges work even if
	the table is using grouping.

svn path=/trunk/; revision=4547
2000-08-05 12:57:07 +00:00
78adc934b0 Made selection ranges work even if the table is sorted.
2000-08-05  Christopher James Lahey  <clahey@helixcode.com>

	* Makefile.am, e-table-selection-model.c,
	e-table-selection-model.h, e-table.c, e-table.h: Made selection
	ranges work even if the table is sorted.

	* e-table-sorter.c, e-table-sorter.h: New files to help with
	making selection ranges work even if sorted.

svn path=/trunk/; revision=4546
2000-08-05 12:38:24 +00:00
5e58fb6edb Built code to have autodrags only work from within the table and to report
2000-08-04  Christopher James Lahey  <clahey@helixcode.com>

	* e-table.c, e-table.h: Built code to have autodrags only work
	from within the table and to report the row dragged from
	automatically.

svn path=/trunk/; revision=4542
2000-08-05 01:55:01 +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
5fbcc4828e Add a handler for "model_pre_change" and properly stop editing.
2000-08-02  Christopher James Lahey  <clahey@helixcode.com>

	* e-table-item.c, e-table-item.h: Add a handler for
	"model_pre_change" and properly stop editing.

	* e-table-model.c, e-table-model.h: Added a "model_pre_change"
	signal that gets sent before any row numbers are changed.

	* e-table-sorted-variable.c, e-table-subset-variable.c: Emit
	"model_pre_change" signals as appropriate.

	* e-table-subset.c, e-table-subset.h: Proxy "model_pre_changed"
	signals.

svn path=/trunk/; revision=4472
2000-08-02 16:56:26 +00:00
2e8ac028ee Changed the API for the append_row function. Now accepts a model to copy
2000-08-02  Christopher James Lahey  <clahey@helixcode.com>

	* e-table-model.c, e-table-model.h: Changed the API for the
	append_row function.  Now accepts a model to copy data from
	instead of returning a row number and leaving it up to ETableOne
	to copy the data in.

	* e-table-one.c, e-table-one.h: Adapted to use new append_row API.

	* e-table-simple.c, e-table-simple.h, e-table-subset.c: Adapted to
	supply new append_row API.

svn path=/trunk/; revision=4468
2000-08-02 10:44:28 +00:00
1ad76125ef Added an argument to set a column so that you can't sort by that column.
2000-07-31  Christopher James Lahey  <clahey@helixcode.com>

	* e-table-col.c, e-table-col.h: Added an argument to set a column
	so that you can't sort by that column.

	* e-table-header-item.c: Obey the sortable column of ETableCol.

svn path=/trunk/; revision=4439
2000-07-31 22:32:36 +00:00
08f83c6fcf Made enter key destroy and recreate the ETableItem.
2000-07-29  Christopher James Lahey  <clahey@helixcode.com>

	* e-table-click-to-add.c: Made enter key destroy and recreate the
	ETableItem.

	* e-table-item.c: Grab focus when person clicks even if cursor
	isn't changing.

svn path=/trunk/; revision=4416
2000-07-29 20:06:54 +00:00
d5ae7c6cf0 Remove the idle handler before destroying the data it operates on.
* e-table-header.c (eth_destroy): Remove the idle handler before
	destroying the data it operates on.

svn path=/trunk/; revision=4407
2000-07-28 21:33:25 +00:00
967c830626 Fixed up the table behavior so that it's not always in an edit mode.
2000-07-27  Christopher James Lahey  <clahey@helixcode.com>

	* e-table-item.c: Fixed up the table behavior so that it's not
	always in an edit mode.

svn path=/trunk/; revision=4392
2000-07-27 16:33:11 +00:00
46f952b2a5 Added a comment.
2000-07-27  Christopher James Lahey  <clahey@helixcode.com>

	* e-table-selection-model.c: Added a comment.

svn path=/trunk/; revision=4387
2000-07-27 15:34:58 +00:00
a25046c091 Fixed shift click selections.
2000-07-27  Christopher James Lahey  <clahey@helixcode.com>

	* e-table-selection-model.c: Fixed shift click selections.

svn path=/trunk/; revision=4386
2000-07-27 15:27:06 +00:00
5f04bddb8e Allocate correctly in the insert method.
2000-07-27  Christopher James Lahey  <clahey@helixcode.com>

	* e-table-selection-model.c: Allocate correctly in the insert method.

	* e-table-click-to-add.c: Removed the line that was causing this
	to do bad things.

svn path=/trunk/; revision=4385
2000-07-27 15:07:47 +00:00
86b1bd7f21 Grab focus properly.
2000-07-27  Christopher James Lahey  <clahey@helixcode.com>

	* e-table-item.c (eti_cursor_change): Grab focus properly.

	* e-table-item.c, e-table-click-to-add.c: Fixed ETableClickToAdd
	to handle carriage return.  This still doesn't quite work right.

svn path=/trunk/; revision=4384
2000-07-27 14:50:04 +00:00
9d1dafcffb Clear the selection model when activating.
2000-07-27  Christopher James Lahey  <clahey@helixcode.com>

	* e-table-click-to-add.c: Clear the selection model when
	activating.

	* e-table-item.c: Fixed a bunch of model column vs. view column
	issues.

	* e-table-selection-model.c: Set the cursor to -1, -1 and emi a
	"cursor_changed" signal.

svn path=/trunk/; revision=4380
2000-07-27 08:44:20 +00:00
5e3f91d87b Fixed a reference.
2000-07-26  Christopher James Lahey  <clahey@helixcode.com>

	* e-table-click-to-add.c: Fixed a reference.

	* e-table-selection-model.c, e-table-selection-model.h: Added a
	clear function.

	* e-table.c, e-table.h: Made going from click to add to the main
	table and back work better.

svn path=/trunk/; revision=4373
2000-07-27 01:36:20 +00:00
d1cc23165d Added an ETableSelectionModel so this won't crash.
2000-07-26  Christopher James Lahey  <clahey@helixcode.com>

	* e-table-click-to-add.c, e-table-click-to-add.h: Added an
	ETableSelectionModel so this won't crash.

svn path=/trunk/; revision=4372
2000-07-26 23:22:08 +00:00
0adf2e8584 Fixed the model/view row confusion.
2000-07-26  Christopher James Lahey  <clahey@helixcode.com>

	* e-table-item.c: Fixed the model/view row confusion.

	* e-table-selection-model.c: Changed one expression to use a
	#define properly.

svn path=/trunk/; revision=4371
2000-07-26 23:01:48 +00:00
cf874e6155 Uninitialized variable fix for e-table
svn path=/trunk/; revision=4367
2000-07-26 21:08:43 +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
6602e01493 Made foreach call the callback in top to bottom order.
2000-07-25  Christopher James Lahey  <clahey@helixcode.com>

	* e-table-selection-model.c: Made foreach call the callback in top
	to bottom order.

svn path=/trunk/; revision=4335
2000-07-25 21:59:29 +00:00
20e7e5d650 Replaced get_selection_list with foreach.
2000-07-25  Christopher James Lahey  <clahey@helixcode.com>

	* e-table-selection-model.c, e-table-selection-model.h: Replaced
	get_selection_list with foreach.

	* e-table.h: Add a ETableSelectionModel.

svn path=/trunk/; revision=4334
2000-07-25 21:56:06 +00:00