Commit Graph

81 Commits

Author SHA1 Message Date
bc0d854e93 Removed some unused code.
2000-03-03  Christopher James Lahey  <clahey@helixcode.com>

        * e-table.c: Removed some unused code.

        * e-table-header-item.c, e-table-header-item.h: Removed the unused
        normal_cursor variable and object.

        * e-table-col.c: Maintain a reference count in the contained ECell.

svn path=/trunk/; revision=2024
2000-03-03 20:05:56 +00:00
799d7f54fd Various building fixes. At least, now it builds for me.
svn path=/trunk/; revision=2007
2000-03-02 00:09:45 +00:00
832150b0dd Test frozen columns
2000-02-29  Christopher James Lahey  <clahey@helixcode.com>

	* test-table.c: Test frozen columns

	* e-table.c: Make frozen columns available through the xml file.

	* e-table-header.c, e-table-header.h, e-table-header-item.c: Added
	frozen columns API to let you specify some number of leading
	columns as undraggable.

	* Makefile.am: Add e-table-example-1.c and e-table-example-2.c.

	* e-table-example-1.c, e-table-example-2.c: New files.  A couple
	of examples of ETable use.

svn path=/trunk/; revision=1993
2000-02-29 21:07:06 +00:00
ce16b05aed Fixed references to libutil.a -> libeutil.la
svn path=/trunk/; revision=1983
2000-02-28 18:54:40 +00:00
e047685e4a Fixed a couple of crash bugs.
2000-02-28  Christopher James Lahey  <clahey@helixcode.com>

        * e-table-header-item.c, e-table-header.c: Fixed a couple of crash
        bugs.

svn path=/trunk/; revision=1975
2000-02-28 14:33:11 +00:00
323b824b84 Made the E table item redraw properly.
2000-02-25  Christopher James Lahey  <clahey@helixcode.com>

        * e-table-item.c: Made the E table item redraw properly.

        * e-table-group-container.c: Added handling to distinguish between
        n items and 1 item.  Got rid of a crash due to an abandoned timeout
        callback.

svn path=/trunk/; revision=1933
2000-02-25 05:53:54 +00:00
7f601b6db6 Made carriage return stop editting instead of inserting a carriage return.
2000-02-24  Christopher James Lahey  <clahey@helixcode.com>

	* e-cell-text.c: Made carriage return stop editting instead of
	inserting a carriage return.

svn path=/trunk/; revision=1932
2000-02-25 04:43:11 +00:00
c2ffbbece7 Added e_xml_get_integer_prop_by_name.
2000-02-24  Christopher James Lahey  <clahey@helixcode.com>

        * e-util/e-xml-utils.c, e-util/e-xml-utils.h: Added
        e_xml_get_integer_prop_by_name.

        * e-util/Makefile.am: Added e-util.c.

        * e-util/e-util.h: Added e-util.c functions.

        * e-util/e-util.c: New file for compare functions

from mail:

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

        * message-list.c: Changed to match new e_table_simple interface.

svn path=/trunk/; revision=1931
2000-02-25 04:28:14 +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
8fb12c9538 Made keyboard focus navigation work across groups.
2000-02-24  Christopher James Lahey  <clahey@helixcode.com>

        * e-table-item.c: Made keyboard focus navigation work across
        groups.

        * e-table-header.c: Made e_table_header_col_diff not crash if you
        give it a column less than 0 (it truncates negative column values
        to 0.)

        * e-table-group.c, e-table-group.h: Added e_table_group_get_header
        to get the ETableHeader for this ETableGroup.

        * e-table-group-container.c: Made shift tab work.

svn path=/trunk/; revision=1917
2000-02-24 08:23:00 +00:00
71c2274c7a Made changing focus work.
2000-02-24  Christopher James Lahey  <clahey@helixcode.com>

        * e-table-item.c: Made changing focus work.

svn path=/trunk/; revision=1916
2000-02-24 07:56:02 +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
aa6de37d85 Include <string.h>
2000-02-18  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* e-table-header.c: Include <string.h>

svn path=/trunk/; revision=1842
2000-02-18 22:54:49 +00:00
c94e9ff659 Add EXTRA_GNOME_CFLAGS to INCLUDES>
2000-02-18  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* Makefile.am (INCLUDES): Add EXTRA_GNOME_CFLAGS to INCLUDES>

