Commit Graph

225 Commits

Author SHA1 Message Date
057b88f12e g_free things we g_malloc.
2000-07-14  Michael Meeks  <michael@helixcode.com>

	* e-table-subset.c (etss_destroy): g_free things we g_malloc.

svn path=/trunk/; revision=4167
2000-07-14 18:29:13 +00:00
1be3f59a27 Changed the background color of the header.
2000-07-13  Christopher James Lahey  <clahey@helixcode.com>

	* e-table-header-item.c: Changed the background color of the
	header.

svn path=/trunk/; revision=4152
2000-07-13 19:23:22 +00:00
86236d0687 Made scroll wheel work properly in header.
2000-07-12  Christopher James Lahey  <clahey@helixcode.com>

	* e-table-header-item.c: Made scroll wheel work properly in
	header.

svn path=/trunk/; revision=4128
2000-07-12 23:03:39 +00:00
0b7919fc13 Make sure the ETable is constructed properly, by setting the
arguments in the parent EScrollFrame class.

svn path=/trunk/; revision=4063
2000-07-10 22:57:03 +00:00
01e53b8aea Fix a typbraino in the ETableScrolled header file.
svn path=/trunk/; revision=4043
2000-07-10 19:26:19 +00:00
23ca256b7d Add e-table-scrolled.c and e-table-scrolled.h.
2000-07-09  Christopher James Lahey  <clahey@helixcode.com>

	* Makefile.am: Add e-table-scrolled.c and e-table-scrolled.h.

	* e-table-item.c: Make sure that find_cell returns FALSE if the
	item doesn't have any cells.

	* e-table-scrolled.c, e-table-scrolled.h: Added a widget to
	contain an ETable and provide scrollbars (for ease of use.)

	* e-table.c, e-table.h: Make this support the scrollable interface
	and not contain its own scrollbars.

svn path=/trunk/; revision=4031
2000-07-10 11:04:18 +00:00
a9cc8f7c2d Put back e_cell_event sometimes when we're not editing.
2000-07-09  Christopher James Lahey  <clahey@helixcode.com>

	* e-table-item.c (eti_event): Put back e_cell_event sometimes when
	we're not editing.

svn path=/trunk/; revision=4019
2000-07-09 16:03:21 +00:00
eae083de33 Set the dnd_code to something non-null for the ETableHeaderItem.
2000-07-09  Christopher James Lahey  <clahey@helixcode.com>

	* e-table.c: Set the dnd_code to something non-null for the
	ETableHeaderItem.

svn path=/trunk/; revision=4013
2000-07-09 14:27:57 +00:00
26279f186a Set header canvas scroll region correctly.
2000-07-09  Christopher James Lahey  <clahey@helixcode.com>

	* e-table.c: Set header canvas scroll region correctly.

svn path=/trunk/; revision=4010
2000-07-09 12:36:07 +00:00
4bd225790a Don't draw drop markers when the layout won't be changed by the drop.
svn path=/trunk/; revision=4005
2000-07-09 10:10:17 +00:00
7f64833332 Get rid of an unused variable.
svn path=/trunk/; revision=3997
2000-07-09 02:41:32 +00:00
70909df376 When inserting a root node, only call e_table_model_row_inserted if
* e-tree-model.c (e_tree_model_node_insert): When inserting a root
	node, only call e_table_model_row_inserted if root_visible.
	(e_tree_model_node_remove): Call e_table_model_row_deleted before
	removing the row from the row_array, because the chain of signal
	handlers will sometimes need that info.

svn path=/trunk/; revision=3994
2000-07-09 02:05:59 +00:00
9f18b5b934 Don't call e_cell_event if we're not editing.
2000-07-08  Christopher James Lahey  <clahey@helixcode.com>

	* e-table-item.c (eti_event): Don't call e_cell_event if we're not
	editing.

svn path=/trunk/; revision=3991
2000-07-09 01:56:19 +00:00
1150b8d1b3 Commented out some unnecessary and buggy code.
2000-07-08  Christopher James Lahey  <clahey@helixcode.com>

	* e-table-item.c (eti_table_model_changed): Commented out some
	unnecessary and buggy code.

svn path=/trunk/; revision=3988
2000-07-09 01:24:20 +00:00
d692cab641 add a g_return_val_if_fail to etree_node_at_row
svn path=/trunk/; revision=3937
2000-07-07 03:00:52 +00:00
540bde0aff Make this work recursively.
* e-tree-model.c (e_tree_model_node_remove): Make this work
	recursively.

