Commit Graph

9 Commits

Author SHA1 Message Date
6a8d4951dc Changed e_table_selection_model_clear to e_selection_model_clear.
2001-02-27  Christopher James Lahey  <clahey@ximian.com>

	* gal/e-text/e-completion-view.c: Changed
	e_table_selection_model_clear to e_selection_model_clear.

	* tests/test-tree-3.c: Changed E_TABLE_CURSOR_LINE to
	E_CURSOR_LINE.

From gal/e-table/ChangeLog:

2001-02-27  Christopher James Lahey  <clahey@ximian.com>

	* e-table-click-to-add.c, e-table-group-container.c,
	e-table-group-container.h, e-table-group-leaf.c,
	e-table-group-leaf.h, e-table-item.c, e-table-item.h,
	e-table-specification.c, e-table-specification.h, e-table.c,
	e-table.h: Changed a lot of the ETableSelectionModels to
	ESelectionModels, a lot of the ETableSorters to ESorters, all the
	ETableCursorModes to ECursorModes, and all of the
	ETableForeachFuncs into EForeachFuncs.

	* e-table-defines.h: Moved ETableForeachFunc and ETableCursorMode
	to e-selection-model.h.

	* e-table-selection-model.c, e-table-selection-model.h: Made this
	a subclass of ESelectionModel which simple connects to an
	ETableModel.

	* e-table-sorter.c, e-table-sorter.h: Made this a subclass of
	ESorter so that implements the same semantics it used to.

svn path=/trunk/; revision=8422
2001-02-28 03:36:29 +00:00
5480b1b7bd From a patch submitted by Murray Cumming <Murray.Cumming@mybau.com>
2001-02-17  Christopher James Lahey  <clahey@ximian.com>

	From a patch submitted by Murray Cumming <Murray.Cumming@mybau.com>

	* e-cell-checkbox.h, e-cell-date.h, e-cell-number.h,
	e-cell-size.h, e-cell-text.h, e-cell-toggle.h, e-cell-tree.h,
	e-cell.h, e-table-click-to-add.h, e-table-col-dnd.h,
	e-table-col.h, e-table-column-specification.h,
	e-table-config-field.h, e-table-config.h, e-table-defines.h,
	e-table-extras.h, e-table-field-chooser-item.h,
	e-table-group-container.h, e-table-group-leaf.h, e-table-group.h,
	e-table-header-item.h, e-table-header-utils.h, e-table-header.h,
	e-table-item.h, e-table-model.h, e-table-one.h,
	e-table-selection-model.h, e-table-simple.h, e-table-sort-info.h,
	e-table-sorted-variable.h, e-table-sorted.h, e-table-sorter.h,
	e-table-specification.h, e-table-state.h,
	e-table-subset-variable.h, e-table-subset.h, e-table-tooltip.h,
	e-table-tree.h, e-tree-model.h, e-tree-simple.h,
	e-tree-sorted-variable.h: Added GNOME_DECLS.

svn path=/trunk/; revision=8265
2001-02-17 08:36:01 +00:00
da03d43325 Made the contained %ETableItem have cursor_mode as
2001-01-30  Christopher James Lahey  <clahey@helixcode.com>

	* e-table-click-to-add.c (etcta_event): Made the contained
	%ETableItem have cursor_mode as %E_TABLE_CURSOR_SPREADSHEET.

	* e-table-defines.h, e-table-item.c, e-table-specification.c:
	Added a new cursor mode E_TABLE_CURSOR_SPREADSHEET.  This is
	accessed using cursor_mode="spreadsheet" in your specification
	xml, as well as by the click_to_add item.  It is identical to
	E_TABLE_CURSOR_SIMPLE, except that tab goes to the next item in
	the table instead of to the next widget.

svn path=/trunk/; revision=7910
2001-01-30 11:37:34 +00:00
f70c74f371 Federico gets into pixel-perfect neurosis. Xmag is my best friend.
2000-12-01  Federico Mena Quintero  <federico@helixcode.com>

	Federico gets into pixel-perfect neurosis.  Xmag is my best friend.

	* e-table-item.c (eti_draw): Set the focus_gc stipple origin to
	match the upper-left corner of the focus rectangle.  This way
	focusing will look consistent even among rows/columns with odd
	pixel sizes.  Also, make the focus rectangle span the whole cell;
	there was one blank pixel column to the left of the rectangle.

	* e-table-header-utils.c: New file with utilities for drawing
	header buttons.  This is so that ETableHeaderItem and
	ETableFieldChooserItem can share the same code.
	(e_table_header_compute_height): New function to compute the
	height of a column button.
	(make_composite_pixmap): New function to composite a pixbuf
	against a solid background and make a pixmap out of the result.
	This does some ultra-fancy fading-out of the original pixbuf if
	the destination area is smaller than the source.
	(compute_elision_length): New function to compute the elision
	length in O(n log n) instead of O(n^2), for n = strlen (str).
	(e_table_header_draw_button): New function to draw a header
	button.
	(e_table_draw_elided_string): New function to draw a string elided
	to a maximum width.

	* e-table-defines.h (HEADER_PADDING): Made the default padding be
	1; now a header button's height is
	content_height + 2 * (HEADER_PADDING + style->ythickness).  This
	is the correct way to measure button heights.

	* e-table-field-chooser-item.c (etfci_find_button): Use
	e_table_header_compute_height().
	(etfci_reflow): Likewise.
	(etfci_draw): Use e_table_header_draw_button().
	(etfci_start_drag): Likewise.
	(etfci_draw): Likewise.
	(etfci_start_drag): Likewise.
	(etfci_button_height): Removed function.
	(draw_button): Removed function.

	* e-table-header-item.c (draw_button): Removed function.
	(e_table_header_item_get_height): Use e_table_header_compute_height().
	(ethi_draw): e_table_header_draw_button().
	(ethi_start_drag): Likewise.
	(make_shaped_window_from_xpm): Fixed misspelling in function name.
	(draw_button): Removed function.

	* Makefile.am: Added e-table-header-utils.[ch].

svn path=/trunk/; revision=6766
2000-12-02 17:35:22 +00:00
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
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
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
104a3d0bff Added e-table-field-chooser*.
2000-06-07  Christopher James Lahey  <clahey@helixcode.com>

	* Makefile.am: Added e-table-field-chooser*.

	* e-table-defines.h: Moved some things to here.

	* e-table-field-chooser-dialog.c, e-table-field-chooser-dialog.h,
	e-table-field-chooser-item.c, e-table-field-chooser-item.h,
	e-table-field-chooser.c, e-table-field-chooser.glade,
	e-table-field-chooser.glade.h, e-table-field-chooser.h: New dialog
	to drag extra fields from.  (Not yet finished.)

	* e-table-header-item.c, e-table-header-item.h: Changed to
	accommodate e-table-field-chooser.

svn path=/trunk/; revision=3473
2000-06-08 00:40:23 +00:00
32471accad From widgets/e-table/ChangeLog
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-14 14:31:22 +00:00