Commit Graph

44 Commits

Author SHA1 Message Date
e16e25daa7 Changed these to match the new ETable system.
2000-10-11  Christopher James Lahey  <clahey@helixcode.com>

	* tests/test-tree-1.c, tests/test-tree-2.c, tests/test-tree-3.c:
	Changed these to match the new ETable system.

	* gal/Makefile.am: Added e-table-column-specification.lo,
	e-table-extras.lo, e-table-specification.lo, and e-table-state.lo.

From gal/e-table/ChangeLog:

2000-10-11  Christopher James Lahey  <clahey@helixcode.com>

	* Makefile.am: Added e-table-column-specification.c,
	e-table-column-specification.h, e-table-extras.c,
	e-table-extras.h, e-table-specification.c,
	e-table-specification.h, e-table-state.c, and e-table-state.h.
	Removed some duplicated .h files.

	* e-cell-tree.c: Ref, sink, and unref the subcell instead of destroying
	it when done.

	* e-table-column-specification.c, e-table-column-specification.h:
	New class which describes a column without having a table get
	instantiated.

	* e-table-config.c: Changed get_specification to get_state to get
	this to compile.

	* e-table-defines.h, e-table-item.h: Moved the definition of
	ETableCursorMode from e-table-item.h to e-table-defines.h.

	* e-table-extras.c, e-table-extras.h: New class which acts as a
	set of 3 hash tables.  All from char * and to alternately, ECells,
	GCompareFuncs, and GdkPxibufs.

	* e-table-scrolled.c, e-table-scrolled.h: Changed this to match
	the new ETable function declarations.

	* e-table-sort-info.c, e-table-sort-info.h: Added functions for
	saving to and loading from xml.

	* e-table-specification.c, e-table-specification.h: New class
	which describes a table without having to instantiate it.

	* e-table-state.c, e-table-state.h: New class which describes the
	state of a table without having to instantiate the table.

	* e-table.c, e-table.h: Changed this to accept both a state and a
	specification instead of just a specification.  You then save only
	the state.  The specification stays exactly the same.  Also, you
	no longer need to pass in an ETableHeader.  Most of the
	information contained in the ETableHeader are in the
	specification.  However you may need to translate some of the
	strings in the specification to objects.  If you need anything
	other than the builtin choices, you need to create an ETableExtras
	and pass it in.

	* e-tree-model.c: Removed an unused variable.

svn path=/trunk/; revision=5837
2000-10-11 08:16:37 +00:00
3012f7b1f2 Removed the assertion that there must be at least 1 column. No way to
2000-10-06  Not Zed  <NotZed@HelixCode.com>

        * e-table-item.c (eti_header_structure_changed): Removed the
        assertion that there must be at least 1 column.  No way to remove
        all columns otherwise (which the header allows).

        * e-table.c (et_xml_config_header): Reconfigure header based on
        xml nodes for header.
        (et_real_set_specification): Just configure the header only, dont
        try to recreate everything.

2000-10-05  Not Zed  <NotZed@HelixCode.com>

        * e-table-scrolled.c (e_table_scrolled_set_specification): Set the
        spec on a scrolled etable.
        (e_table_scrolled_load_specification): Likewise for load.

        * e-table.c (et_real_set_specification): Allow you to set the
        specification after the widget was created.
        (et_real_construct): Changed to use et_real_set_specification to
        set the spec.
        (e_table_load_specification): New frunction, load the
        speficication from a specific file.
        (e_table_set_specification): NEw function to set the specification
        from a string.

svn path=/trunk/; revision=5795
2000-10-09 12:24:54 +00:00
60b04c2ac5 Select all elements of the etable.
2000-10-04  Jeffrey Stedfast  <fejj@helixcode.com>

	* e-table-selection-model.c (e_table_selection_model_select_all):
	Select all elements of the etable.
	(e_table_selection_model_invert_selection): Invert the current
	selection.

	* e-table.c (e_table_select_all): New convenience function to
	select all elements in an e-table.
	(e_table_invert_selection): New convenience function to invert the
	current selection in an e-table.

svn path=/trunk/; revision=5719
2000-10-04 21:40:08 +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
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
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
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
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
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
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
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
384b3e38f2 New files for doing a selection model. Not finished yet and thus not in
2000-07-25  Christopher James Lahey  <clahey@helixcode.com>

	* e-table-selection-model.c, e-table-selection-model.h: New files
	for doing a selection model.  Not finished yet and thus not in
	Makefile.am.

	* e-table.c, e-table.h: Renamed the new dnd signals so that they
	won't conflict with the widget signals.

svn path=/trunk/; revision=4326
2000-07-25 20:05:29 +00:00
126807f8aa Implemented some of the drag & drop code. Drops all report as being on row
2000-07-25  Christopher James Lahey  <clahey@helixcode.com>

	* e-table.c, e-table.h: Implemented some of the drag & drop code.
	Drops all report as being on row 0, col 0.  Also, automatic drags
	don't set the row and column being dragged from.

svn path=/trunk/; revision=4312
2000-07-25 08:20:21 +00:00
161076affa Added some unused declarations for drag and drop work.
2000-07-21  Christopher James Lahey  <clahey@helixcode.com>

	* e-table.h: Added some unused declarations for drag and drop
	work.