svn path=/trunk/; revision=3935
2000-07-07 02:26:36 +00:00
308228cd4e fix the conditions under which we draw a horizontal line.
2000-07-06  Chris Toshok  <toshok@helixcode.com>

	* e-cell-tree.c (ect_draw): fix the conditions under which we draw
	a horizontal line.

svn path=/trunk/; revision=3929
2000-07-06 23:27:17 +00:00
39d880abe9 Send GDK_BUTTON_RELEASE events to the ecell associated with the cell (if
2000-07-06  Christopher James Lahey  <clahey@helixcode.com>

	* e-table-item.c: Send GDK_BUTTON_RELEASE events to the ecell
	associated with the cell (if it's the cursor.)

svn path=/trunk/; revision=3909
2000-07-06 04:57:37 +00:00
e59563eb7d Added a reflow_compare callback and did removal if you do shift-click on a
2000-07-03  Christopher James Lahey  <clahey@helixcode.com>

	* e-table-item.c: Added a reflow_compare callback and did removal
	if you do shift-click on a selected row that's not the cursor.

svn path=/trunk/; revision=3873
2000-07-03 22:27:25 +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
f704f45bbf Added an unsort command.
2000-06-27  Christopher James Lahey  <clahey@helixcode.com>

	* e-table-header-item.c: Added an unsort command.

	* e-table-item.c: leave_edit when you loose the cursor.

svn path=/trunk/; revision=3766
2000-06-27 20:54:14 +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
b92cdaf00a draw pixmaps with he right background and selection colors.
2000-06-23  Larry Ewing  <lewing@helixcode.com>

	* e-cell-toggle.c (etog_draw): draw pixmaps with he right
	background and selection colors.

svn path=/trunk/; revision=3709
2000-06-23 16:22:50 +00:00
422046cc58 add icon_at virtual function - it was stupid to make the insert call take
2000-06-23  Chris Toshok  <toshok@helixcode.com>

	* e-tree-model.h, e-tree-model.c: add icon_at virtual function -
	it was stupid to make the insert call take 2 pixbufs.  the model
	should give this information.

	* e-cell-tree.c: get rid of the opened/closed pixbuf stuff.  call
	e_tree_model_icon_of_node.

	* e-tree-example-1.c: add my_icon_at.

	* e-tree-simple.c (simple_icon_at): new function
	(e_tree_simple_new): add icon_at parameter.

	* e-tree-simple.h: add SimpleIconAtFn.

svn path=/trunk/; revision=3707
2000-06-23 07:47:37 +00:00
29a313c41e use the expanded/unexpanded pixbufs as node pixbufs for the first level of
2000-06-23  Chris Toshok  <toshok@helixcode.com>

	* e-tree-example-1.c (create_tree): use the expanded/unexpanded
	pixbufs as node pixbufs for the first level of children, to test
	the drawing.

	* e-tree-model.c (e_tree_model_node_get_closed_pixbuf): new function.
	(e_tree_model_node_get_opened_pixbuf): same.
	(e_tree_model_node_insert): add opened/closed pixbuf argument.
	(e_tree_model_node_insert_before): same.

	* e-tree-model.h: add prototypes for opened/closed pixbuf
	accessors, and add them to the e_tree_model_node_insert_* calls.

	* e-cell-tree.c (ect_draw): add opened/closed pixbuf drawing per node.

svn path=/trunk/; revision=3706
2000-06-23 07:19:11 +00:00
ced77ebe05 Make the table not move around as you resize.
2000-06-22  Christopher James Lahey  <clahey@helixcode.com>

	* e-table.c: Make the table not move around as you resize.

svn path=/trunk/; revision=3696
2000-06-22 20:33:04 +00:00
c74b334a2c Killed a warning.
2000-06-22  Christopher James Lahey  <clahey@helixcode.com>

	* e-table-item.c: Killed a warning.

svn path=/trunk/; revision=3691
2000-06-22 16:30:00 +00:00
cf93af47a5 Remove use of the "x" and "y" arguments to EText.
2000-06-22  Christopher James Lahey  <clahey@helixcode.com>

	* e-table-group-container.c: Remove use of the "x" and "y"
	arguments to EText.

	* e-table-item.c: Properly ref the source_model field.

	* test-check.c, test-cols.c, test-table.c: Remove use of the "x"
	and "y" arguments to ETableHeaderItem.

svn path=/trunk/; revision=3690
2000-06-22 16:24:23 +00:00
588fd23c5c Made the Close button work.
2000-06-21  Christopher James Lahey  <clahey@helixcode.com>

	* e-table-field-chooser-dialog.c: Made the Close button work.

	* e-table-field-chooser.glade, e-table-field-chooser.glade.h:
	Added a text description of this dialog.

svn path=/trunk/; revision=3685
2000-06-21 23:01:29 +00:00
a30a2c1162 Changed this to move the cell to the nearest edge instead of to the left
2000-06-21  Christopher James Lahey  <clahey@helixcode.com>

	* e-table-header-item.c: Changed this to move the cell to the
	nearest edge instead of to the left of the column it's over.

	* e-table-header.c: Made target_index equal to eti->col_count be a
	valid parameter to e_table_header_move.

svn path=/trunk/; revision=3683
2000-06-21 22:49:34 +00:00
b06d4d48ed Made moving columns to the right work properly.
2000-06-21  Christopher James Lahey  <clahey@helixcode.com>

	* e-table-header.c: Made moving columns to the right work
	properly.

svn path=/trunk/; revision=3681
2000-06-21 21:12:40 +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
e7b121771f Fix HEADER_PADDING.
2000-06-20  Christopher James Lahey  <clahey@helixcode.com>

	* e-table-defines.h: Fix HEADER_PADDING.

svn path=/trunk/; revision=3662
2000-06-21 03:24:10 +00:00
e8ab14846b Fix cursor column information.
2000-06-20  Christopher James Lahey  <clahey@helixcode.com>

	* e-table-item.c: Fix cursor column information.

svn path=/trunk/; revision=3661
2000-06-21 03:17:22 +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
39ea8e12ac Started adapting ETableItem to use the canvas selection/cursor system.
2000-06-20  Christopher James Lahey  <clahey@helixcode.com>

	* e-table-item.c, e-table-item.h: Started adapting ETableItem to
	use the canvas selection/cursor system.

svn path=/trunk/; revision=3656
2000-06-21 00:12:48 +00:00
9c3a56da17 call e_table_model_row_inserted instead of e_table_model_changed.
2000-06-17  Chris Toshok  <toshok@helixcode.com>

	* e-tree-model.c (e_tree_model_node_insert): call
	e_table_model_row_inserted instead of e_table_model_changed.

svn path=/trunk/; revision=3637
2000-06-19 21:02:18 +00:00
c47e316032 Made cells with strikeout on have a line from the left margin to the right
2000-06-17  Christopher James Lahey  <clahey@helixcode.com>

	* e-cell-text.c: Made cells with strikeout on have a line from the
	left margin to the right margin, instead of just over the text.

svn path=/trunk/; revision=3609
2000-06-17 12:39:03 +00:00
bdef37bda3 Moved the reflow signal handling into an idle handler to fix a bug when
2000-06-16  Christopher James Lahey  <clahey@helixcode.com>

	* e-table.c, e-table.h: Moved the reflow signal handling into an
	idle handler to fix a bug when resizing twice in succession.

svn path=/trunk/; revision=3588
2000-06-16 05:39:06 +00:00
cb802b193c print the icon for the tree control.
2000-06-15  Chris Toshok  <toshok@helixcode.com>

	* e-cell-tree.c (ect_print): print the icon for the tree control.

svn path=/trunk/; revision=3579
2000-06-15 21:05:28 +00:00
5ae693645f new function, to generate postscript so i can test tree printing.
2000-06-14  Chris Toshok  <toshok@helixcode.com>

	* e-tree-example-1.c (print_tree): new function, to generate
	postscript so i can test tree printing.
	(create_tree): add print button.

	* e-cell-tree.c (ect_print_height): implement function (in a
	broken way for the time being, heh).
	(ect_print): implement function to draw tree controls and offset
	the subcell's printing.  icons aren't printed yet, just lines.
	(ect_draw): remove old unnecessary comments.  only draw the
	horizontal line in specific instances (well, add a test so a lone
	root node doesn't get the horizontal line.)
	(e_cell_tree_class_init): add print/print_height methods.

svn path=/trunk/; revision=3565
2000-06-14 07:07:38 +00:00
fabd9d91ab Request the value of e_table_is_cell_editable of the model_col instead of
2000-06-14  Christopher James Lahey  <clahey@helixcode.com>

	* e-cell-text.c: Request the value of e_table_is_cell_editable of
	the model_col instead of the view_col.

	* e-table-item.h: Slight style fixup.

svn path=/trunk/; revision=3564
2000-06-14 07:07:37 +00:00
6b9eb3dbe7 Clip the contained text.
2000-06-13  Christopher James Lahey  <clahey@helixcode.com>

	* e-cell-text.c: Clip the contained text.

	* e-table-group-container.c: Did a first pass at grouped
	printing.  This works, but there's no fancy boxes or headers
	around the groups.

	* e-table-item.c: Added will_fit function and added quantize
	function to _height.

svn path=/trunk/; revision=3552
2000-06-13 14:39:13 +00:00
9de25e88aa Removed the freeze/thaw stuff for the model. As Chris wisely pointed out,
2000-06-12  Federico Mena Quintero  <federico@helixcode.com>

	* e-table-model.[ch]: Removed the freeze/thaw stuff for the model.
	As Chris wisely pointed out, having freeze/thaw on the model makes
	its state inconsistent from the perspective of the views.

	* e-table-sorted-variable.c: Do not check for a frozen model.
	* e-table-subset.c: Likewise.
	* e-table-subset-variable.c: Likewise.

	* e-table-example-1.c: Removed the ETableModel thaw handler.
	* e-table-example-2.c: Likewise.
	* e-table-simple.c: Likewise.
	* e-table-size-test.c: Likewise.
	* test-check.c: Likewise.
	* test-cols.c: Likewise.
	* test-table.c: Likewise.

svn path=/trunk/; revision=3543
2000-06-13 00:41:47 +00:00
ab8f482b21 supply the pixbufs here.
2000-06-10  Chris Toshok  <toshok@helixcode.com>

	* e-tree-example-1.c (create_tree): supply the pixbufs here.

	* e-cell-tree.h: change pixbuf names to open_pixbuf/closed_pixbuf.

	* e-cell-tree.c (e_cell_tree_construct): take open/closed pixbuf
	parameters, and don't #include the .xpm files directly here.
	(e_cell_tree_new): same.
	(ect_draw): use the pixbufs from the ECellTree.

svn path=/trunk/; revision=3522
2000-06-11 05:07:13 +00:00
07707b81af offset events before passing them to our subcell view.
2000-06-10  Chris Toshok  <toshok@helixcode.com>

	* e-cell-tree.c (ect_event): offset events before passing them to
	our subcell view.

svn path=/trunk/; revision=3520
2000-06-11 04:44:27 +00:00
aac3f2c8b6 change things so we focus the cell and select the row, and also dispatch
2000-06-10  Chris Toshok  <toshok@helixcode.com>

	* e-table-item.c (eti_event): change things so we focus the cell
	and select the row, and also dispatch the event to that row/cell.
	This fixes the problem with the tree where you had to click twice
	to activate the tree controls.

	* Makefile.am (libetable_a_SOURCES): remove e-tree-gnode.* and add
	e-tree-simple.*
	(icons): add tree-expanded.xpm and tree-unexpanded.xpm

	* e-cell-tree.c (ect_enter_edit): defer to subcell's view.
	(ect_leave_edit): defer to subcell's view.
	(visible_depth_of_node): visual depth, taking into account that
	the root node of the model might not be displayed.
	(offset_of_node): return the offset used to shift the subcell
	over.
	(ect_draw): don't draw vertical lines if we're the leftmode node
	(a visual root node).  also, don't shift x2 by the subcell offset,
	so we get ellipses like we're supposed to.
	(ect_event): remove GDK_BUTTON_RELEASE from the list of events
	that we care about.

	* e-tree-example-1.c: lots of changes, a more dynamic UI so we can
	test tree model api stuff.

	* e-tree-gnode.c, e-tree-gnode.c: removed files, since their guts
	have been rolled into e-tree-model.c

	* e-tree-model.c, e-tree-model.h: substantially changed.  too much
	to really describe here.  this should really be considered the
	first revision of these files :)

	* e-tree-simple.c, e-tree-simple.h: analogous to e-table-simple, a
	subclass that allows the use of function pointers.

svn path=/trunk/; revision=3519
2000-06-11 04:20:56 +00:00
86e45230bd Small syntactic changes.
2000-06-11  Christopher James Lahey  <clahey@helixcode.com>

	* e-table-model.c: Small syntactic changes.

	* e-table.c: Moved the table header into the scrolled view.

svn path=/trunk/; revision=3517
2000-06-11 04:08:59 +00:00
695591dd93 Make ETable use EScrollFrame instead of GtkScrolledWindow.
svn path=/trunk/; revision=3515
2000-06-10 22:48:14 +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