Commit Graph

24 Commits

Author SHA1 Message Date
a191834cb1 Final un-bit rotting. Now actually works.
svn path=/trunk/; revision=13504
2001-10-08 18:39:28 +00:00
7d5b83061f Partial bit-rot fight. Sample still does not work.
svn path=/trunk/; revision=13498
2001-10-08 14:17:54 +00:00
a3de274f7c Moved files, fixed header files and paths - Federico
svn path=/trunk/; revision=5513
2000-09-19 22:57:58 +00:00
22f72cc08e Fix some crashes Make double clicking on the header dividers automatically
Fix some crashes
Make double clicking on the header dividers automatically size the header
to it's best fit.
When dragging onto the header check the dragged item is a header object.
Check the column is resizeable before setting the cursor to <->
Use the font and themes to draw the table and items.

svn path=/trunk/; revision=5438
2000-09-15 00:08:06 +00:00
0d3051708e Add nice assertion.
2000-02-11  Miguel de Icaza  <miguel@gnu.org>

	* e-table-item.c (eti_header_structure_changed): Add nice
	assertion.

svn path=/trunk/; revision=1733
2000-02-11 12:19:27 +00:00
99d71d1132 Setup the scroll region of the table canvas on size allocation.
2000-02-07  Miguel de Icaza  <miguel@gnu.org>

	* e-table.c (e_table_setup_table): Setup the scroll region of the
	table canvas on size allocation.
	(e_table_canvas_realize): Do not set the scrollregion here.
	(e_table_canvas_init): Move root initialization here.

svn path=/trunk/; revision=1683
2000-02-07 13:08:33 +00:00
94a9228109 Compilation touchups -miguel
svn path=/trunk/; revision=1537
2000-01-06 05:59:35 +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
9bd34cd862 Fix before trip
svn path=/trunk/; revision=1485
1999-12-13 07:57:31 +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
48618eb6eb fix this routine.
1999-12-09  Miguel de Icaza  <miguel@gnu.org>

	* e-table-header.c (e_table_header_col_diff): fix this routine.

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

	* e-table-header-item.c (ethi_event): Started drag and drop
	support.

	* e-table-item.c (eti_table_model_changed): The columns are
	controled by the Header, not by the TableModel.

	* e-table-header-item.c (ethi_draw): Fixed redraw logic to support
	arbitrary header positioning.

	* e-cell.h: Revamped e-cell interface.  We now provide the model
	column and the view column to all methods (so that the methods can
	talk to the view and to the model at the same time).

	* e-table-item.c: Update to new API
	* e-cell-test.c: Update to new API

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

	* e-cell.c (e_cell_class_init): Provide emtpy methods for
	enter_edit, and leave_edit.

	* e-table-item.c: Killed draw cell.
	(eti_draw): Perform column mapping here.
	(e_table_item_leave_edit): ditto.
	(e_table_item_enter_edit): ditto.
	(eti_event): ditto.

svn path=/trunk/; revision=1478
1999-12-10 07:36:51 +00:00
9c0f9f1264 Removed change cursor from here.
1999-12-01  Miguel de Icaza  <miguel@gnu.org>

	* e-table-header-item.c (ethi_unrealize): Removed change cursor
	from here.

	* e-cell-text.c (ect_draw): Memory leak fix.

	* table-test.c (main): Enhance the demo to load sample.table
	automatically, to get memprof working.

	* e-table-header.c (eth_do_remove): Take an argument: do -remove.

	* e-table-header.c (e_table_header_add_column): Sink ETableCol to
	own the object.

	* e-table-col.h: Made ETableCol a GtkObject to make reference
	counting the lifecycle method for these objects.

	* e-table-col.c (e_table_col_destroy): New API call.

	* e-table-subset.c (e_table_subset_get_toplevel): New API call.

svn path=/trunk/; revision=1450
1999-12-01 18:18:35 +00:00
8fcf8db2b2 This one derives from e-cell-toggle.
1999-11-30  Miguel de Icaza  <miguel@gnu.org>

	* e-cell-checkbox.c (e_cell_checkbox_new): This one derives from
	e-cell-toggle.

	* check-emtpy.xpm, check-filled.xpm: new files.

	* e-cell-toggle.c (etog_draw): Paint in white.
	If we have transparency enabled, do the nice alpha computation.

	* test-table.c, test-cols.c: new files;  They implement the split
	tests.

svn path=/trunk/; revision=1447
1999-12-01 05:45:51 +00:00
c50636dba3 New file. Implement a multi-state image toggle cell object.
1999-11-29  Miguel de Icaza  <miguel@gnu.org>

	* e-cell-toggle.c, e-cell-toggle.h: New file.  Implement a
	multi-state image toggle cell object.

	* e-cell-text.c (ect_leave_edit): Handle the case of us calling
	leave edit manually.
	(ect_stop_editing): Leave manually editing here.
	(ect_draw): Add one pixel to the border for left and right;
	Handle off-screen cursor (must be improved).
	(ect_edit_select_all): New function.
	(ect_event): Select all text on editing start

	* e-table-item.c (eti_event): Map mouse events and dispatch them.
	(eti_event): Add spreadsheet mode for editing; Enter editing only
	with visual characters;
	Leave editing mode when a different row has been selected.
	(eti_get_height): Fix the computation for this; Fix logic for the
	length_threshold.

	(eti_draw): Add borders on all sides of the box;
	Only draw focus if the cell is not being edited.

