2005-09-29 Tor Lillqvist <tml@novell.com>
* e-table.c (e_table_load_specification)
* e-table-specification.c (e_table_specification_load_from_file)
* e-tree-table-adapter.c (open_file): Use
g_win32_locale_filename_from_utf8() from GLib 2.8 instead of
gnome_win32_locale_filename_from_utf8() which was temporarily in
libgnome.
svn path=/trunk/; revision=30421
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-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-05-06 Sarfraaz Ahmed <asarfraaz@novell.com>
* gal/e-table/e-table.c (et_real_construct) : Check for NULL string
before passing to dgettext. Fixes a crash on Solaris. #260312. Patch
submitted by Suresh Chandrasekharan <suresh.chandrasekharan@sun.com>
svn path=/trunk/; revision=29280
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-01-27 Li Yuan <li.yuan@sun.com>
* e-cell-combo.c: (e_cell_combo_init), (e_cell_combo_do_popup),
(e_cell_combo_list_button_press), (e_cell_combo_button_press),
(e_cell_combo_button_release), (e_cell_combo_key_press):
add an a11y name for the popup list.
make shortcut key ALT+Arrow work.
Fixes#70261
* e-cell-text.c: (e_cell_text_class_init), (_delete_selection),
(_insert):
add "text_inserted" and "text_deleted" signals to notify the
text has been changed.
(e_cell_text_get_text_by_view):
new helper function to get the text being editted.
* e-cell-text.h:
add signal declaration.
* e-cell-toggle.c: (etog_draw):
add range check for negative values.
* e-cell-vbox.c: (e_cell_vbox_class_init):
* e-cell-vbox.h:
make ECellVboxView public since it will be used in a11y part.
* e-table-click-to-add.c: (etcta_style_set),
(create_rect_and_text), (etcta_realize), (etcta_class_init),
(e_table_click_to_add_commit):
add "style_set" signal to click_to_add and implement
the style_set function.
(etcta_init):
add a11y name to click to add.
* e-table-click-to-add.h:
add "style_set" signal to click_to_add and implement
the style_set function.
* e-table-config.c: (config_button_up), (config_button_down):
check whether the columns are empty.
* e-table-group-container.c:
* e-table-group-container.h:
make ETableGroupContainerChildNode public since it
will be used in a11y part.
* e-table-item.c: (eti_init):
init eti->cols.
(eti_event):
at GDK_KEY_PRESS event and GDK_Down key pressed, we check
view_col value before we pass it to eti_e_cell_event.
(eti_class_init):
call the new initialize function
* e-table.c: (table_canvas_focus_event_cb):
if canvas has a focused item but the etable does not
have a cursor row, just focus the first item after check
whether the click_to_add should get the focus.
svn path=/trunk/; revision=28571
2004-11-04 Li Yuan <li.yuan@sun.com>
* gal/e-table/e-table.c: (table_canvas_focus_event_cb):
if canvas has a focused item but the etable does not have a cursor row,
just focus the first item.
svn path=/trunk/; revision=27828
2004-04-22 Bruce Tao <bruce.tao@sun.com>
Fixes#51626
* e-table-click-to-add.c: (etcta_event):
Add an entry for focus_in event, do the same thing as button_press event.
* e-table-item.c: (eti_event):
Mask the Ctrl+Tab processing routine.
* e-table.c: (table_canvas_focus_event_cb), (canvas_vbox_event),
(click_to_add_event), (e_table_setup_table):
Enable you to navigate between click_to_add and the existing tasks by
pressing Ctrl+Tab. However, if there is no existing task, you can still jump
out of click_to_add by this way.
svn path=/trunk/; revision=25831
2003-10-14 Suresh Chandrasekharan <suresh.chandrasekharan@sun.com>
* Support for preedit in e-text widgets.
* gal/gal/e-text/e-text.c: Added e_text_preedit_changed_cb and
insert_preedit_text.
* Modified the following functions.
(e_text_draw) Calls insert_preedit_text also cursor pos @ the end of
text->selection_start + text->preedit_len
(e_text_event) Added hooks for preedit_cb
(e_text_init) Inits text->preedit_len
(e_text_retrieve_surrounding_cb) Removed printf
(e_text_delete_surrounding_cb) Correct params for
gtk_editable_delete_text to make it work.
* gal/gal/e-text/e-text.h: Added preedit_len in struct _EText
2003-09-25 Suresh Chandrasekharan <suresh.chandrasekharan@sun.com>
* Fix for "44222 task summary entry widget not i18ned". The following
files are changed.
* gal/gal/e-table/e-cell-text.c: Lots of changes for i18n
selection/input support. Added these functions for input method support.
(e_cell_text_preedit_changed_cb)
(e_cell_text_commit_cb)
(e_cell_text_retrieve_surrounding_cb)
(e_cell_text_delete_surrounding_cb)
(layout_with_preedit) This function inserts the preedit string
with the right attribs to the layout text.
(build_attr_list) Creates the PangoAttrList with bold/stikeout/underline
as applicable for the current ECellText.
The following functions are modified.
(ect_stop_editing): disconnect signal handlers when editing stops
(ect_draw): Changes for including the preedit only to the currently
selected row/col. Also display the cursor at the end of preedit text.
(ect_event): Connects the IM callbacks to the key press event.
Disconnect when not in editing mode. Also a special flag to see
when Enter key pressed in preedit mode, the text is committed only
not a new row is created. This woks in conjunction with the changes
made in the eti_event in e-table-item.c file and e-cell.h.
(ect_height): Changes due to parameters changing for generate_layout
(ect_enter_edit): Initialization of im_context for a cell text and
assoociated flags.
(ect_max_width): Changes due to parameters changing for
generate_layout.
(ect_max_width_by_row): Changes due to parameters changing for
generate_layout.
(ect_show_tooltip): Changes due to parameters changing for
generate_layout.
(e_cell_text_construct): check whether paramters are NULL.
(get_position_from_xy): Changes due to parameters changing for
generate_layout.
(_insert): Set the selection_start as the minimum of strlen(edit->text)
and selection_start. Used to correct the preedit_string length
which may have added to the selection_start.
(e_cell_text_view_command): When inserting, if in the preedit mode
do not delete the selection.
(_selection_get): Set utf8 data instead of string data.
(_selection_received): Take in UTF8_ATOM inaddition to
GDK_SELECTION_TYPE_STRING.
(e_cell_text_view_get_selection): Make utf8 data when acting as a
selection source.
* gal/e-table/e-cell-text.h : Included <gtk/gtkmenu.h>
* gal/e-table/e-cell.h: Added enum E_CELL_PREEDIT to ECellFlags
* gal/e-table/e-table-item.c: (eti_event) Changes for not committing
the edited text as a seperate row in preedit mode.
* gal/e-table/e-table.c: (table_canvas_focus_event_cb) To have
proper im_context focus for the ecanvas holding the e-table.
svn path=/trunk/; revision=22882
* e-tree.c (e_tree_init): Initialize some missing fields. Fixes
"no handler with id" warnings at evo shutdown
(ETreePriv): remove unused table_rows_{inserted,deleted}_id
(et_disconnect_from_etta): remove refs to them
* e-table.c (e_table_drag_source_unset): free site->target_list if
it's set.
svn path=/trunk/; revision=21705
2003-06-19 Larry Ewing <lewing@ximian.com>
* e-table-specification.c (e_table_specification_load_from_node):
remove extra ref, the count starts at one.
* e-table-utils.c (e_table_spec_to_full_header): add_column adds a
reference, so drop the intial reference.
* e-table.c (et_real_construct):remove extra ref, count starts at
one.
svn path=/trunk/; revision=21479
2003-04-19 Chris Toshok <toshok@ximian.com>
[ fixes evolution bug #40464 ]
* e-table.c (e_table_class_init): use G_SIGNAL_TYPE_STATIC_SCOPE
for the GtkSelectionData args of table_drag_data_get and
table_drag_data_received.
svn path=/trunk/; revision=20900
2002-11-05 Mike Kestner <mkestner@ximian.com>
* e-table-col.[ch] : GObjectify
* e-table-column-specification.[ch] : GObjectify
* e-table-config.[ch] : GObjectify
* e-table-group-leaf.c : use GObject api for models
* e-table-group.c : use GObject api for models
* e-table-header-item.c : use GObject api for models
* e-table-header.c : use GObject api for models
* e-table-selection-model.c : use GObject api for models
* e-table-sort-info.[ch] : GObjectify
* e-table-sorted.[ch] : GObjectify
* e-table-sorter.c : use GObject api for models
* e-table-specification.c : use GObject api for models
* e-table-state.[ch] : GObjectify
* e-table-subset-variable.[ch] : GObjectify
* e-table-subset.[ch] : GObjectify
* e-table.c : use GObject api for models
svn path=/trunk/; revision=18571
2002-11-04 Mike Kestner <mkestner@ximian.com>
* e-table-group.c : use GObject api for ETableHeader
* e-table-header-item.c : use GObject api on ETableHeader
* e-table-header.[ch] : GObjectify
* e-table-item.c : use GObject api on ETableHeader
* e-table-search.[ch] : GObjectify
* e-table-sorted.c : use GObject api for ETableHeader
* e-table-sorter.c : use GObject api for ETableHeader
* e-table-specification.[ch] : GObjectify
* e-table-utils.c : use GObject api for ETableHeader
* e-tree-sorted.c : use GObject api for ETableHeader
* e-tree.c : use GObject api on Header, Spec, and Search
svn path=/trunk/; revision=18531
* e-table.c (et_real_construct): Set the selection model's
selection_mode after setting the table model, or things will break
in the GTK_SELECTION_SINGLE case if the table doesn't start out
empty.
svn path=/trunk/; revision=18121
2002-08-06 Jeffrey Stedfast <fejj@ximian.com>
* e-tree-table-adapter.c
(e_tree_table_adapter_save_expanded_state): And finally here.
* e-table-state.c (e_table_state_save_to_file): Same here.
* e-table-specification.c (e_table_specification_save_to_file): No
need to save to a temp file first here either since
e_xml_save_file now does that for us.
* e-table.c (e_table_save_specification): No need to handle
writing to a temp file first anymore, since I've updated
e_xml_save_file() to handle that for us.
svn path=/trunk/; revision=17724
2002-08-06 Jeffrey Stedfast <fejj@ximian.com>
* e-cell-progress.c: #include <string.h> for memset
* e-table.c (e_table_save_specification): Updated to use
e_xml_save_file() instead of xmlSaveFile(). Also fixed to save to
a tmp file first.
* e-table-specification.c (e_table_specification_save_to_file):
Same as above.
* e-table-state.c (e_table_state_save_to_file): Same here.
* e-tree-table-adapter.c
(e_tree_table_adapter_save_expanded_state): And here too.
svn path=/trunk/; revision=17717
2002-06-18 JP Rosevear <jpr@ximian.com>
Patch by clahey.
* e-table.c (et_get_arg): get the use_click_to_add value
(et_set_arg): set the use_click_to_add_value, and either display
the item or destroy it
(e_table_class_init): add the use_click_to_add arg
svn path=/trunk/; revision=17218
2002-06-14 Christopher James Lahey <clahey@ximian.com>
* e-cell-popup.c (ecp_draw, ecp_event): Don't draw or interact
with the popup button if a cell isn't editable (based on a patch
by JPR.)
* e-table-col.c, e-table-col.h: Added the compare_col field to
this structure. Added a GtkArg to set it.
* e-table-column-specification.c, e-table-column-specification.h:
Added the compare_col field here. Made it load properly from xml.
* e-table-sorting-utils.c: Sort based on the compare_col in the
ETableCol instead of the col_idx.
* e-table-utils.c (et_col_spec_to_col): Set the compare_col field
in the ETableCol properly.
* e-table.c, e-table.h: Removed the drag_get_data_row and
drag_get_data_col fields since they're not used any longer.
(e_table_construct): If specification loading fails, return a NULL
ETable instead of just ignoring it.
(e_table_drag_highlight): Only destroy table->drop_highlight if it
exists.
svn path=/trunk/; revision=17190
2002-06-04 Christopher James Lahey <clahey@ximian.com>
* e-table-header.c, e-table-header.h
(e_table_header_prioritized_column_selected): Added this function.
* e-table-utils.c, e-table-utils.h
(e_table_util_calculate_current_search_col): Added this function.
* e-table.c, e-table.h, e-tree.c: Added a "always_search"
argument. If this is off, then searches only occur if there's
sort. If it's on, sort takes precendence in doing searches,
followed by the highest priority column shown.
svn path=/trunk/; revision=17109
2002-05-02 Christopher James Lahey <clahey@ximian.com>
* e-table-click-to-add.c: Added horizontal dividers to this item
when in table mode.
* e-table.c, e-tree.c: Made the background be an
e-canvas-background instead of a
* e-tree.c, e-tree.h: Added a white_space_event for feature parity
with ETable.
svn path=/trunk/; revision=16667
2002-05-01 Christopher James Lahey <clahey@ximian.com>
* gal/e-text/e-completion-view.c (simple_spec),
gal/widgets/e-categories-master-list-dialog.c (SPEC),
gal/widgets/e-categories.c (INITIAL_SPEC): Set the gettext-domain
here.
* gal/util/e-i18n.h (E_I18N_DOMAIN): #define as makes sense in the
different cases.
From gal/e-table/ChangeLog:
2002-05-01 Christopher James Lahey <clahey@ximian.com>
* e-table-config.c, e-table-config.h, e-table-specification.c,
e-table-specification.h, e-table-utils.c, e-table-utils.h,
e-table.c, e-table.h: Made these pay attention to the
gettext-domain in the etspec.
* e-table-config.c: Set the gettext-domain in the etspec here.
From gal/menus/ChangeLog:
2002-05-01 Christopher James Lahey <clahey@ximian.com>
* gal-define-views-dialog.c (SPEC),
gal-view-instance-save-as-dialog.c (SPEC): Set the gettext-domain
here.
svn path=/trunk/; revision=16658
2002-04-11 Christopher James Lahey <clahey@ximian.com>
* e-table-header-item.c (ethi_header_context_menu): Fixed a memory
leak here by using the "selection-done" signal.
* e-table.c, e-table.h (white_item_event): Added the
"white_space_event" signal.
svn path=/trunk/; revision=16439
2002-03-15 Christopher James Lahey <clahey@ximian.com>
* e-table-header.c, e-table-header.h (e_table_header_min_width):
New function that returns the total minimum width of all the
columns.
* e-table.c, e-table.h (set_header_width): Call
e_table_header_min_width here instead of total_width.
(et_size_request): Override the size_request method instead of
doing set_usize.
svn path=/trunk/; revision=16175
2002-03-14 Christopher James Lahey <clahey@ximian.com>
* e-table-search.c, e-table-search.h (e_table_search_backspace):
Made this return a boolean that returns whether the ETableSearch
used the backspace at all.
* e-table.c (group_key_press), e-tree.c (item_key_press): Used the
new return value from e_table_search_backspace.
svn path=/trunk/; revision=16166
* e-tree.c (item_key_press): Don't search if any modifier but
SHIFT or LOCK is pressed.
* e-table.c (group_key_press): Don't search if any modifier but
SHIFT or LOCK is pressed.
svn path=/trunk/; revision=16161