Commit Graph

29 Commits

Author SHA1 Message Date
df07f02cae Added widgets in INCLUDES.
2005-06-23  Kaushal Kumar  <kakumar@novell.com>

        * e-util/Makefile.am, widgets/e-timezone-dialog/Makefile.am,
        addressbook/gui/search/Makefile.am,
        plugins/groupwise-features/Makefile.am: Added widgets in INCLUDES.

        Updated the include paths to use misc instead of widgets/misc.

svn path=/trunk/; revision=29574
2005-06-23 09:11:11 +00:00
27a61acf27 Retired GAL from Head. The relevant files have moved inside evolution.
2005-06-17  Kaushal Kumar  <kakumar@novell.com>

        * Retired GAL from Head. The relevant files have moved inside
        evolution. Thanks to JP Rosevear for performing the cvs surgery. The
        files have been moved in the following order.

        evolution/e-util <- gal/gal/util
        evolution/a11y <-  gal/gal/a11y
        evolution/a11y/e-table <- gal/gal/a11y/e-table
        evolution/a11y/e-text <- gal/gal/a11y/e-text
        evolution/widgets/table <- gal/gal/e-table
        evolution/widgets/text <- gal/gal/e-text
        evolution/widgets/misc <- gal/gal/widgets
        evolution/widgets/misc/pixmaps <- gal/gal/widgets/pixmaps
        evolution/widgets/menus <- gal/gal/menus

        Following is the summary of changes done to fix the build:-
        - New files added to cvs repository,
                - a11y/e-table/Makefile.am
                - a11y/e-text/Makefile.am
                - widgets/table/Makefile.am
                - widgets/text/Makefile.am
                - widgets/misc/pixmaps/Makefile.am
                - iconv-detect.h
                - iconv-detect.c
        - Updated configure.in.
        - Updated all the relevant Makefile.am files.
        - Updated the include paths to replace all gal references.
        - Updated the marshal list to suit gal files requirements.