svn path=/trunk/; revision=1445
1999-11-30 05:50:54 +00:00
1a0d4df957 New methods; They implement editing.
1999-11-28  Miguel de Icaza  <miguel@gnu.org>

	* e-cell-text.c (ect_enter_edit, ect_leave_edit): New methods;
	They implement editing.

	* e-cell.h: new methods: enter_edit, leave_edit

	* e-table-model.h (set_value_at): make val argument const.

	* e-table-simple.c (simple_set_value_at): Make value argument const;

	* e-table-item.c (eti_set_arg): Add new mode: draw_focus;

svn path=/trunk/; revision=1442
1999-11-28 22:26:39 +00:00
8d75b6689b beginning of the keyboard navigation.
1999-11-27  Miguel de Icaza  <miguel@gnu.org>

	* e-table-item.c (eti_event): beginning of the keyboard navigation.

	* e-table-model.c (e_table_model_row_changed): new function.
	(e_table_model_cell_changed): new function.
	(e_table_model_class_init): New signals.

	* e-table-item.c (eti_request_region_redraw): x2, y2 offsets were
	wrong.
	(eti_select): Repaint selected region.
	(eti_request_region_redraw): Fix range.
	(eti_draw): Correct offset computation here.
	(e_table_item_class_init): New method: row_selection, handles the
	selection.

	Now it implement GTK_SELECTION_SINGLE and GTK_SELECTION_MULTIPLE.

	Focusing and selection should be correct now.

svn path=/trunk/; revision=1441
1999-11-28 03:12:22 +00:00
be9d0c05db More work.
More work.

I got a few offsets wrong;  Event handling is broken, but I am happier

Mmiguel.

svn path=/trunk/; revision=1440
1999-11-27 08:07:49 +00:00
465c8ae9a0 Compute height using the ecell methods here. (eti_get_height): new method
1999-11-26  Miguel de Icaza  <miguel@gnu.org>

	* e-table-item.c (eti_realize): Compute height using the ecell
	methods here.
	(eti_get_height): new method to compute dimensions.

	* e-cursors.c: use a different cursor.

	* e-table-model.h: kill height and row_height methods.

	* e-cell.c (ec_height): New method.

	* e-cell-text.c (ect_realize): Load the font from the canvas.
	(ect_draw): New color setup.
	Center in the row.
	(ect_height): Implement new method.

1999-11-26  Michael Meeks  <mmeeks@gnu.org>

	* ROADMAP.e-table: small spelling/typo fixes.

1999-11-25  Miguel de Icaza  <miguel@gnu.org>

	* e-table-item.c (eti_event): Work on mouse-button event

svn path=/trunk/; revision=1439
1999-11-26 19:25:02 +00:00
a04a846f41 It draws the data. WEEEEEEEEE! Miguel
svn path=/trunk/; revision=1435
1999-11-25 09:01:59 +00:00
385ccbd512 Realize cells.
1999-11-25  Miguel de Icaza  <miguel@gnu.org>

	* e-table-header-item.c (ethi_realize): Realize cells.

	* e-table-item.c (eti_header_dim_changed): redraw before and after.

	* e-table-header-item.c (ethi_event): Add continuous resizing.

1999-11-24  Miguel de Icaza  <miguel@gnu.org>

	* e-table-subset.h, e-table-subset.c: New files, used to implement
	subset tables.

	* e-table-sorted.h, e-table-sorted.c: Now they derive from
	e-table-subset.

	* e-cell.c, e-cell.h: realize method now return per view instance
	data.

svn path=/trunk/; revision=1434
1999-11-25 08:02:13 +00:00
77df46c366 Compute width, keep track of it. (ethi_add_table_header): Monitor changes
1999-11-20  Miguel de Icaza  <miguel@gnu.org>

	* e-table-header-item.c (ethi_set_arg): Compute width, keep track
	of it.
	(ethi_add_table_header): Monitor changes to the Header model;
	Queue updates.
	(ethi_draw): Fix the redraw logic here.

	* table-test.c (main): Change the sample code, so we can better
	debug this.

	* e-table-item.c (eti_header_structure_changed): Keep track of
	width;
	(eti_header_dim_changed): ditto.
	(eti_draw): Many redraw fixes.

svn path=/trunk/; revision=1425
1999-11-20 23:37:37 +00:00
794f39a5d6 More work -mig
svn path=/trunk/; revision=1420
1999-11-19 08:18:48 +00:00
5ba51e992d Add resizing capabilities.
1999-11-14  Miguel de Icaza  <miguel@gnu.org>

	* e-table-header-item.c (is_pointer_on_division): Add resizing
	capabilities.

	* e-table-sorted.c: Finish implementation.

1999-11-13  Miguel de Icaza  <miguel@gnu.org>

	* e-table-sorted.c: Implement e-table-sorted object.

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

	* e-table-header-item.c: Make the thing configurable.

	* e-table-header-item.h: Add font field, location, height.

svn path=/trunk/; revision=1388
1999-11-15 20:59:29 +00:00
43fd06f8ec More table work
svn path=/trunk/; revision=1383
1999-11-12 08:41:20 +00:00