svn path=/trunk/; revision=1841
2000-02-18 22:48:38 +00:00
514b2de963 make <alloca.h> inclusion conditional on HAVE_ALLOCA_H
svn path=/trunk/; revision=1820
2000-02-17 04:24:56 +00:00
ec023d0744 fix library ordering on link line
svn path=/trunk/; revision=1817
2000-02-17 04:22:33 +00:00
e07a05c550 Check the ethi is actually the one being dragged. Prevents crashes when
2000-02-12  Iain Holmes  <ih@csd.abdn.ac.uk>

	* e-table-header-item.c (ethi_drag_motion): Check the ethi is actually
	the one being dragged. Prevents crashes when trying to drag headeritems
	and there are multiple headeritems on the same canvas.
	(ethi_drag_end): Same.
	(ethi_drag_drop): Same.
	(ethi_drag_leave): Same.

svn path=/trunk/; revision=1745
2000-02-12 20:36:48 +00:00
4ddf8af33a Added test of sort arrows.
2000-02-11  Christopher James Lahey  <clahey@helixcode.com>

        * test-check.c: Added test of sort arrows.

        * e-table-col.h, e-table-col.c: Added sort arrows for column
        headers (It doesn't actually sort.  It just displays the arrows.)

        * e-table-header-item.c: Added display of arrows.

svn path=/trunk/; revision=1743
2000-02-12 04:13:14 +00:00
04bb0a4fb0 Test column header image.
2000-02-11  Christopher James Lahey  <clahey@helixcode.com>

        * clip.png: Test column header image.

        * test-check.c: Test pixbuf column headers.

        * e-table-col.h, e-table-col.c: Added pixbufs for column headers.

        * e-table-header-item.c (draw_button): Draw pixbuf column headers properly.

svn path=/trunk/; revision=1739
2000-02-12 00:27:22 +00:00
07d9ddab8e Add an editable argument to e_cell_text_new.
2000-02-11  Christopher James Lahey  <clahey@helixcode.com>

        * e-cell-text.h, e-cell-text.c: Add an editable argument to
        e_cell_text_new.

        * test-table.c, test-cols.c, test-check.c: Set the editable
        argument to e_cell_text_new.

svn path=/trunk/; revision=1738
2000-02-11 23:53:07 +00:00
4a25f612c0 Added reordering of columns.
2000-02-11  Christopher James Lahey  <clahey@helixcode.com>

        * e-table-header-item.h, e-table-header-item.c: Added reordering
        of columns.

        * e-table-header.c: Fixed a couple of bugs in the move column and
        remove column functions.

svn path=/trunk/; revision=1736
2000-02-11 22:08:09 +00:00
4a7411c370 Made space around text look right. Added a blinking cursor.
2000-02-11  Christopher James Lahey  <clahey@helixcode.com>

        * e-cell-text.c: Made space around text look right.  Added a
        blinking cursor.

svn path=/trunk/; revision=1735
2000-02-11 21:57:35 +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
11a8bba27e Handle button releases properly.
2000-02-10  Christopher James Lahey  <clahey@helixcode.com>

        * e-cell-text.c: Handle button releases properly.

        * e-table-header-item.c (ethi_start_drag): Added a drag icon.

svn path=/trunk/; revision=1724
2000-02-10 12:05:01 +00:00
8c9cb1454e Tweaked e-cell-text. Added a white background and tweaked the borders.
2000-02-09  Christopher James Lahey  <clahey@helixcode.com>

        * e-cell-text.c: Tweaked e-cell-text.  Added a white background
        and tweaked the borders.

svn path=/trunk/; revision=1721
2000-02-10 02:50:08 +00:00
68d2387f39 Changes where e-text is included from.
2000-02-09  Christopher James Lahey  <clahey@helixcode.com>

        * Makefile.am: Changes where e-text is included from.

svn path=/trunk/; revision=1708
2000-02-09 12:33:07 +00:00
c02660b408 Fixed some motion event bugs. (incorrect x and y.)
2000-02-07  Christopher James Lahey  <clahey@helixcode.com>

        * e-table-item.c (eti_event): Fixed some motion event
        bugs. (incorrect x and y.)

        * Makefile.am: Added includes for dependencies in
        evolution/widgets/libevolutionwidgets.a

        * e-cell-text.h, e-cell-text.c: Completely revamped using code
        from e-text.c and e-text.h.

svn path=/trunk/; revision=1692
2000-02-08 03:29:49 +00:00
8287590461 Sync for Chris to use
svn path=/trunk/; revision=1689
2000-02-08 01:43:02 +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
6168e99c7a Add data field back in.
2000-01-30  Miguel de Icaza  <miguel@gnu.org>

	* e-table-simple.c (e_table_simple_new): Add data field back in.

svn path=/trunk/; revision=1653
2000-01-29 12:10:58 +00:00
8e431aec55 Work with builddir != srcdir
* composer/Makefile.am, widgets/e-table/Makefile.am: Work with
builddir != srcdir

svn path=/trunk/; revision=1538
2000-01-06 19:03:52 +00:00
94a9228109 Compilation touchups -miguel
svn path=/trunk/; revision=1537
2000-01-06 05:59:35 +00:00
ed4e8afecd Lots of reorganization to get the Evolution shell to begin its life. It
Lots of reorganization to get the Evolution shell to begin its life.
It also includes a new evolution widget from Damon.

Miguel.

svn path=/trunk/; revision=1536
2000-01-06 05:48:27 +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
c485df7554 added widgets/meeting-time-sel/Makefile
1999-12-19  Damon Chaplin  <damon@karuna.freeserve.co.uk>

        * configure.in (AC_OUTPUT): added widgets/meeting-time-sel/Makefile

In widgets directory:

1999-12-19  Damon Chaplin  <damon@karuna.freeserve.co.uk>

        * Makefile.am (SUBDIRS): created SUBDIRS with meeting-time-sel.

        * meeting-time-sel/Makefile.am:
        * meeting-time-sel/.cvsignore:
        * meeting-time-sel/e-meeting-time-sel.h:
        * meeting-time-sel/e-meeting-time-sel.c:
        * meeting-time-sel/e-meeting-time-sel-item.h:
        * meeting-time-sel/e-meeting-time-sel-item.c:
        * meeting-time-sel/e-meeting-time-sel-list-item.h:
        * meeting-time-sel/e-meeting-time-sel-list-item.c:
        * meeting-time-sel/e-meeting-time-sel-mail.xpm:
        * meeting-time-sel/e-meeting-time-sel-no-mail.xpm:
        * meeting-time-sel/test-meeting-time-sel.c: new files implementing
        the meeting time selector.

svn path=/trunk/; revision=1505
1999-12-19 21:13:19 +00:00
9bd34cd862 Fix before trip
svn path=/trunk/; revision=1485
1999-12-13 07:57:31 +00:00
df80388fd9 Works with GnomeCanvasGroups -miguel
svn path=/trunk/; revision=1484
1999-12-13 04:39:18 +00:00
5ab1dcb77f Missing file
svn path=/trunk/; revision=1482
1999-12-12 16:59:33 +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
863f8aa634 Add missing files
svn path=/trunk/; revision=1480
1999-12-10 19:20:39 +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
50006218b6 fixed api.
1999-12-02  Miguel de Icaza  <miguel@gnu.org>

	* e-table-header.c (e_table_header_index): fixed api.

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

	* test-cols.c (multi_cols_test): Update to simplified API.
	* test-check.c (check_test): ditto
	* test-table.c (table_browser_test): ditto

	* e-table-simple.c (e_table_simple_class_init): Kill column_name method.

	* e-table-model.h: Kill column_name method.

	* e-table-col.c (e_table_col_new): Instead of using a column name,
	use a column index.

svn path=/trunk/; revision=1459
1999-12-03 08:02:36 +00:00
5dc6462368 Fix it correctly -miguel
svn path=/trunk/; revision=1452
1999-12-01 18:36:50 +00:00
f0da5ba3d0 Keep track of the originally allocated piece of code.
1999-12-01  Miguel de Icaza  <miguel@gnu.org>

	* e-cell-text.c (ect_draw): Keep track of the originally allocated
	piece of code.

svn path=/trunk/; revision=1451
1999-12-01 18:28:27 +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
5dd5e9ffe2 New images, the previous ones sucked. Thanks to Mark for his help
svn path=/trunk/; revision=1449
1999-12-01 06:13:15 +00:00
710596ff99 Add missing files
svn path=/trunk/; revision=1448
1999-12-01 05:48:00 +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
0177093e77 New cell-toggle stuff compiles -miguel
svn path=/trunk/; revision=1446
1999-11-30 09:34:50 +00:00