svn path=/trunk/; revision=29522
2005-06-17 15:20:35 +00:00
2decafb544 Port to Windows, initial commit:
2005-04-29  Tor Lillqvist  <tml@novell.com>

	Port to Windows, initial commit:

	* configure.in: Check for Win32, define Automake conditional
	OS_WIN32. Check for regexec() perhaps in separate -lregex, define
	REGEX_LIBS if so. Require glib-2.0 >= 2.6 (and thus also gtk+-2.0
	>= 2.6) so that we can use the gstdio wrappers for full support of
	non-ASCII filenames on Win32. Don't use -D_REENTRANT on Win32, has
	ne special meaning.

	* gal.pc.in: Require gtk+-2.0 >= 2.6 also here for consistency.

	* gal-zip.in: New file, used to build zipfile format distribution
	of gal for Win32.

	* configure.in
	* Makefile.am: Add gal-zip(.in).

	* */Makefile.am
	* */*.c: Harmonize -I and #include conventions. (Of course, this
	hasn't anything to do with Windows porting as such, I just got
	carried away...) Use only -I$(top_srcdir). Use paths to gal
	headers staring with "gal", except for headers from the same
	directory as the .c file, which are included as such. Include all
	gal headers using doublequotes. Sort #includes and remove
	duplicates and obvious redundancies. Include config.h first
	without any HAVE_CONFIG_H, then system headers, then other GNOME
	lib headers, than gal's own headers. Just include gtk.h instead of
	separate gtk*.h headers. Don't include gi18n.h, include e-i18n.h
	to use e_gettext() consistently.

	* gal/Makefile.am: Use -no-undefined on Win32 so that libtool
	agrees to build a shared library. Because of the bidirectional
	dependency between libgal and libgal-a11y we can build libgal-a11y
	sanely as a shared library on Win32, so we don't install any
	separate libgal-a11y at all. So, on Win32, link the stuff that
	goes into libgal-a11y also into libgal. Link with REGEX_LIBS.

	* gal/a11y/Makefile.am: See above. Just build a dummy static
	libgal-a11y on Win32 (can't convince Automake not to build the
	library at all on one platform using Automake ifdef,
	apparently). Then (this is a gross hack) explicitly remove the
	library after installation in the install-data-local rule.

	* gal/e-table/Makefile.am
	* gal/e-table/e-table-config.c: Rename ETABLE_GLADEDIR to
	GAL_GLADEDIR for consistency.

	* gal/e-table/e-cell-date.c: No localtime_r() in Microsoft's C
	library, but its localtime() *is* thread-safe.

	* gal/e-table/e-cell-text.c
	* gal/e-table/e-cell-tree.c
	* gal/e-table/e-cell-vbox.c
	* gal/e-text/e-text.c
	* gal/widgets/e-unicode.c: Remove unnecessary inclusion of gdkx.h.

	* gal/e-table/e-cell-tree.c (ect_realize): Instead of the Xlib
	macro None (whose value is zero), use the corresponding
	zero-valued enums from the appropriate GDK type.

	* gal/e-table/e-table-config.c
	* gal/e-table/e-table-field-chooser.c
	* gal/menus/gal-define-views-dialog.c
	* gal/menus/gal-view-instance-save-as-dialog.c
	* gal/menus/gal-view-new-dialog.c
	* gal/widgets/e-categories-master-list-array.c
	* gal/widgets/e-categories-master-list-dialog.c
	* gal/widgets/e-categories.c: Use g_build_filename() to construct
	pathnames at run-time instead of compile-time. On Windows the
	macros GAL_GLADEDIR and GAL_IMAGESDIR expand to function calls, in
	order to support installing in a freely chosen location.

	* gal/e-table/e-table-item.c
	* gal/e-table/e-cell-vbox.c: Instrad of the Xlib GrabSuccess, use
	GDK_GRAB_SUCCESS (which has the same value).

	* gal/e-table/e-table-specification.c (e_table_specification_load_from_file)
	* gal/e-table/e-table.c (e_table_load_specification)
	* gal/e-table/e-tree-table-adapter.c (open_file)
	* gal/menus/gal-view-instance.c (load_current_view)
	* gal/menus/gal-view-instance.c (load_current_view): On Win32,
	convert filename to the locale character set before passing to
	xmlParseFile() which doesn't use UTF-8 filenames. Use gstdio
	wrappers.

	* gal/util/Makefile.am: Define GAL_PREFIX as $prefix. Define
	GAL_LOCALEDIR, GAL_GLADEDIR and GAL_IMAGESDIR also here for
	e-win32-reloc.c. Include e-win32-reloc.c on Win32.

	* gal/util/e-iconv.c (e_iconv_init): Use g_win32_getlocale() on
	Windows.

	* gal/util/e-util.c
	* gal/util/e-xml-utils.c: Use g_mkstemp() instead of non-portable
	mkstemp(). Use GLib pathname manipulation functions. Use gstdio
	wrappers.

	* gal/util/e-util-private.h: New file. Contains just Win32 bits
	for now that redefine the directory names from the Makefile as
	functions calls.

	* gal/util/e-win32-reloc.c: New file. Contains a minimal DllMain()
	and functions to support freely chosen installation location on
	Windows.

	* gal/util/e-xml-utils.c: No fsync() in the Microsoft C library.

	* gal/windgets/Makefile.am: Add -I$(top_srcdir)/gal for
	consistency with the sibling Makefile.am files.

	* gal/widgets/e-canvas.c: Instead of the Xlib AlreadyGrabbed, use
	GDK_GRAB_ALREADY_GRABBED.

svn path=/trunk/; revision=29249
2005-04-29 14:18:18 +00:00
613453b109 merging the gal-2 branch back to the trunk.
merging the gal-2 branch back to the trunk.

svn path=/trunk/; revision=18471
2002-10-31 21:30:57 +00:00
c3e3a85f28 Changed the license announcement at the top of these files.
2001-10-26  Christopher James Lahey  <clahey@ximian.com>

	* e-cell-checkbox.c, e-cell-checkbox.h, e-cell-combo.c,
	e-cell-combo.h, e-cell-date.c, e-cell-date.h, e-cell-number.c,
	e-cell-number.h, e-cell-pixbuf.c, e-cell-pixbuf.h, e-cell-popup.c,
	e-cell-popup.h, e-cell-size.c, e-cell-size.h,
	e-cell-spin-button.c, e-cell-spin-button.h, e-cell-string.c,
	e-cell-text.c, e-cell-text.h, e-cell-toggle.c, e-cell-toggle.h,
	e-cell-tree.c, e-cell-tree.h, e-cell.c, e-cell.h,
	e-table-click-to-add.c, e-table-click-to-add.h, e-table-col-dnd.h,
	e-table-col.c, e-table-col.h, e-table-column-specification.c,
	e-table-column-specification.h, e-table-column.c,
	e-table-config-field.c, e-table-config-field.h, e-table-config.c,
	e-table-config.h, e-table-defines.h, e-table-example-1.c,
	e-table-example-2.c, e-table-extras.c, e-table-extras.h,
	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.h,
	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-header-utils.c, e-table-header-utils.h, e-table-header.c,
	e-table-header.h, e-table-item.c, e-table-item.h,
	e-table-memory-callbacks.c, e-table-memory-callbacks.h,
	e-table-memory.c, e-table-memory.h, e-table-model.c,
	e-table-model.h, e-table-one.c, e-table-one.h, e-table-scrolled.c,
	e-table-scrolled.h, e-table-selection-model.c,
	e-table-selection-model.h, e-table-simple.c, e-table-simple.h,
	e-table-size-test.c, e-table-sort-info.c, e-table-sort-info.h,
	e-table-sorted-variable.c, e-table-sorted-variable.h,
	e-table-sorted.c, e-table-sorted.h, e-table-sorter.c,
	e-table-sorter.h, e-table-sorting-utils.c,
	e-table-sorting-utils.h, e-table-specification.c,
	e-table-specification.h, e-table-state.c, e-table-state.h,
	e-table-subset-variable.c, e-table-subset-variable.h,
	e-table-subset.c, e-table-subset.h, e-table-tooltip.h,
	e-table-tree.h, e-table-utils.c, e-table-utils.h,
	e-table-without.c, e-table-without.h, e-table.c, e-table.h,
	e-tree-memory-callbacks.c, e-tree-memory-callbacks.h,
	e-tree-memory.c, e-tree-memory.h, e-tree-model.c, e-tree-model.h,
	e-tree-scrolled.c, e-tree-scrolled.h, e-tree-selection-model.c,
	e-tree-selection-model.h, e-tree-simple.c, e-tree-simple.h,
	e-tree-sorted-variable.c, e-tree-sorted-variable.h,
	e-tree-sorted.c, e-tree-sorted.h, e-tree-table-adapter.c,
	e-tree-table-adapter.h, e-tree.c, e-tree.h, table-test.c,
	table-test.h, test-check.c, test-cols.c, test-table.c: Changed the
	license announcement at the top of these files.

	* e-cell-string.c: Removed unused file.

svn path=/trunk/; revision=14154
2001-10-26 18:25:47 +00:00
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