svn path=/trunk/; revision=4267
2000-07-21 20:48:43 +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
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
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
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
56f9196ac4 Handle row_inserted and row_deleted signals properly.
2000-05-07  Christopher James Lahey  <clahey@helixcode.com>

	* e-table-item.c, e-table-item.h, e-table.c, e-table.h: Handle
	row_inserted and row_deleted signals properly.

	* e-table-model.c, e-table-model.h: Created the row_inserted and
	row_deleted signals.

	* e-table-sorted-variable.c, e-table-subset-variable.c: Emit the
	row_inserted and row_deleted signals as appropriate.

svn path=/trunk/; revision=2879
2000-05-07 20:49:02 +00:00
eb5dc08dc9 Made this more reentrant.
2000-04-30  Christopher James Lahey  <clahey@helixcode.com>

	* e-table-header-item.c: Made this more reentrant.

	* e-table-sorted-variable.c, e-table-sorted-variable.h: Does a
	proper resort when the sorting info changes.

	* e-table.c, e-table.h: Made it so that ETable doesn't destroy and
	recreate the entire table when sorting info changes.

svn path=/trunk/; revision=2704
2000-05-01 04:01:05 +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
d870ec752c Switch the parent object to be a GtkTable. (et_real_construct): apply
2000-04-14  Miguel de Icaza  <miguel@gnu.org>

	* e-table.c, e-table.h: Switch the parent object to be a GtkTable.
	(et_real_construct): apply massaging and some loving action to
	make the thing behave as a GtkTable.
	(e_table_init): More love.

svn path=/trunk/; revision=2431
2000-04-14 19:46:55 +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
8078ec7c1f Add so I can go to the chillout hack room
svn path=/trunk/; revision=2264
2000-03-30 22:50:40 +00:00
e3219d0bb2 Fix nasty rendering bugs,
Implement bbox calcs for e-tabel-item
Clean style lots

svn path=/trunk/; revision=2194
2000-03-27 21:28:57 +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
3de981ec78 Added support for the sorting info. The Etable creates a sort_info object,
2000-03-05  Christopher James Lahey  <clahey@helixcode.com>

        * e-table.c, e-table.h: Added support for the sorting info.  The
        Etable creates a sort_info object, and then connects to the
        signals to rearrange the rows when the sort_info changes.  It also
        passes the info object to the ETableHeaderItem.

        * e-table-model.c: Fixed a typo where ETableModel was written as
        ETableModle.

        * e-table-header.c, e-table-header.h: Added some code for sorting
        here, but it's not used.  I don't think we want this code, but I
        wanted to check it in at least once so that it's not lost.

        * e-table-header-item.c, e-table-header-item.h: Added a
        "sort_info" argument to ETableHeaderItem.  Added display of
        current sort settings.  Added support for clicking to change the
        sort settings.

        * e-table-col.h: E_TABLE_COL_ARROW_NONE is marked as being = 0
        since this is required in other places.  (I think C defines this
        as being the case, but it's good to have the = 0 there so that
        it's obvious that it has to be first.)

        * TODO: Mark sorting as done.

        * e-table-sort-info.c, e-table-sort-info.h: New files for
        containing the xml grouping/sorting information and for sending
        signals on that information.

        * Makefile.am: Added e-table-sort-info.c and e-table-sort-info.h.

svn path=/trunk/; revision=2060
2000-03-05 23:15:14 +00:00
626f63df0b Added a bunch of stuff to the TODO list. Put +s before a few of the items
2000-03-04  Christopher James Lahey  <clahey@helixcode.com>

        * TODO: Added a bunch of stuff to the TODO list.  Put +s before a
        few of the items that are finished.

        * test-table.c: Add a button to save the spec file.

        * e-table.c, e-table.h: Add loading configurations from files as
        well as the ability to get the current configuration out of the
        widget.

svn path=/trunk/; revision=2025
2000-03-03 20:05:57 +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
f55c64565c Ok, the restructuring of ETableItem to compute its size without hacks is
Ok, the restructuring of ETableItem to compute its size without hacks is
in now.  I am feeling better now.

1999-12-30  Miguel de Icaza  <miguel@gnu.org>

	* e-table-item.c (eti_attach_cell_views): New routine, creates the
	cell views.
	(eti_detach_cell_views): Detaches the cell_views from the
	ETableItem.
	(eti_realize_cell_views, eti_unrealize_cell_views): Simplified to
	just do realize/unrealize notification.
	(eti_add_table_model): Only attach the cells when we have both the
	table model and the header model.

	* e-cell.h (ECellClass): Added two new methods: new_view and
	kill_view which drive the view process (instead of putting that on
	realize/unrealize).

	* e-cell.c: Adapt the code to use the new scheme for view
	instantiation.

	* e-cell-text.c, e-cell-toggle.c: Adapted to the new class
	changes.

svn path=/trunk/; revision=1523
1999-12-31 02:23:37 +00:00
f14fd12551 Sync, does not work, dont try it, just backing up -miguel
svn path=/trunk/; revision=1521
1999-12-28 06:09:02 +00:00
fa895ed8e1 More work. We now have the basics for nesting working, now we need all the
More work.  We now have the basics for nesting working, now we need all
the interactions done properly.

I want to use a new GnomeCanvasItem for the nesting parent as well.

DnD will have to be done with our own protocol to provide all the feedback
we want to provide.

Miguel

svn path=/trunk/; revision=1481
1999-12-12 09:20:46 +00:00
afbee2366a Stuff
svn path=/trunk/; revision=1378
1999-11-10 07:31:21 +00:00