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-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 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-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-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-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-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-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-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-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-08 Christopher James Lahey <clahey@helixcode.com>
* e-table-field-chooser-dialog.c, e-table-field-chooser-dialog.h,
e-table-field-chooser-item.c, e-table-field-chooser.c,
e-table-field-chooser.glade, e-table-field-chooser.h,
e-table-header-item.c, e-table.c: More work on the Field Chooser.
Not quite done yet.
svn path=/trunk/; revision=3475
2000-06-01 Christopher James Lahey <clahey@helixcode.com>
* e-table.c: Copy and paste error.
* e-table-item.c: Mixed up parity on eti->editing.
svn path=/trunk/; revision=3368
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-25 Christopher James Lahey <clahey@helixcode.com>
* e-table-header.c: Account for extra pixel at right end of
ETable.
* e-table-item.c: Make grid less intrusive.
* e-table.c: Make scrollbars disappear when appropriate.
svn path=/trunk/; revision=3206
2000-05-19 Christopher James Lahey <clahey@helixcode.com>
From a patch by Iain Holmes <ih@csd.abdn.ac.uk>
* e-table-config.c, e-table.c: Fixed getting text content from a
node in the case of a non string based content field in the xml
library.
svn path=/trunk/; revision=3133
2000-05-16 Christopher James Lahey <clahey@helixcode.com>
* e-table-sorted-variable.c: Changed sorting to be at priority
level 30.
* e-table.c: Changed rebuild of the table to be at priority level
20. This gives it an advantage over pretty much everything,
including e-table-sorted-variable sorting and canvas redraw.
svn path=/trunk/; revision=3082
2000-05-14 Christopher James Lahey <clahey@helixcode.com>
* Implemented the feature where the ETable columns automatically
fill the given space.
* e-cell-text.c, e-cell-text.h: Moved #include
e-text-event-processor.h from the .h to the .c.
* e-table-col.c, e-table-col.h: Added an expansion variable, and
made it so that width isn't set by the programmer but instead by
the e-table-header.
* e-table-example-1.c, e-table-example-2.c, e-table-size-test.c,
test-check.c, test-cols.c, test-table.c: Fixed to handle new
ETable column resizing.
* 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: Fixed these to do
a proper canvas reflow/update loop. Changed them to take a
minimum width and return a width and a height.
* e-table-header-item.c, e-table-header-item.h: Made this so that
it depends on e-table-header.c for deciding the actual size of
columns during resize (it was making incorrect decisions on its
own.)
* e-table-header.c, e-table-header.h: Changed this to make sure
that the sum of the widths of the columns was always as close as
possible to the width of the window. This is done by taking a
full width and having each of the columns have an "expansion"
field. This field is what makes each column have approximately
the same portion of its part of the screen that it used to.
* e-table.c: Changed this to set the width on the ETableHeader as
well as set the proper minimum width on the ETableGroup and get
the width and height it reports.
From addressbook/ChangeLog
2000-05-14 Christopher James Lahey <clahey@helixcode.com>
* backend/ebook/Makefile.am: Added libeutil for e-card's support
for categories.
* backend/ebook/e-card-list.c, backend/ebook/e-card-list.h: Added
a function to get the length.
* backend/ebook/e-card.c, backend/ebook/e-card.h: Added categories
support (accessible either as "categories" or "category_list".)
* contact-editor/Makefile.am: Added e-table and all of the
categories files.
* contact-editor/categories.glade,
contact-editor/categories-strings.h,
contact-editor/e-contact-editor-categories.c,
contact-editor/e-contact-editor-categories.h:
* contact-editor/contact-editor.glade,
contact-editor/e-contact-editor-strings.h: Rearranged this dialog.
* contact-editor/e-contact-editor.c: Rearranged dialog a bit.
Added opening of categories dialog.
* gui/component/Makefile.am: Rearranged libraries so that
libetable would be available for the contact editor categories
dialog.
* gui/component/addressbook.c: Fix for new ETable resizing. Make
contact editor dialog resizable.
* gui/minicard/Makefile.am: Added libetable contact editor
categories dialog.
* gui/minicard/e-minicard.c: Make contact editor dialog resizable.
From mail/ChangeLog
2000-05-14 Christopher James Lahey <clahey@helixcode.com>
* message-list.c: Updated to work with new ETable resizing.
svn path=/trunk/; revision=3027
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-06 Christopher James Lahey <clahey@helixcode.com>
* e-table-group-container.c, e-table.c: Killed some warnings.
svn path=/trunk/; revision=2836
2000-05-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: Add an e_table_group_add_all
function and implement it in the different ETableGroup classes.
* e-table-sort-info.c: Make set_nth not call changed twice if it
needs to allocate more space.
* e-table-sorted-variable.c, e-table-subset-variable.c,
e-table-subset-variable.h: Add and implement an
e_table_subset_variable_add_all command.
* e-table.c: Use e_table_group_add_all as appropriate. Fix ETable
grouping xml to work if there is a text element at the bottom of
the grouping tree.
svn path=/trunk/; revision=2806
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-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-24 Christopher James Lahey <clahey@helixcode.com>
* widgets/e-text/e-text.c: Made the tooltip show up in the correct
place and configuration when using the "max_lines", "anchor"
(untested), or "justification" arguments.
From a patch by Iain Holmes <ih@csd.abdn.ac.uk>
* widgets/e-text/e-text-event-processor-emacs-like.c,
widget/e-text/e-text-event-processor-types.h,
widgets/e-text/e-text.c, widgets/e-text/e-text.h: Changed C-w and
C-y to control the X clipboard. Added double and triple click
events.
From widgets/e-table/:
2000-04-24 Christopher James Lahey <clahey@helixcode.com>
* e-table.c: Fixed some warnings.
svn path=/trunk/; revision=2581
2000-04-16 Anders Carlsson <andersca@gnu.org>
* e-table-item.c (eti_event): Propagate mouse wheel events upwards.
* e-table.c (et_real_construct): Use a GtkScrolledWindow here
instead of a GtkScrollbar, since it makes mouse wheel scrolling
much easier.
svn path=/trunk/; revision=2463
+ (search_entry_activated): New function. Gets called when the quick
+ search entry is called on to perform a search.
+ (make_quick_search_widget): New function; returns a "quick search"
+ widget.
+ (control_activate): During the construction of the toolbar, a
+ "quick search" widget is included.
+
+ * e-table.c (et_xml_to_header): sanity-check our parameters.
+ (et_grouping_xml_to_sort_info): same.
+ (et_real_construct): Bail if we couldn't get the children we
+ wanted.
svn path=/trunk/; revision=2455
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-10 Miguel de Icaza <miguel@gnu.org>
* e-table-header-item.c (ethi_drag_motion): Drop frozen count
support from here.
(ethi_start_drag): ditto.
* e-table-header.h: Kill frozen_count.
svn path=/trunk/; revision=2385
2000-04-08 Christopher James Lahey <clahey@helixcode.com>
* e-table.c: Separated some functions into an xml bit and a
generic bit.
svn path=/trunk/; revision=2346
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-03-21 Christopher James Lahey <clahey@helixcode.com>
* e-table.c: Make rectangles resize properly when receiving the
"model_changed" signal.
svn path=/trunk/; revision=2135
* 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-12 Christopher James Lahey <clahey@helixcode.com>
* widgets/Makefile.am: Rearranged SUBDIRS for dependencies.
* widgets/e-text/e-text-model.c, widgets/e-text-model.h: New
object which stores a piece of text data. All methods are
virtual.
* widgets/e-text/e-text.c, widgets/e-text/e-text.h: Modified this
to use an ETextModel for its data.
* widgets/e-text/Makefile.am: Added e-text-model.c and e-text-model.h.
* widgets/e-minicard/test-minicard-label.c: Made this work again.
* widgets/e-minicard/e-minicard.c,
widgets/e-minicard/e-minicard.h: Made this use an ETableModel to
get its data.
* widgets/e-minicard/e-minicard-label.c,
widgets/e-minicard/e-minicard-label.h: Added the ability to set
the text model used for the contained text widget.
* widgets/e-minicard/Makefile.am: Added e-table since e-minicard
is now dependent on an e-table-model for its data.
* e-util/e-canvas.c, e-util/e-canvas.h: Fixed some bugs here to
speed up reflow and to make it fail less often.
* addressbook/demo, addressbook/demo/.cvsignore,
addressbook/demo/Makefile.am, addressbook/demo/demo.c,
addressbook/demo/spec: A new program to test ETable and EMinicard
integration.
* configure.in: Added addressbook/demo/Makefile.
* addressbook/Makefile.am: Added the demo/ subdirectory.
in widgets/e-table/:
2000-03-12 Christopher James Lahey <clahey@helixcode.com>
* e-table.c: Made this use an ECanvas. Fixed a bug where
e_table_new_from_spec_file was calling e_table_construct instead
of e_table_construct_from_spec_file.
* e-table-item.c, e-table-header-item.c, e-table-column-item.c:
Switched these to use GTK_TYPE_OBJECT and GTK_VALUE_OBJECT instead
of GTK_TYPE_POINTER and GTK_TYPE_OBJECT.
* e-cell-text.c: Got rid of a crashing bug.
* e-table-text-model.c, e-table-text-model.h: A new object which
is an e-text-model which uses an e-table-model for its data.
* Makefile.am: Added e-table-text-model.c and
e-table-text-model.h.
* .cvsignore: Added table-example-1 and table-example-2.
svn path=/trunk/; revision=2101
2000-03-08 Christopher James Lahey <clahey@helixcode.com>
* e-table.c: Changed the destroy function to disconnect from
signals before unrefing the objects the sinnals are on. Changed
the destroy function to match the objects and signal ids properly
in its disconnect section.
* e-table-item.c, e-table-item.h: Changed this to do follow the
canvas rules better.
* e-table-header-item.c, e-table-header-item.h: Made
ETableHeaderItem connect to the "sort_info_changed" on its
ETableSortInfo instead of just manually redrawing itself. Fixed
the update function a bit to follow the canvas rules a bit better.
svn path=/trunk/; revision=2087