aboutsummaryrefslogtreecommitdiffstats
path: root/widgets/text/e-text.c
Commit message (Collapse)AuthorAgeFilesLines
* ** Fix for bug #529893Danny Baumann2008-04-251-0/+1
| | | | | | | | | | | | | | | | | | | 2008-04-25 Danny Baumann <dannybaumann@web.de> ** Fix for bug #529893 * widgets/misc/e-dateedit.c (create_children): * widgets/misc/e-combo-cell-editable.c (build_popup): * widgets/misc/e-cell-date-edit.c (e_cell_date_edit_init): * widgets/table/e-table-header-item.c: (make_shaped_window_from_xpm): * widgets/table/e-cell-combo.c: (e_cell_combo_init): * widgets/table/e-cell-text.c: (ect_show_tooltip): * widgets/text/e-text.c: (_do_tooltip): * calendar/gui/e-calendar-view.c: (e_calendar_view_get_tooltips): Properly set type hints for popup windows. svn path=/trunk/; revision=35416
* ** Fix for bug #383438Milan Crha2008-02-201-1/+1
| | | | | | | | | | | | 2008-02-19 Milan Crha <mcrha@redhat.com> ** Fix for bug #383438 * text/e-text.c: (e_text_point): Report "mouse over" even with no text entered. svn path=/trunk/; revision=35056
* Fix a compiler warning.Matthew Barnes2008-02-031-52/+0
| | | | | | | | | | | | | | | 2008-02-03 Matthew Barnes <mbarnes@redhat.com> * pluginsattachment-reminder.c (org_gnome_evolution_attachment_reminder): Fix a compiler warning. * widgets/text/e-text.c (update_im_cursor_position): * widgets/text/e-text.c (e_text_get_cursor_locations): Remove these unused functions to silence compiler warnings. svn path=/trunk/; revision=34952
* Patch from Mayank Jain <mayank.gnu@gmail.com> ** Fix for bug #348638 ↵Suman Manjunath2008-01-141-16/+24
| | | | | | (Cleanly remove pre-edit buffer on pressing backspace in day-view, for non-ascii characters as well) svn path=/trunk/; revision=34809
* ** Remove trailing whitespace from source code.Matthew Barnes2007-11-151-93/+93
| | | | | | | | | 2007-11-14 Matthew Barnes <mbarnes@redhat.com> ** Remove trailing whitespace from source code. svn path=/trunk/; revision=34537
* ** Fix for bug #341085Milan Crha2007-11-051-5/+5
| | | | | | | | | | | | | | | 2007-11-05 Milan Crha <mcrha@redhat.com> ** Fix for bug #341085 * calendar/gui/e-day-view.c: (e_day_view_reshape_day_event): Use 'x_offset' instead of changing event size when has icons. * widgets/text/e-text.c: (get_bounds), (e_text_draw): Use 'x_offset' and 'y_offset' only for text drawing, not for changing bounds of EText. svn path=/trunk/; revision=34504
* text/e.entry.[ch] text/e-completion.[ch] text/e-text-model-uri.[ch]Kjartan Maraas2007-10-311-3/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | 2007-10-26 Kjartan Maraas <kmaraas@gnome.org> * e-timezone-dialog/e-timezone-dialog.c: (get_local_offset), (get_local_timezone), (on_map_visibility_changed), (on_map_button_pressed), (get_zone_from_point), (e_timezone_dialog_set_timezone), (on_combo_changed): * menus/gal-view-factory.c: (gal_view_factory_get_title): * text/Makefile.am: * text/e-text.c: (e_text_event), (popup_targets_received), (next_word), (find_offset_into_line), (_get_position), (e_text_class_init): * text/e.entry.[ch] * text/e-completion.[ch] * text/e-text-model-uri.[ch] * text/e-completion-view.[ch] * text/e-completion-callbacks.[ch] * text/e-completion-match.[ch] * text/e-table-text-model.[ch]: Remove all of these. They are now unused. Warning fixes: - NULL vs 0 vs FALSE - ANSIfication of function declarations svn path=/trunk/; revision=34468
* ** Fixes bug #437579Matthew Barnes2007-10-101-5/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2007-10-09 Matthew Barnes <mbarnes@redhat.com> ** Fixes bug #437579 * addressbook/conduit/address-conduit.c: * addressbook/gui/component/addressbook-config.c: * addressbook/gui/contact-editor/e-contact-editor.c: * addressbook/gui/widgets/eab-gui-util.c: * calendar/conduits/calendar/calendar-conduit.c: * calendar/conduits/memo/memo-conduit.c: * calendar/conduits/todo/todo-conduit.c: * calendar/gui/dialogs/alarm-dialog.c: * calendar/gui/dialogs/event-page.c: * calendar/gui/dialogs/memo-page.c: * calendar/gui/dialogs/task-page.c: * calendar/gui/e-day-view-layout.c: * calendar/gui/e-day-view-layout.h: * calendar/gui/print.c: * e-util/e-pilot-map.c: * e-util/e-plugin.c: * e-util/e-profile-event.c: * e-util/e-signature.c: * filter/filter-file.c: * mail/e-searching-tokenizer.c: * mail/em-folder-browser.c: * mail/em-format-html.c: * mail/em-format-view.c: * mail/em-format.c: * mail/em-mailer-prefs.c: * mail/em-mailer-prefs.h: * mail/mail-session.c: * mail/mail-session.h: * mail/mail-vfolder.c: * mail/message-list.c: * plugins/bbdb/bbdb.c: * plugins/bbdb/gaimbuddies.c: * plugins/calendar-http/calendar-http.c: * plugins/exchange-operations/exchange-user-dialog.c: * plugins/face/face.c: * shell/e-shell-window.c: * shell/e-shell.c: * smime/lib/e-cert-db.c: * tools/killev.c: * widgets/misc/e-cursors.c: * widgets/misc/e-spinner.c: * widgets/misc/e-unicode.c: * widgets/table/e-table-field-chooser-item.c: * widgets/table/e-table-header-item.c: * widgets/table/e-table-header-item.h: * widgets/table/e-table-header-utils.c: * widgets/table/e-table.c: * widgets/text/e-text.c: Fix various compiler warnings. Patch from Milan Crha. svn path=/trunk/; revision=34368
* Fix for bug #461195 from Hiroyuki Ikezoe.Matthew Barnes2007-09-281-2/+2
| | | | | | | Use GObject's marshalers whenever possible. svn path=/trunk/; revision=34324
* Update FSF address in header comments (#469886). Patch from TobiasMatthew Barnes2007-09-021-2/+2
| | | | | | | | | | 2007-09-02 Matthew Barnes <mbarnes@redhat.com> * Update FSF address in header comments (#469886). Patch from Tobias Mueller. svn path=/trunk/; revision=34151
* ** Fixes bug #309166Matthew Barnes2007-08-241-5/+77
| | | | | | | | | | | | | | | 2007-08-23 Matthew Barnes <mbarnes@redhat.com> ** Fixes bug #309166 * text/e-text.c (_get_updated_position): Modified the way movement of cursor is handled across grapheme clusters. * text/e-text.c (_get_position): Uses the new function for forward and backward movement of characters (simple or grapheme clusters). Patch by Mayank Jain. svn path=/trunk/; revision=34083
* ** Fixes bug #303878Matthew Barnes2007-08-241-3/+61
| | | | | | | | | | | | | | | | | | | | 2007-08-23 Matthew Barnes <mbarnes@redhat.com> ** Fixes bug #303878 * widgets/text/e-text.h: preedit_pos: new value. * widgets/text/e-text.c: (e_text_get_cursor_locations): New function. Get the cursor locations. (update_im_cursor_position): New function. Set the cursor location to IMContext. (insert_preedit_text): Call update_im_cursor_position when draw preedit text. (e_text_preedit_changed_cb): Set the preedit cursor position to preedit_pos. Patch by Hiroyuki Ikezoe and makuchaku. svn path=/trunk/; revision=34081
* Remove E_MAKE_TYPE macro.Hiroyuki Ikezoe2007-07-281-31/+11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2007-07-27 Hiroyuki Ikezoe <poincare@ikezoe.net> * e-util/e-util.h: Remove E_MAKE_TYPE macro. * e-util/e-bit-array.c: * e-util/e-sorter-array.c: * e-util/e-sorter.c: * e-util/e-text-event-processor-emacs-like.c: * e-util/e-text-event-processor.c: * widgets/menus/gal-define-views-dialog.c: * widgets/menus/gal-define-views-model.c: * widgets/menus/gal-view-collection.c: * widgets/menus/gal-view-etable.c: * widgets/menus/gal-view-factory-etable.c: * widgets/menus/gal-view-factory.c: * widgets/menus/gal-view-instance-save-as-dialog.c: * widgets/menus/gal-view-instance.c: * widgets/menus/gal-view-new-dialog.c: * widgets/menus/gal-view.c: * widgets/misc/e-canvas-background.c: * widgets/misc/e-canvas-vbox.c: * widgets/misc/e-canvas.c: * widgets/misc/e-printable.c: * widgets/misc/e-reflow-model.c: * widgets/misc/e-reflow.c: * widgets/misc/e-selection-model-array.c: * widgets/misc/e-selection-model-simple.c: * widgets/misc/e-selection-model.c: * widgets/table/e-cell-checkbox.c: * widgets/table/e-cell-combo.c: * widgets/table/e-cell-date.c: * widgets/table/e-cell-float.c: * widgets/table/e-cell-hbox.c: * widgets/table/e-cell-number.c: * widgets/table/e-cell-pixbuf.c: * widgets/table/e-cell-popup.c: * widgets/table/e-cell-progress.c: * widgets/table/e-cell-size.c: * widgets/table/e-cell-spin-button.c: * widgets/table/e-cell-text.c: * widgets/table/e-cell-toggle.c: * widgets/table/e-cell-tree.c: * widgets/table/e-cell-vbox.c: * widgets/table/e-cell.c: * widgets/table/e-table-click-to-add.c: * widgets/table/e-table-col.c: * widgets/table/e-table-column-specification.c: * widgets/table/e-table-column.c: * widgets/table/e-table-config-field.c: * widgets/table/e-table-config.c: * widgets/table/e-table-extras.c: * widgets/table/e-table-field-chooser-dialog.c: * widgets/table/e-table-field-chooser-item.c: * widgets/table/e-table-field-chooser.c: * widgets/table/e-table-group-container.c: * widgets/table/e-table-group-leaf.c: * widgets/table/e-table-group.c: * widgets/table/e-table-header-item.c: * widgets/table/e-table-header.c: * widgets/table/e-table-item.c: * widgets/table/e-table-memory-callbacks.c: * widgets/table/e-table-memory-store.c: * widgets/table/e-table-memory.c: * widgets/table/e-table-model.c: * widgets/table/e-table-one.c: * widgets/table/e-table-scrolled.c: * widgets/table/e-table-search.c: * widgets/table/e-table-selection-model.c: * widgets/table/e-table-simple.c: * widgets/table/e-table-sort-info.c: * widgets/table/e-table-sorted-variable.c: * widgets/table/e-table-sorted.c: * widgets/table/e-table-sorter.c: * widgets/table/e-table-specification.c: * widgets/table/e-table-state.c: * widgets/table/e-table-subset-variable.c: * widgets/table/e-table-subset.c: * widgets/table/e-table-without.c: * widgets/table/e-table.c: * widgets/table/e-tree-memory-callbacks.c: * widgets/table/e-tree-memory.c: * widgets/table/e-tree-model.c: * widgets/table/e-tree-scrolled.c: * widgets/table/e-tree-selection-model.c: * widgets/table/e-tree-simple.c: * widgets/table/e-tree-sorted-variable.c: * widgets/table/e-tree-sorted.c: * widgets/table/e-tree-table-adapter.c: * widgets/table/e-tree.c: * widgets/text/e-completion-callbacks.c: * widgets/text/e-completion-view.c: * widgets/text/e-completion.c: * widgets/text/e-entry.c: * widgets/text/e-table-text-model.c: * widgets/text/e-text-model-uri.c: * widgets/text/e-text-model.c: * widgets/text/e-text.c: Use G_DEFINE_TYPE instead of E_MAKE_TYPE. svn path=/trunk/; revision=33864
* Plugged memory leak.Hiroyuki Ikezoe2007-07-261-0/+5
| | | | | | | | | 2007-07-26 Hiroyuki Ikezoe <poincare@ikezoe.net> * text/e-text.c: (e_text_dispose): Plugged memory leak. svn path=/trunk/; revision=33848
* Remove needless g_strndup().Hiroyuki Ikezoe2007-07-191-6/+2
| | | | | | * text/e-text.c: (e_text_copy_clipboard): Remove needless g_strndup(). svn path=/trunk/; revision=33819
* Remove needless g_strndup().Hiroyuki Ikezoe2007-07-151-4/+3
| | | | | | * text/e-text.c: (primary_get_cb): Remove needless g_strndup(). svn path=/trunk/; revision=33806
* ** Fixes bug #424562Matthew Barnes2007-05-251-16/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | 2007-05-24 Matthew Barnes <mbarnes@redhat.com> ** Fixes bug #424562 * e-util/eggtrayicon.c: * e-util/eggtrayicon.h: Evolution requires GTK+ 2.10 now so kill this widget. * e-util/Makefile.am: Remove eggtrayicon.c and eggtrayicon.h. * calendar/gui/dialogs/recur-comp.c (recur_component_dialog): * e-util/e-dialog-utils.c (e_notice): * plugins/calendar-weather/calendar-weather.c (e_calendar_weather_location): * widgets/text/e-text.c (e_text_copy_clipboard), (e_text_update_primary_selection), (e_text_paste), (e_text_do_popup): Remove check for obsolete GTK+ version. * gui/alarm-notify/alarm-queue.c: EggTrayIcon is dead; always use GtkStatusIcon. svn path=/trunk/; revision=33573
* Massive code cleanup (bug #429422)Matthew Barnes2007-04-201-14/+14
| | | | svn path=/trunk/; revision=33432
* ** Fixes bug #419524Matthew Barnes2007-03-211-1/+1
| | | | | | | | | | | | | | | | | | | | | | | 2007-03-20 Matthew Barnes <mbarnes@redhat.com> ** Fixes bug #419524 * Include <glib/gi18n.h> instead of <libgnome/gnome-i18n.h>. * e-util/e-xml-utils.c (e_xml_get_child_by_name_by_lang_list): * mail/em-migrate.c (emm_setup_initial): * shell/e-component-registry.c (query_components): * shell/e-shell-settings-dialog.c (load_pages): * shell/e-shell-window-commands.c (command_quick_reference): * tools/killev.c (main): Use g_get_language_names() instead of gnome_i18n_get_language_list(). * e-util/e-util.c: Remove e_gettext(). * e-util/Makefile.am: Remove e-i18n.h. svn path=/trunk/; revision=33319
* Fixes bug #357970Matthew Barnes2006-12-041-1/+1
| | | | | | | | | | | 2006-09-27 Matthew Barnes <mbarnes@redhat.com> Fixes bug #357970 * text/e-text.c (e_text_unrealize): Don't call deprecated GLib / GDK functions. svn path=/trunk/; revision=33050
* ** Fixes bug #352450Matthew Barnes2006-09-181-5/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | 2006-08-23 Matthew Barnes <mbarnes@redhat.com> ** Fixes bug #352450 * misc/e-canvas-background.c: * misc/e-cursors.c: * misc/e-map.c: * misc/e-reflow.c: * misc/e-task-widget.c: * misc/gal-combo-box.c: * table/e-cell-text.c: * table/e-cell-toggle.c: * table/e-table-field-chooser-item.c: * table/e-table-field-chooser.c: * table/e-table-header-item.c: * table/e-table-header-utils.c: * table/e-table-item.c: * table/e-table.c: * table/e-tree-memory.c: * table/e-tree-sorted.c: * table/e-tree.c: * table/e-text.c: Replace deprecated GLib and GDK function calls. svn path=/trunk/; revision=32783
* ** Fixes 342313. Use GTK_CHECK_VERSION instead of GTK_2_2.Hiroyuki Ikezoe2006-07-211-4/+4
| | | | | | | ** Fixes 342313. * text/e-text.c: Use GTK_CHECK_VERSION instead of GTK_2_2. svn path=/trunk/; revision=32365
* Added cairo font rendering to ECell and EText.Srinivasa Ragavan2006-07-201-2/+20
| | | | svn path=/trunk/; revision=32359
* Revert the previous patch. Requires rework.Harish Krishnaswamy2006-07-101-67/+2
| | | | | | | | | | 2006-07-10 Harish Krishnaswamy <kharish@novell.com> * table/e-cell-text.c: (ect_unrealize), (build_layout): * text/e-text.c: (reset_layout): Revert the previous patch. Requires rework. svn path=/trunk/; revision=32272
* Added code for Resize Transparency with Cairo drawing. Added code toRajeev ramanathan2006-07-101-2/+67
| | | | | | | | | | 2006-07-10 Rajeev ramanathan <rajeevramanathan_2004@yahoo.co.in> Added code for Resize Transparency with Cairo drawing. Added code to render ECell and EText text items with antialiasing, hinting and sub-pixel ordering with cairo. svn path=/trunk/; revision=32270
* ** Fixes bug #341354. Plugged memory leak.Hiroyuki Ikezoe2006-07-071-0/+1
| | | | | | | | | | 2006-07-06 Hiroyuki Ikezoe <poincare@ikezoe.net> ** Fixes bug #341354. * text/e-text.c: (e_text_preedit_changed_cb): Plugged memory leak. svn path=/trunk/; revision=32252
* damned broken pipes! where's the plummerKjartan Maraas2006-01-301-13/+8
| | | | svn path=/trunk/; revision=31372
* ** Fixes bug #220286Srinivasa Ragavan2006-01-161-1/+27
| | | | | | | | | | | 2006-01-15 Srinivasa Ragavan <sragavan@novell.com> ** Fixes bug #220286 * text/e-text.c: (tooltip_ungrab), (_do_tooltip), (e_text_event): Added a ungrab for keyboard, so that it hides the tooltip. svn path=/trunk/; revision=31185
* Fix code style cruft from the previous commitHarish Krishnaswamy2006-01-111-1/+1
| | | | | | | | 2006-01-11 Harish Krishnaswamy <kharish@novell.com> * Fix code style cruft from the previous commit svn path=/trunk/; revision=31140
* Add the width to the pango layout.Johnny Jacob2006-01-111-2/+4
| | | | | | | | | 2006-01-11 Johnny Jacob <johnnyjacob@gmail.com> * text/e-text.c (e_text_set_property): Add the width to the pango layout. svn path=/trunk/; revision=31138
* Added widgets in INCLUDES.Kaushal Kumar2005-06-231-3/+3
| | | | | | | | | | | | 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
* Retired GAL from Head. The relevant files have moved inside evolution.Kaushal Kumar2005-06-171-11/+11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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
* Port to Windows, initial commit:Tor Lillqvist2005-04-291-21/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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
* bounds check the selection beginning.Theppitak Karoonboonyanan2005-03-141-4/+4
| | | | | | | | | | 2005-03-14 Theppitak Karoonboonyanan <theppitak@gmail.com> * gal/e-text/e-text.c (e_text_retrieve_surrounding_cb) (e_text_delete_surrounding_cb): bounds check the selection beginning. svn path=/trunk/; revision=29008
* Some code clean work.Harry Lu2005-02-041-5/+2
| | | | | | | | | | | | | | | | | | | | | | | | | 2005-01-27 Harry Lu <harry.lu@sun.com> Some code clean work. * gal/a11y/e-table/gal-a11y-e-table-click-to-add.c: (gal_a11y_e_table_click_to_add_init): new function to register type only when a11y is enabled. * gal/a11y/e-table/gal-a11y-e-table-click-to-add.h: * gal/a11y/e-table/gal-a11y-e-table-item.c: (gal_a11y_e_table_item_init): ditto. * gal/a11y/e-table/gal-a11y-e-table.c: (gal_a11y_e_table_init): ditto. * gal/a11y/e-table/gal-a11y-e-table.h: * gal/a11y/e-table/gal-a11y-e-tree.c: (gal_a11y_e_tree_init): ditto. * gal/a11y/e-table/gal-a11y-e-tree.h: * gal/a11y/e-text/gal-a11y-e-text.c: (gal_a11y_e_text_init): ditto. * gal/a11y/e-text/gal-a11y-e-text.h: * gal/a11y/factory.c: useless file removed. * gal/a11y/init.c: useless file removed. * gal/e-text/e-text.c: (e_text_class_init): move a11y registry call to a11y code. svn path=/trunk/; revision=28702
* Don't pass in the "fill_color" property for creating the canvas item forRodney Dawes2005-01-221-1/+0
| | | | | | | | | | | | | 2005-01-21 Rodney Dawes <dobey@novell.com> * gal/e-text/e-text.c (_do_tooltip): Don't pass in the "fill_color" property for creating the canvas item for the tooltip * gal/widgets/e-reflow.c (set_empty): Don't pass in the "fill_color" property for creating the EText canvas item Fixes #9413 svn path=/trunk/; revision=28501
* Bugzilla #63731Suresh Chandrasekharan2004-08-311-2/+32
| | | | | | | | | | | | | | | | 2004-08-29 Suresh Chandrasekharan <suresh.chandrasekharan@sun.com> Bugzilla #63731 * gal/e-text/e-text.c (insert_preedit_text): For multilple ETexts sharing the same GnomeCanvas im_context, prevent updating all childern in case preedit for one changed. (e_text_event): Don't disconnect the signal to a EText if it is out of focus and still having preedit. Save it and disconnect it when another EText comes into focus. svn path=/trunk/; revision=27085
* Rollback for fix #63731Suresh Chandrasekharan2004-08-261-17/+23
| | | | | | | 2004-08-25 Suresh Chandrasekharan <suresh.chandrasekharan@sun.com> Rollback for fix #63731 svn path=/trunk/; revision=27028
* Bugzilla #63731Suresh Chandrasekharan2004-08-261-23/+17
| | | | | | | | | | | | | | | | | | | | | 2004-08-25 Suresh Chandrasekharan <suresh.chandrasekharan@sun.com> Bugzilla #63731 * gal/e-text/e-text.h: Remove unneeded text->im_context_signals_registered. * gal/e-text/e-text.c (e_text_init): Removed text->im_context_signals_registered (e_text_event): Remove text->im_context signals handler connect/disconnect from here. (e_text_set_property): Added them here, now they will be invoked only @ text->im_context creation time, or re-set or at e_text_dispose. Also focus_out events does not affect the signals as they used to. svn path=/trunk/; revision=27024
* added castRadek Doulik2004-06-111-13/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2004-06-10 Radek Doulik <rodo@ximian.com> * gal/a11y/e-table/gal-a11y-e-table-click-to-add.c (idle_do_action): added cast * gal/a11y/e-table/gal-a11y-e-cell-tree.c (gal_a11y_e_cell_tree_new): added cast * gal/a11y/e-table/gal-a11y-e-cell.c: added #include <gtk/gtkwindow.h> * gal/e-text/e-text.c (_get_position): removed unused variable * gal/e-text/e-completion.c: #if 0'ed e_completion_sort * tests/test-text.c (create_entry): removed unused variables added #include "gal/widgets/e-canvas-utils.h" added #include "gal/e-text/e-text-model.h" (create_text): removed unused variables (create_ro_text): ditto * tests/test-table-1.c (create_table): added cast * tests/test-completion.c (main): added cast * gal/a11y/e-text/gal-a11y-e-text.c (et_get_text): return NULL if check fails added #include <string.h> for strlen (et_get_text_after_offset): fixed typo defalut --> default (et_get_text_at_offset): ditto (et_get_character_extents): removed unused variables (et_set_selection): ditto (_et_command_cb): added default: label to quiet compiler * gal/a11y/e-table/gal-a11y-e-table-click-to-add-factory.c (gal_a11y_e_table_click_to_add_factory_create_accessible): return NULL if check fails * gal/a11y/e-table/gal-a11y-e-table-click-to-add.c (idle_do_action): fixed wrong cast (idle_do_action): removed unused variables (etcta_ref_child): return NULL if check fails (gal_a11y_e_table_click_to_add_new): ditto (gal_a11y_e_table_click_to_add_new): removed unused variable * gal/a11y/e-table/gal-a11y-e-table-item-factory.c (gal_a11y_e_table_item_factory_create_accessible): return NULL if fails (gal_a11y_e_table_item_factory_create_accessible): added cast (gal_a11y_e_table_item_factory_create_accessible): removed unused variable * gal/a11y/e-table/gal-a11y-e-table-item.c (eti_dispose): removed unused variable (eti_get_parent): ditto (eti_get_n_children): ditto (eti_ref_child): ditto (eti_get_index_in_parent): ditto (eti_ref_accessible_at_point): return value (NULL) (cell_destroyed): removed unused variable (cell_destroyed): ditto (table_add_row_selection): ditto added #inclued <string.h> for memset, memmove (eti_rows_inserted): removed unused variable (eti_rows_deleted): ditto (eti_header_structure_changed): ditto * gal/a11y/e-table/gal-a11y-e-cell-popup.c (gal_a11y_e_cell_popup_class_init): removed unused variable added #include "gal-a11y-e-cell-registry.h" (popup_cell_action): removed unused variable * gal/a11y/e-table/gal-a11y-e-cell-toggle.c (toggle_cell_action): removed unused variable * gal/a11y/e-table/gal-a11y-e-cell-tree.c: added #include "gal-a11y-e-cell-registry.h" (gal_a11y_e_cell_tree_new): add cast (gal_a11y_e_cell_tree_new): removed unused variable * gal/a11y/e-table/gal-a11y-e-cell-text.c: added #include <string.h> (ect_remove_selection): removed unused variable (ect_copy_text): added cast (ect_delete_text): ditto (ect_paste_text): ditto (ect_init): ditto * gal/a11y/e-table/gal-a11y-e-cell.c (eti_grab_focus): added cast (eti_grab_focus): ditto (eti_grab_focus): return TRUE (grab was successful) added #include <atk/atkstateset.h> * gal/a11y/e-table/gal-a11y-e-tree.c: added #include "gal-a11y-e-table-item.h" (gal_a11y_e_tree_new): removed unused variable * gal/e-text/e-text.c (_do_tooltip): removed unused variable (e_text_event): added cast (primary_clear_cb): removed unused variable (_get_position): ditto (_get_position): ditto #if 0'ed unused prototypes * gal/e-text/e-text-model.c (e_text_model_real_insert_length): removed unused variables * gal/e-text/e-completion.c (e_completion_sort): #if'0 ed, as it's not used anywhere * gal/widgets/e-reflow.c (items_inserted): remove unused variables * gal/widgets/e-categories.c (e_categories_get_property): remove unused variable * gal/widgets/e-categories-master-list-dialog.c (dialog_destroyed): added cast * gal/widgets/e-categories-master-list-combo.c (ecmlc_ecml_changed): remove unused variable * gal/widgets/color-palette.c: include string.h for memset prototype svn path=/trunk/; revision=26289
* process only if len > 0Radek Doulik2004-06-091-30/+33
| | | | | | | | | | 2004-06-09 Radek Doulik <rodo@ximian.com> * gal/e-text/e-text.c (capitalize): process only if len > 0 Fixes #51078 svn path=/trunk/; revision=26270
* [ fixes bug #51897 ]Chris Toshok2004-04-021-11/+19
| | | | | | | | | | | | | | 2004-04-01 Chris Toshok <toshok@ximian.com> [ fixes bug #51897 ] * gal/e-text/e-text.c (insert_preedit_text): only reset the layout attrs if there is some preedit text to insert. also, try getting text->layout's attributes before creating a new list. this will keep us from overwriting existing attributes and wiping out the underlining for objects. svn path=/trunk/; revision=25294
* it's possible to get to this function without the EText ever beingChris Toshok2004-02-031-0/+7
| | | | | | | | | | | 2004-02-03 Chris Toshok <toshok@ximian.com> * gal/e-text/e-text.c (e_text_command): it's possible to get to this function without the EText ever being realized. Since we create the layout in realize(), let's just create it here too. Fixes crash bug 46165 (aka "The Bug with a million dups"). svn path=/trunk/; revision=24579
* Use button->time for the mouse click event, so that the popup stays up onRodney Dawes2004-01-281-1/+1
| | | | | | | | | | | 2004-01-27 Rodney Dawes <dobey@ximian.com> * gal/e-text/e-text.c (popup_targets_received): Use button->time for the mouse click event, so that the popup stays up on button release Fixes #47548 svn path=/trunk/; revision=24483
* fix double free of the button event.Chris Toshok2004-01-281-1/+0
| | | | | | | | | 2004-01-27 Chris Toshok <toshok@ximian.com> * gal/e-text/e-text.c (popup_targets_received): fix double free of the button event. svn path=/trunk/; revision=24481
* free event (e_text_do_popup): copy the event so we have good dataJP Rosevear2004-01-071-1/+2
| | | | | | | | | | | 2004-01-06 JP Rosevear <jpr@ximian.com> * gal/e-text/e-text.c (popup_targets_received): free event (e_text_do_popup): copy the event so we have good data Fixes #51956 svn path=/trunk/; revision=24071
* Support for preedit in e-text widgets.Suresh Chandrasekharan2003-10-151-11/+81
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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
* GalA11yETextFactory should inherit from AtkObjectFactory not AtkObject.Tim Wo2003-09-121-0/+8
| | | | | | | | | | | | | 2003-09-08 Tim Wo <tim.wo@sun.com> * gal/a11y/e-text/gal-a11y-e-text-factory.h: GalA11yETextFactory should inherit from AtkObjectFactory not AtkObject. (#47097). * gal/a11y/e-text/gal-a11y-e-text.c (et_class_init): Set value for "component_parent_iface". (#47097) * gal/e-text/e-text.c (e_text_class_init): Added registration code for GalA11yETextFactory. (#47097) svn path=/trunk/; revision=22551
* filter S-F10 key binding, and show popup menu. (popup_menu_placement_cb):Maxx Cao2003-08-131-4/+48
| | | | | | | | | | | 2003-08-10 Maxx Cao <maxx.cao@sun.com> * gal/e-text/e-text.c (e_text_event): filter S-F10 key binding, and show popup menu. (popup_menu_placement_cb): function added to adjust popup menu position.+ (popup_targets_received): show popup menu in different ways, according to whether it's invoked by mouse click or key binding. svn path=/trunk/; revision=22204
* [ fixes several utf8/pango related problems, including bugs #41288,Chris Toshok2003-05-141-196/+335
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2003-05-13 Chris Toshok <toshok@ximian.com> [ fixes several utf8/pango related problems, including bugs #41288, #42596, #42604 ] * configure.in (GAL_CURRENT): bump to 3, per mkestner. (GAL_REVISION): drop to 0, per mkestner. * gal/e-text/e-text.c (reset_layout_attrs): we need to convert the start/end bounds of the object to byte indices for the attribute. (reset_layout): in the layout == NULL case don't create the layout then immediately set it again with the same text. also, we need to convert selection_start to a byte index before calling pango_layout_get_cursor_pos. (e_text_draw): remove some #ifdef 0'd code, move the calculation of our initial clip_rect below the xpos/ypos assignments so we don't duplicate the expression. Fix the selection drawing in the multiline case so that it actually works, instead of assuming that all ETexts only have 1 line *boggle*. (get_position_from_xy): this needs to return a utf8 offset. (e_text_copy_clipboard): convert sel_start/sel_end to byte indices before copying. (primary_get_cb): same. (paste_received): validate the input here, and drop the length parameter from e_text_insert. (next_word): convert from an utf8 offset on entry to this function, and return a utf8 offset when we're done. also, remove the call the g_unichar_validate. we validate at all points where text is inserted. (find_offset_into_line): new function used in the backward/forward line code. find the utf8 offset into a line (the number of utf8 characters from a prior \n or beginning of the string.) (_get_position): in general there are lots of changes here because text->selection_start/text->selection_end are utf8 offsets, not byte offsets. fix E_TEP_START_OF_LINE so that hitting Ctrl-a when you're at the beginning of a line doesn't take you to the beginning of the previous line. fix E_TEP_END_OF_LINE in an analogous fashion. for E_TEP_FORWARD_CHARACTER we just increment by 1. for E_TEP_BACKWARD_CHARACTER we just decrement by 1. for E_TEP_BACKWARD_WORD we drop the g_unichar_validate call and simplify things a bit. reimplement E_TEP_FORWARD_LINE/E_TEP_BACKWARD_LINE so they find the current offset into the line, then scan forward/backward for the next/prev line, and put us at the right offset on that line. fix E_TEP_SELECT_WORD so double clicking in the space between words doesn't select both words - if you double click on the trailing edge of the space, it selects the next word. leading edge selects the previous one. for E_TEP_SELECT_ALL use g_utf8_strlen. (e_text_insert): everything that calls this passes a \0 terminated string, so we assume it's \0 terminated (the old code did as well, with calls to strlen) and drop the length parameter. also make sure this is all utf8 happy. (capitalize): use g_utf8_offset_to_pointer instead of just adding text->text and start/end, and remove the validate call. also fix the call to e_text_model_delete and use e_text_model_insert_length instead of e_text_model_insert. (e_text_command): for E_TEP_INSERT, validate the input. for E_TEP_CAPS just use MAX instead of the neat little hack. also, fix the scrolling so that it scrolls properly in both X and Y directions (there are still some hiccups but it's much much better than previously). (e_text_commit_cb): validate the input here. * gal/e-text/e-text-model.c (struct _ETextModelPrivate): just use a GString here and get rid of MAX_LENGTH. (e_text_model_dispose): free GString. (e_text_model_real_validate_position): clean this up a bit. (e_text_model_real_get_text): return the contents of the GString. (e_text_model_real_get_text_length): use g_utf8_strlen here. (e_text_model_real_set_text): convert to GString (e_text_model_real_insert): just call e_text_model_insert_length here instead of duplicating the function. (e_text_model_real_insert_length): convert to utf8/gstring. i.e. convert @position and @length to a bytes and use g_string_insert_len. (e_text_model_real_delete): same, with g_string_erase. (e_text_model_get_text_length): use g_utf8_strlen (e_text_model_strdup_nth_object): convert the length of the object to bytes before copying. (e_text_model_get_nth_object_bounds): calculate start/end properly for u svn path=/trunk/; revision=21163
* Fixed typo in gal/e-text/e-text.c.Christian Neumair2003-05-061-1/+1
| | | | svn path=/trunk/; revision=21105
* gal/e-text/e-text.[ch] : break EFont dependencyMike Kestner2003-04-091-2/+0
| | | | | | | | 2003-04-08 Mike Kestner <mkestner@ximian.com> gal/e-text/e-text.[ch] : break EFont dependency svn path=/trunk/; revision=20763
* set handle_popup to TRUE on the EText.Chris Toshok2003-04-041-7/+30
| | | | | | | | | | | | | | | | | | | | | 2003-04-03 Chris Toshok <toshok@ximian.com> * gal/e-text/e-entry.c (e_entry_init): set handle_popup to TRUE on the EText. * gal/e-text/e-text.c (e_text_set_property): add setter for handle_popup. (e_text_get_property): add getter for handle_popup. (e_text_event): only do our special popup handling if handle_popup is true. otherwise, pass the event along. (e_text_class_init): install the handle_popup property. (e_text_init): init handle_popup to FALSE, so we get default behavior in most cases. * gal/e-text/e-text.h: add "handle_popup" field, so the user of an EText can decide whether to handle popups themselves. svn path=/trunk/; revision=20664
* emit a keypress signal. yes, i know this might not correspond to a singleChris Toshok2003-04-031-0/+2
| | | | | | | | | 2003-04-03 Chris Toshok <toshok@ximian.com> * gal/e-text/e-text.c (e_text_commit_cb): emit a keypress signal. yes, i know this might not correspond to a single keypress, but.. svn path=/trunk/; revision=20659
* ifdef gtk_widget_get_clipboard since we need to build against gtk 2.0.Chris Toshok2003-04-031-3/+24
| | | | | | | | | | | | 2003-04-02 Chris Toshok <toshok@ximian.com> * gal/e-text/e-text.c (e_text_copy_clipboard): ifdef gtk_widget_get_clipboard since we need to build against gtk 2.0. (e_text_update_primary_selection): same. (e_text_paste): same. (e_text_do_popup): same. svn path=/trunk/; revision=20657
* only connect the signals if !im_context_signals_registered. (e_text_init):Chris Toshok2003-04-031-7/+12
| | | | | | | | | | | | | 2003-04-02 Chris Toshok <toshok@ximian.com> * gal/e-text/e-text.c (e_text_event): only connect the signals if !im_context_signals_registered. (e_text_init): init im_context_signals_registered = FALSE. * gal/e-text/e-text.c (struct _EText): add im_context_signals_registered. svn path=/trunk/; revision=20656
* just disconnect based on DATA, so we only need 1 call. (e_text_event):Chris Toshok2003-04-031-20/+4
| | | | | | | | | | 2003-04-02 Chris Toshok <toshok@ximian.com> * gal/e-text/e-text.c (e_text_dispose): just disconnect based on DATA, so we only need 1 call. (e_text_event): same. svn path=/trunk/; revision=20655
* [ either fixes #39702 or comes damn, damn close. also, fixes EText to notChris Toshok2003-04-031-432/+440
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2003-04-02 Chris Toshok <toshok@ximian.com> [ either fixes #39702 or comes damn, damn close. also, fixes EText to not suck *nearly* as much. ] * gal/util/e-marshal.list: add NONE:POINTER,INT,OBJECT. * gal/e-text/e-entry.h: (struct _EEntryClass): popup -> populate_popup. * gal/e-text/e-entry.c (proxy_changed): rename, the old name was too damn long. (proxy_activate): same. (proxy_populate_popup): same, and change from popup to populate_popup. (e_entry_init): track change to cb names, and populate_popup. also, pass the ECanvas's im_context to the EText. (e_entry_class_init): POPUP -> POPULATE_POPUP. * gal/e-text/e-text.h (struct _EText): remove the old selection stuff, and add im_context/reset_im_context fields. (struct _ETextClass): popup -> populate_popup. * gal/e-text/e-text.c (e_text_dispose): remove all the GtkInvisible based selection stuff, and disconnect from/unref the im_context. (e_text_set_property): add "im_context" handling. (e_text_get_property): same. (e_text_event): connect/disconnect from the IM context's signals in the FOCUS_CHANGE handler. in the KEY_PRESS/RELEASE handler, use gtk_im_context_filter_keypress if we have an im_context. also, use e_text_do_popup now instead of just emitting the "popup" signal. (e_text_copy_clipboard): new function. (e_text_delete_selection): new function. (e_text_cut_clipboard): new function. (e_text_paste_clipboard): new function. (e_text_select_all): new function. (primary_get_cb): new function, handle requests for the primary selection when we're the owner. (primary_clear_cb): new function, unfinished. (e_text_update_primary_selection): new function. (paste_received): new function, insert pasted text. (e_text_paste): new function, (popup_menu_detach): new function, not needed really. (popup_targets_received): new function, pop up the popup once we have the selection information necessary to sensitize the c/c/p buttons. (e_text_do_popup): new function, request the selection. (e_text_reset_im_context): new function. (e_text_command): for E_TEP_SELECT, call e_text_update_primary_selection. for E_TEP_DELETE/INSERT, _delete_selection -> e_text_delete_selection. for E_TEP_COPY, call e_text_copy_clipboard. for E_TEP_PASTE/E_TEP_GET_SELECTION call e_text_paste. (e_text_class_init): change the "popup" signal to "populate_popup". Also, add the "im_context" property. (e_text_commit_cb): new function. IM context callback. (e_text_retrieve_surrounding_cb): new function. IM context callback. (e_text_delete_surrounding_cb): new function. IM context callback. unfinished. svn path=/trunk/; revision=20653
* stop drawing that annoying focus rectangle.Chris Toshok2003-04-021-1/+1
| | | | | | | | | 2003-04-01 Chris Toshok <toshok@ximian.com> * gal/e-text/e-text.c (e_text_draw): stop drawing that annoying focus rectangle. svn path=/trunk/; revision=20626
* [ fixes bug #39508 ] add back in some suitably pango-ized code to getChris Toshok2003-04-021-5/+59
| | | | | | | | | | | 2003-04-01 Chris Toshok <toshok@ximian.com> [ fixes bug #39508 ] * gal/e-text/e-text.c (e_text_command): add back in some suitably pango-ized code to get EText's scrolling horizontally as you move the cursor. svn path=/trunk/; revision=20625
* Added prototype for show_pango_rectangle()Jeffrey Stedfast2003-03-101-0/+3
| | | | | | | | 2003-03-10 Jeffrey Stedfast <fejj@ximian.com> * gal/e-text/e-text.c: Added prototype for show_pango_rectangle() svn path=/trunk/; revision=20233
* fix drawing bugs, and disable the stupid looking focus rect, since I can'tChris Toshok2003-03-081-14/+14
| | | | | | | | | | | | | | 2003-03-07 Chris Toshok <toshok@ximian.com> * gal/e-text/e-text.c (e_text_draw): fix drawing bugs, and disable the stupid looking focus rect, since I can't find a theme that uses them. (e_text_event): force redraw in the focus-out case if the cursor is shown (so we can erase it), and also trick ourselves into drawing it immediately (by setting it to FALSE) in the focus-in case. svn path=/trunk/; revision=20223
* Don't unref the GtkInvisible - instead, destroy it.Hans Petter Jansson2003-02-251-2/+2
| | | | | | | | | 2003-02-24 Hans Petter Jansson <hpj@ximian.com> * gal/e-text/e-text.c (e_text_dispose): Don't unref the GtkInvisible - instead, destroy it. svn path=/trunk/; revision=20040
* ignore test-completion.Chris Toshok2003-02-101-3/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2003-02-09 Chris Toshok <toshok@ximian.com> * tests/.cvsignore: ignore test-completion. * tests/test-completion.c: new program, completion test. * tests/Makefile.am (noinst_PROGRAMS): add test-completion. * gal/e-text/Makefile.am: remove e-completion-test from the build here, moving it to ../../tests. * gal/e-text/e-completion.c (e_completion_class_init): we've removed the restart, cancel, clear, and lost signals. Also, we've renamed some so it's easier to tell from the name which it is (virtual func or signal.) (e_completion_dispose): remove call to clear_search_stack, as we don't do auto-refinement anymore. (e_completion_clear): gone. (e_completion_push_search): gone. (e_completion_pop_search): gone. (e_completion_clear_search_stack): gone. (e_completion_refine_search): gone. (e_completion_unrefine_search): gone. (e_completion_begin_search): substantially clear this up, since we don't have the refinement stuff anymore. Also, the call to request_completion is a virtual function call, not a signal. (e_completion_match_count): always return matches->len here, never match_count, which is gone (with the refinement stuff) (e_completion_foreach_match): remove the hit_count stuff. (e_completion_restart): gone. (e_completion_lost_match): gone. (e_completion_end_search): remove the sorting stuff from here (and the call to restart.) the etable sorting stuff will have to take up the slack, but for now there's no reason to restart the search here. * gal/e-text/e-completion.h (struct _ECompletionClass): straighten out what's a virtual function and what's a signal, instead of using signals for both. Also, remove the auto_refine stuff, as it's not used. * gal/e-text/e-completion-view.c (e_completion_view_size_request): make the damn drop down window bigger (100 pixels, or the requisition height, whichever is bigger.) (e_completion_view_disconnect): remove handling for signals that are gone. (restart_completion_cb): gone. (cancel_completion_cb): gone. (clear_completion_cb): gone. (lost_completion_cb): gone. (e_completion_view_construct): track new names of ECompletion signals. * gal/e-text/e-completion-view.h (struct _ECompletionView): remove restart_signal_id, cancel_signal_id, clear_signal_id, and lost_signal_id. * gal/e-text/e-entry.c (get_borders): new function, ala gtkentry. (canvas_size_request): use get_borders instead of computing it here. (e_entry_init): remove duplicate assignment of emulate_label_resize. (e_entry_show_popup): remove some ifdef'ed crap. (e_entry_start_completion): don't cancel the completion before starting again. This keeps the popup from disappearing. * gal/e-text/e-completion-match.c (e_completion_match_construct): no more hit_count. * gal/e-text/e-completion-match.h (struct _ECompletionMatch): remove hit_count. * gal/e-text/e-completion-callbacks.[ch]: new class so we can use callbacks instead of subclassing. svn path=/trunk/; revision=19859
* (e_text_dispose): Renamed fromEttore Perazzoli2003-01-231-11/+9
| | | | | | | | e_text_destroy; chain up to ::dispose instead of ::destroy. (e_text_dispose, e_text_class_init): Override ::dispose, not ::destroy. svn path=/trunk/; revision=19577
* reverse part of the patch from 1/15.Chris Toshok2003-01-181-1/+1
| | | | | | | | | 2003-01-17 Chris Toshok <toshok@ximian.com> * gal/e-text/e-text.c (show_pango_rectangle): reverse part of the patch from 1/15. svn path=/trunk/; revision=19510
* apply the patch NotZed and I came up with to fix the height of theChris Toshok2003-01-161-5/+6
| | | | | | | | | | 2003-01-15 Chris Toshok <toshok@ximian.com> * gal/e-text/e-text.c (show_pango_rectangle): apply the patch NotZed and I came up with to fix the height of the evolution composer entries. svn path=/trunk/; revision=19486
* lots of stuff, add 2 e-text widgets, 1 readonly, the other writable (thatChris Toshok2002-12-091-485/+78
| | | | | | | | | | | | | | | | | | | | | | | | | | 2002-12-08 Chris Toshok <toshok@ximian.com> * tests/test-text.c: lots of stuff, add 2 e-text widgets, 1 readonly, the other writable (that uses the uri model..) * gal/e-text/e-text.[ch]: lots of pango changes. we don't do *anything* with gdk/e fonts now. everything is pango. There are still some issues while editting but display should more or less work properly now, and without all the performance problems. * gal/e-text/e-completion-view.c (e_completion_view_expose_event): use gtk_widget_send_expose instead of gtk_widget_event so we don't get the annoying gtk warning. * gal/e-text/e-entry.c (e_entry_dispose): make sure both the gdk and gtk grabs are removed. (e_entry_class_init): fill_color_gdk is a boxed type, not pointer. * gal/e-text/e-text-model-uri.h (E_TYPE_TEXT_MODEL_URI): oops, this should be e_text_model_uri_get_type, not e_text_model_get_type. svn path=/trunk/; revision=19054
* rework this from the gal-2 branch, clahey's patch, and the stuff i'd doneChris Toshok2002-11-301-107/+107
| | | | | | | | | | 2002-11-29 Chris Toshok <toshok@ximian.com> * gal/e-text/e-text.c: rework this from the gal-2 branch, clahey's patch, and the stuff i'd done since. it's working *MUCH* better now. svn path=/trunk/; revision=18957
* commit clahey's original pango work.Chris Toshok2002-11-201-916/+389
| | | | | | | | 2002-11-19 Chris Toshok <toshok@ximian.com> * gal/e-text/e-text.[ch]: commit clahey's original pango work. svn path=/trunk/; revision=18850
* fix c&p typo.Chris Toshok2002-11-171-2/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2002-11-16 Chris Toshok <toshok@ximian.com> * gal/widgets/e-reflow.c (e_reflow_class_init): fix c&p typo. * gal/widgets/e-categories-master-list-dialog.c: switch to GtkDialogism's. * gal/widgets/gal-categories.[ch]: same. * gal/widgets/e-categories-master-list-dialog.glade: libglade-convert. * gal/widgets/e-categories.glade: same. * gal/util/e-text-event-processor.[ch]: subclass this from GObject. * gal/util/e-text-event-processor-emacs-like.[ch]: clean up the gtk cruft a bit. * gal/e-text/e-text.c (_get_tep): remove the _sink call. (e_text_init): same. * gal/e-text/e-text-model.[ch]: subclass this from GObject instead of GtkObject. svn path=/trunk/; revision=18808
* Lots of GObject work.Chris Toshok2002-11-171-410/+582
| | | | | | | | | | | | | | | | | | | | | | | | 2002-11-16 Chris Toshok <toshok@ximian.com> * gal/e-text/e-completion-test.c: Lots of GObject work. * gal/e-text/e-completion-view.[ch]: same. * gal/e-text/e-completion.[ch]: same. * gal/e-text/e-entry.[ch]: same. * gal/e-text/e-table-text-model.[ch]: same. * gal/e-text/e-text-model-uri.[ch]: same. * gal/e-text/e-text-model.[ch]: same. * gal/e-text/e-text-test.c: same. * gal/e-text/e-text.[ch]: same. svn path=/trunk/; revision=18800
* merging the gal-2 branch back to the trunk.Mike Kestner2002-11-011-106/+106
| | | | | | merging the gal-2 branch back to the trunk. svn path=/trunk/; revision=18471
* take a clip_height and use it to set the maximum number of lines ifJP Rosevear2002-09-111-20/+15
| | | | | | | | | | 2002-09-10 JP Rosevear <jpr@ximian.com> * gal/e-text/e-text.c (line_splitter): take a clip_height and use it to set the maximum number of lines if necessary (split_into_lines): pass clip_height arg svn path=/trunk/; revision=18032
* Added debugging printfs. (e_text_request_paste): Fixed the order ofChristopher James Lahey2002-06-061-2/+14
| | | | | | | | | | | 2002-06-05 Christopher James Lahey <clahey@ximian.com> * gal/e-text/e-text.c: Added debugging printfs. (e_text_request_paste): Fixed the order of setting last_type_request before calling gtk_selection_convert due to a reentrancy bug. svn path=/trunk/; revision=17119
* Reflow and redraw when the style gets set.Christopher James Lahey2002-06-041-318/+325
| | | | | | | | | 2002-06-03 Christopher James Lahey <clahey@ximian.com> * gal/e-text/e-text.c, gal/e-text/e-text.h (e_text_style_set): Reflow and redraw when the style gets set. svn path=/trunk/; revision=17086
* Switch from gnome_canvas_item_grab to e_canvas_item_grab.Christopher James Lahey2002-05-101-5/+10
| | | | | | | | | | | | | | | | | | | 2002-05-09 Christopher James Lahey <clahey@ximian.com> * gal/e-text/e-text.c: Switch from gnome_canvas_item_grab to e_canvas_item_grab. * gal/widgets/e-canvas.c, gal/widgets/e-canvas.h (e_canvas_item_grab, e_canvas_item_ungrab): Added these functions. From gal/e-table/ChangeLog: 2002-05-09 Christopher James Lahey <clahey@ximian.com> * e-table-item.c, e-table-item.h: Switched from gnome_canvas_item_grab to e_canvas_item_grab. svn path=/trunk/; revision=16738
* Make the style here match the proper widget style to emulate a label or anChristopher James Lahey2002-05-031-1/+1
| | | | | | | | | 2002-05-02 Christopher James Lahey <clahey@ximian.com> * gal/e-text/e-text.c (e_text_draw): Make the style here match the proper widget style to emulate a label or an entry. svn path=/trunk/; revision=16670
* Bumped the version number to 0.19.99.5.Christopher James Lahey2002-02-071-22/+79
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2002-02-07 Christopher James Lahey <clahey@ximian.com> * configure.in: Bumped the version number to 0.19.99.5. * gal/Makefile.am (libgal_la_LIBADD): Added menus/gal-view-instance-save-as-dialog.lo. * gal/e-text/e-text.c (next_word): Contains refactored code from the E_TEP_FORWARD_WORD case of e_text_command. (e_text_command): Implemented E_TEP_CAPS. From gal/menus/ChangeLog: 2002-02-07 Christopher James Lahey <clahey@ximian.com> * Makefile.am (glade_DATA): Added gal-view-instance-save-as-dialog.glade. (libgalmenus_la_SOURCES): Added gal-view-instance-save-as-dialog.c. (libgalmenusinclude_HEADERS): Added gal-view-instance-save-as-dialog.h. * gal-view-collection.c, gal-view-collection.h (gal_view_collection_append_with_title): Added this new version of the append function that sets the title and returns the new id as well. (gal_view_collection_set_nth_view): Added this function to save over another view. (gal_view_collection_get_default_view, gal_view_collection_set_default_view): Added the concept of a default view for GalViewCollections. * gal-view-etable.c, gal-view-etable.h (gal_view_etable_attach_table, gal_view_etable_attach_tree, gal_view_etable_detach): Added functions to set the state of a table or tree and then send GalView "changed" signals whenever that state changes. (gal_view_etable_set_state): New function to set the ETableState of a GalViewETable. * gal-view-instance-save-as-dialog.c, gal-view-instance-save-as-dialog.glade, gal-view-instance-save-as-dialog.h: New dialog to save the current custom view as a named view. * gal-view-instance.c, gal-view-instance.h (gal_view_instance_set_custom_view): New function to set the state of an instance to custom view and set the custom view to a particular GalView. (gal_view_instance_exists): New function to check if this particular instance has ever been opened before. Use before gal_view_instance_load. (gal_view_instance_save_as): New function to open a save as dialog. (gal_view_instance_load): Added this function which used to be part of _construct. This function can be called multiple times, and those extra times will be ignored. This is so you can set a default view before loading. (gal_view_instance_get_default_view, gal_view_instance_set_default_view): Set the default view for this instance. If unset, this falls back to the default view for the corresponding GalViewCollection. svn path=/trunk/; revision=15590
* Request a reflow and an update when the text model changes. Fixes XimianChristopher James Lahey2002-01-211-3/+4
| | | | | | | | | | | | 2002-01-20 Christopher James Lahey <clahey@ximian.com> * gal/e-text/e-text.c (e_text_text_model_changed): Request a reflow and an update when the text model changes. Fixes Ximian bug #16459. (e_text_set_arg): (ARG_TEXT) Don't set the number of lines to one here. svn path=/trunk/; revision=15411
* Handle the case of a 0 length string properly here.Christopher James Lahey2002-01-151-0/+6
| | | | | | | | | 2002-01-14 Christopher James Lahey <clahey@ximian.com> * gal/e-text/e-text.c (line_splitter): Handle the case of a 0 length string properly here. svn path=/trunk/; revision=15323
* Reworked to fix bugs related to breaking text on newlines. Some fairlyJon Trowbridge2001-12-281-169/+95
| | | | | | | | | | 2001-12-27 Jon Trowbridge <trow@ximian.com> * gal/e-text/e-text.c (split_into_lines): Reworked to fix bugs related to breaking text on newlines. Some fairly substantial code duplication was removed in the process. svn path=/trunk/; revision=15219
* Don't crash if the text string is NULL. (text_draw_with_objects): Don'tJon Trowbridge2001-12-111-1/+4
| | | | | | | | | | | 2001-12-10 Jon Trowbridge <trow@ximian.com> * gal/e-text/e-text.c (text_width_with_objects): Don't crash if the text string is NULL. (text_draw_with_objects): Don't crash if the text string is NULL. (Fixes #16359) svn path=/trunk/; revision=14954
* Calc height here if we need it to check the y position of the cursor.Christopher James Lahey2001-10-301-0/+7
| | | | | | | | | 2001-10-30 Christopher James Lahey <clahey@ximian.com> * gal/e-text/e-text.c (e_text_reflow): Calc height here if we need it to check the y position of the cursor. svn path=/trunk/; revision=14443
* Set text->revert = NULL here. (e_text_cancel_editing): Only revert ifChristopher James Lahey2001-10-291-1/+4
| | | | | | | | | | 2001-10-29 Christopher James Lahey <clahey@ximian.com> * gal/e-text/e-text.c (e_text_stop_editing): Set text->revert = NULL here. (e_text_cancel_editing): Only revert if text->revert is non-null. svn path=/trunk/; revision=14334
* Bumped version number here to 0.15.99.7.Christopher James Lahey2001-10-291-3/+17
| | | | | | | | | | | | | 2001-10-29 Christopher James Lahey <clahey@ximian.com> * configure.in: Bumped version number here to 0.15.99.7. * gal/e-text/e-text.c, gal/e-text/e-text.h (e_text_stop_editing): Exported this function. (e_text_cancel_editing): New function. Allows you to revert edits. svn path=/trunk/; revision=14332
* Changed the license announcement at the top of these files.Christopher James Lahey2001-10-271-5/+22
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2001-10-26 Christopher James Lahey <clahey@ximian.com> * gal/e-paned/e-hpaned.c, gal/e-paned/e-hpaned.h, gal/e-paned/e-paned.c, gal/e-paned/e-paned.h, gal/e-paned/e-vpaned.c, gal/e-paned/e-vpaned.h, gal/e-text/e-completion-match.c, gal/e-text/e-completion-match.h, gal/e-text/e-completion-test.c, gal/e-text/e-completion-view.c, gal/e-text/e-completion-view.h, gal/e-text/e-completion.c, gal/e-text/e-completion.h, gal/e-text/e-entry-test.c, gal/e-text/e-entry.c, gal/e-text/e-entry.h, gal/e-text/e-table-text-model.c, gal/e-text/e-table-text-model.h, gal/e-text/e-text-model-repos.c, gal/e-text/e-text-model-repos.h, gal/e-text/e-text-model-test.c, gal/e-text/e-text-model-uri.c, gal/e-text/e-text-model-uri.h, gal/e-text/e-text-model.c, gal/e-text/e-text-model.h, gal/e-text/e-text.c, gal/e-text/e-text.h, gal/util/e-bit-array.c, gal/util/e-bit-array.h, gal/util/e-cache.c, gal/util/e-cache.h, gal/util/e-iconv.c, gal/util/e-iconv.h, gal/util/e-sorter-array.c, gal/util/e-sorter-array.h, gal/util/e-sorter.c, gal/util/e-sorter.h, gal/util/e-text-event-processor-emacs-like.c, gal/util/e-text-event-processor-emacs-like.h, gal/util/e-text-event-processor-types.h, gal/util/e-text-event-processor.c, gal/util/e-text-event-processor.h, gal/util/e-util.c, gal/util/e-util.h, gal/util/e-xml-utils.c, gal/util/e-xml-utils.h, gal/widgets/color-group.c, gal/widgets/color-group.h, gal/widgets/color-palette.c, gal/widgets/color-palette.h, gal/widgets/e-canvas-utils.c, gal/widgets/e-canvas-utils.h, gal/widgets/e-canvas-vbox.c, gal/widgets/e-canvas-vbox.h, gal/widgets/e-canvas.c, gal/widgets/e-canvas.h, gal/widgets/e-categories-master-list-array.c, gal/widgets/e-categories-master-list-array.h, gal/widgets/e-categories-master-list-combo.c, gal/widgets/e-categories-master-list-combo.h, gal/widgets/e-categories-master-list-dialog-model.c, gal/widgets/e-categories-master-list-dialog-model.h, gal/widgets/e-categories-master-list-dialog.c, gal/widgets/e-categories-master-list-dialog.h, gal/widgets/e-categories-master-list.c, gal/widgets/e-categories-master-list.h, gal/widgets/e-categories.c, gal/widgets/e-categories.h, gal/widgets/e-colors.c, gal/widgets/e-colors.h, gal/widgets/e-cursors.c, gal/widgets/e-cursors.h, gal/widgets/e-font.c, gal/widgets/e-font.h, gal/widgets/e-gui-utils.c, gal/widgets/e-gui-utils.h, gal/widgets/e-hscrollbar.c, gal/widgets/e-hscrollbar.h, gal/widgets/e-popup-menu.c, gal/widgets/e-popup-menu.h, gal/widgets/e-printable.c, gal/widgets/e-printable.h, gal/widgets/e-reflow-model.c, gal/widgets/e-reflow-model.h, gal/widgets/e-reflow-sorted.c, gal/widgets/e-reflow-sorted.h, gal/widgets/e-reflow.c, gal/widgets/e-reflow.h, gal/widgets/e-scroll-frame.c, gal/widgets/e-scroll-frame.h, gal/widgets/e-selection-model-array.c, gal/widgets/e-selection-model-array.h, gal/widgets/e-selection-model-simple.c, gal/widgets/e-selection-model-simple.h, gal/widgets/e-selection-model.c, gal/widgets/e-selection-model.h, gal/widgets/e-unicode.c, gal/widgets/e-unicode.h, gal/widgets/e-vscrollbar.c, gal/widgets/e-vscrollbar.h, gal/widgets/gtk-combo-box.c, gal/widgets/gtk-combo-box.h, gal/widgets/gtk-combo-stack.c, gal/widgets/gtk-combo-stack.h, gal/widgets/gtk-combo-text.c, gal/widgets/gtk-combo-text.h, gal/widgets/test-color.c, gal/widgets/test-e-font.c, gal/widgets/test-e-font.h, gal/widgets/test-font-loading.c, gal/widgets/widget-color-combo.c, gal/widgets/widget-color-combo.h, gal/widgets/widget-pixmap-combo.c, gal/widgets/widget-pixmap-combo.h, src/e-table/e-table-sorted-variable.c, tests/test-define-views.c, tests/test-shortcut-bar.c, tests/test-table-1.c, tests/test-tree-1.c, tests/test-tree-2.c, tests/test-tree-3.c, tests/test-unicode.c: Changed the license announcement at the top of these files. svn path=/trunk/; revision=14158
* Bumped version to 0.15.99.4 for e-iconv changes.52001-10-261-1/+3
| | | | | | | | | | | | | | | | | | | 2001-10-25 <NotZed@Ximian.com> * configure.in: Bumped version to 0.15.99.4 for e-iconv changes. * gal/widgets/e-unicode.c (e_utf8_from_iconv_string_sized): " (e_utf8_to_iconv_string_sized): " (e_utf8_from_gtk_string_sized): " (e_utf8_to_gtk_string_sized): " * gal/widgets/e-font.c (e_font_to_native): s/iconv/e_iconv/ * gal/util/e-iconv.c (e_iconv): Implement a wrapper for iconv() to make sure we link with and execute the right iconv to match the right iconv_open. (BLAH!) svn path=/trunk/; revision=14111
* Use the widget's style's text_gc for drawing text if eitherChristopher James Lahey2001-10-231-13/+18
| | | | | | | | | | 2001-10-23 Christopher James Lahey <clahey@ximian.com> * gal/e-text/e-text.c (e_text_draw): Use the widget's style's text_gc for drawing text if either draw_background or draw_button is on. svn path=/trunk/; revision=13937
* Bumped version to 0.15.99.3 for EText's "draw_button" argument.Christopher James Lahey2001-10-231-0/+107
| | | | | | | | | | | | | | | | | | | | | | | | | 2001-10-23 Christopher James Lahey <clahey@ximian.com> * configure.in: Bumped version to 0.15.99.3 for EText's "draw_button" argument. * gal/e-text/e-entry.c: Forward the "draw_button" argument to the contained EText. * gal/e-text/e-text.c, gal/e-text/e-text.h (e_text_draw): Added new "draw_button" argument. If this is turned on and the first widget that's a parent of the containing canvas with GTK_NO_WINDOW turned off above the current one is a button, EText draws a button underneath itself to match the containing button. From gal/shortcut-bar/ChangeLog: 2001-10-23 Christopher James Lahey <clahey@ximian.com> * e-shortcut-bar.c (e_shortcut_bar_add_group): Turn on "draw_button" argument to EEntry. svn path=/trunk/; revision=13934
* Accept UTF8_STRING, UTF-8, and STRING targets when getting the selection.Christopher James Lahey2001-10-221-12/+113
| | | | | | | | | | 2001-10-22 Christopher James Lahey <clahey@ximian.com> * gal/e-text/e-text.c, gal/e-text/e-text.h (e_text_get_selection): Accept UTF8_STRING, UTF-8, and STRING targets when getting the selection. svn path=/trunk/; revision=13864
* Offer UTF8_STRING, UTF-8, COMPOUND_TEXT, STRING, and TEXT targets when weChristopher James Lahey2001-10-211-21/+70
| | | | | | | | | | 2001-10-21 Christopher James Lahey <clahey@ximian.com> * gal/e-text/e-text.c (e_text_get_invisible): Offer UTF8_STRING, UTF-8, COMPOUND_TEXT, STRING, and TEXT targets when we offer the selection. svn path=/trunk/; revision=13847
* Connect keys before we show the widget.Jon Trowbridge2001-10-191-2/+0
| | | | | | | | | 2001-10-18 Jon Trowbridge <trow@ximian.com> * gal/e-text/e-entry.c (e_entry_enable_completion_full): Connect keys before we show the widget. svn path=/trunk/; revision=13756
* Based on patches from Dan Nguyen <dnn@austin.ibm.com>.Christopher James Lahey2001-10-101-1/+1
| | | | | | | | | | | | | 2001-10-10 Christopher James Lahey <clahey@ximian.com> Based on patches from Dan Nguyen <dnn@austin.ibm.com>. * gal/Makefile.am (libgal_la_LDFLAGS): Added $(GTK_LIBS). * gal/e-text/e-text.c (e_text_event): Changed this from a C++ comment to a C comment. svn path=/trunk/; revision=13549
* add E_OBJECT_CLASS_ADD_SIGNALS and E_OBJECT_CLASS_TYPE to ease migrationMichael Meeks2001-10-051-5/+6
| | | | | | | | | | | | | | | 2001-10-05 Michael Meeks <michael@ximian.com> * gal/util/e-util.h: add E_OBJECT_CLASS_ADD_SIGNALS and E_OBJECT_CLASS_TYPE to ease migration to Gnome 2.0 from a single source base. * All C files: s/object_class->type,/E_OBJECT_CLASS_TYPE (object_class),/g; s/gtk_object_class_add_signals([^\(]*)\(([^,]*),([^,]*),([^\)]*)/ E_OBJECT_CLASS_ADD_SIGNALS\1(\2,\3,\4/; svn path=/trunk/; revision=13428
* Made it so that if allow_newlines is FALSE, pasting into ETexts doesn'tChristopher James Lahey2001-09-261-62/+78
| | | | | | | | | | | 2001-09-26 Christopher James Lahey <clahey@ximian.com> * gal/e-text/e-text.c, gal/e-text/e-text.h (_insert): Made it so that if allow_newlines is FALSE, pasting into ETexts doesn't insert carriage returns. Fixes Ximian bug #5761 and Ximian bug #9067. svn path=/trunk/; revision=13143
* remove redundant NULL checks since g_free handles NULLs. (e_text_destroy):Larry Ewing2001-09-181-8/+5
| | | | | | | | | | | | 2001-09-17 Larry Ewing <lewing@ximian.com> * gal/e-text/e-text.c (e_text_supply_selection): remove redundant NULL checks since g_free handles NULLs. (e_text_destroy): free the selection. It does appear to be a guarantee that we get a selection-clear event before we are destroyed. svn path=/trunk/; revision=12934
* If our text shrinks, make sure that the selection doesn't spill off overJon Trowbridge2001-09-101-0/+7
| | | | | | | | | | 2001-09-09 Jon Trowbridge <trow@ximian.com> * gal/e-text/e-text.c (e_text_text_model_changed): If our text shrinks, make sure that the selection doesn't spill off over the end of the reduced buffer. (Related to bug #8535) svn path=/trunk/; revision=12717
* Properly ref the font we pass in as an ARG_FONT_E. (_do_tooltip): RemovedJon Trowbridge2001-07-251-3/+2
| | | | | | | | | | | | | | | | | | 2001-07-25 Jon Trowbridge <trow@ximian.com> * gal/e-text/e-text.c (e_text_set_arg): Properly ref the font we pass in as an ARG_FONT_E. (_do_tooltip): Removed some crack. We no longer have to manually ref the font. The ref-counting now happens inside the set_arg function, as it should. (e_text_destroy): Set text->font to NULL after unrefing it. 2001-07-25 Jon Trowbridge <trow@ximian.com> * e-cell-text.c (ect_unrealize): Set text_view->font to NULL after we unref it. svn path=/trunk/; revision=11393
* Start editing immediately on a button_press that grabs the focus.Christopher James Lahey2001-07-151-27/+44
| | | | | | | | | | | 2001-07-15 Christopher James Lahey <clahey@ximian.com> * gal/e-text/e-text.c (e_text_event): Start editing immediately on a button_press that grabs the focus. e_canvas_item_grab_focus doesn't seem to get us the focus event until the event loop. Fixes Ximian bug #1766. svn path=/trunk/; revision=11111
* For E_TEP_END_OF_BUFFER, use the length in bytes, not the length inFederico Mena Quintero2001-07-101-1/+1
| | | | | | | | | | 2001-07-09 Federico Mena Quintero <federico@ximian.com> * gal/e-text/e-text.c (_get_position): For E_TEP_END_OF_BUFFER, use the length in bytes, not the length in characters --- this function is supposed to return byte offsets. svn path=/trunk/; revision=10941
* Destroy the tooltip if we're the owner when we're destroyed. Also, keep aChristopher James Lahey2001-07-081-1/+20
| | | | | | | | | | | | | | 2001-07-07 Christopher James Lahey <clahey@ximian.com> * gal/e-text/e-text.c, gal/e-text/e-text.h (e_text_destroy): Destroy the tooltip if we're the owner when we're destroyed. Also, keep a reference to the text object in case we get a signal on the window after the text object is destroyed. * gal/widgets/e-canvas.c (e_canvas_destroy): Hide the tooltip if there is one when the canvas is destroyed. svn path=/trunk/; revision=10888
* Don't scroll to the cursor on grab, ungrab, noop, and copy commands.Christopher James Lahey2001-07-051-1/+6
| | | | | | | | | 2001-07-05 Christopher James Lahey <clahey@ximian.com> * gal/e-text/e-text.c (e_text_command): Don't scroll to the cursor on grab, ungrab, noop, and copy commands. svn path=/trunk/; revision=10808
* If lines is NULL here split into lines and just return that the point isChristopher James Lahey2001-07-031-0/+7
| | | | | | | | | | 2001-07-03 Christopher James Lahey <clahey@ximian.com> * gal/e-text/e-text.c (e_text_point): If lines is NULL here split into lines and just return that the point is outside this text object. svn path=/trunk/; revision=10730
* Small changes throughout to use ECompletionMatch.Jon Trowbridge2001-06-061-3/+6
| | | | | | | | | | | | | | | | | | | | 2001-06-05 Jon Trowbridge <trow@gnu.org> * gal/e-text/e-entry.c: Small changes throughout to use ECompletionMatch. * gal/e-text/e-completion-view.c: Small changes throughout to use ECompletionMatch. * gal/e-text/e-completion.c: Small changes throughout to use ECompletionMatch. * gal/e-text/e-completion-match.h: * gal/e-text/e-completion-match.c: Added. A struct to contain completion matches. This lets us more easily pass around information between the various bits of completion machinery. svn path=/trunk/; revision=10118
* Validate utf8 to avoid lock-ups. (_get_position): Validate utf8 to avoidJon Trowbridge2001-05-151-6/+8
| | | | | | | | | | 2001-05-14 Jon Trowbridge <trow@ximian.com> * gal/e-text/e-text.c (calc_line_widths): Validate utf8 to avoid lock-ups. (_get_position): Validate utf8 to avoid lock-ups. svn path=/trunk/; revision=9797
* Request an update if just our line widths needed recalculation. This fixesFederico Mena Quintero2001-05-081-0/+2
| | | | | | | | | | | 2001-05-07 Federico Mena Quintero <federico@ximian.com> * gal/e-text/e-text.c (e_text_reflow): Request an update if just our line widths needed recalculation. This fixes the bug where the text item would not repaint itself if the canvas lost the focus. svn path=/trunk/; revision=9705
* Made fewer calls to functions like split_into_lines to save time whenChristopher James Lahey2001-04-301-86/+53
| | | | | | | | | 2001-04-29 Christopher James Lahey <clahey@ximian.com> * gal/e-text/e-text.c: Made fewer calls to functions like split_into_lines to save time when possible. svn path=/trunk/; revision=9629
* Remove UNICODE_CFLAGS (e_text_test_LDADD, e_entry_test_LDADD,Dan Winship2001-04-241-43/+42
| | | | | | | | | | * gal/e-text/Makefile.am (INCLUDES): Remove UNICODE_CFLAGS (e_text_test_LDADD, e_entry_test_LDADD, e_text_model_test_LDADD, e_completion_test_LDADD): remove -lunicode, add libunicode.la * gal/e-text/e-text.c: Remove <unicode.h>, use gunicode functions. svn path=/trunk/; revision=9516
* Limit total matches, for better performance on slow machines. It isJon Trowbridge2001-04-201-10/+14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2001-04-20 Jon Trowbridge <trow@ximian.com> * gal/e-text/e-completion-test.c: Limit total matches, for better performance on slow machines. It is supposed to be a test, so correctness of the completion operations isn't really a priority... * gal/e-text/e-completion-view.c (e_completion_view_construct): Set GTK_CAN_FOCUS flag. * gal/e-text/e-entry.c (e_entry_show_popup): Evil! Evil! Unclean! Unclean! Manually check if the pointer is in the area where the popup is going to appear, and if it is, warp the pointer out of the way. After days of fucking around, this horrible hack is the only way that I've been able to figure out to keep the focus from being taken away from the entry and ending up somewhere strange when the popup pops up. (The main problem is with the case of focus-follows-cursor --- click-to-focus works fine. Sawfish idiocincracies may also be causing problems, but I don't want to unjustly accuse the WM of anything, as tempting and appealing as that can be.) (key_press_cb): Proxy for forwarding the popup's key press events to the entry. (key_release_cb): Proxy for forwarding the popup's key release events to the entry. These proxies should be enough to take care of my focus problems. Unfortunately, they aren't, and the pointer-warping-focus-horror is required for reasons that I don't fully understand. * gal/e-text/e-text.c (_get_xy_from_position): Made _get_xy_from_position return a boolean. It returns TRUE if the computation was successful (and if valid data is now in *xp and *yp), FALSE otherwise. Make sure that text->lines is not NULL, and return FALSE if it is. (_get_position): Test that _get_xy_from_position returns TRUE before using the values in x and y. (_get_position): Test that _get_xy_from_position returns TRUE before using the values in x and y. Garbage values being returned in passed-in pointers created a race condition where you could hang an EText if you deleted the entire contents of the buffer really quickly. svn path=/trunk/; revision=9468
* Propagate the event after sending it to the base EText.Christopher James Lahey2001-04-171-0/+3
| | | | | | | | | 2001-04-16 Christopher James Lahey <clahey@ximian.com> * gal/e-text/e-text.c (tooltip_event): Propagate the event after sending it to the base EText. svn path=/trunk/; revision=9379
* Made setting the rgba color work even if you're using the non-aa canvasChristopher James Lahey2001-04-161-8/+7
| | | | | | | | | 2001-04-15 Christopher James Lahey <clahey@ximian.com> * gal/e-text/e-text.c: Made setting the rgba color work even if you're using the non-aa canvas (except for the a.) svn path=/trunk/; revision=9337
* Added strikeout argument.Christopher James Lahey2001-04-161-3/+33
| | | | | | | | | 2001-04-15 Christopher James Lahey <clahey@ximian.com> * gal/e-text/e-text.c, gal/e-text/e-text.h: Added strikeout argument. svn path=/trunk/; revision=9327
* Use e_canvas_hide_tooltip and e_canvas_popup_tooltip. Set bold on theChristopher James Lahey2001-04-151-20/+16
| | | | | | | | | | | | 2001-04-15 Christopher James Lahey <clahey@ximian.com> * gal/e-text/e-text.c (tooltip_event): Use e_canvas_hide_tooltip and e_canvas_popup_tooltip. Set bold on the tooltip. * gal/widgets/e-canvas.c, gal/widgets/e-canvas.h: Added e_canvas_popup_tooltip and e_canvas_hide_tooltip. svn path=/trunk/; revision=9323
* Added "bold" argument.Christopher James Lahey2001-04-151-28/+43
| | | | | | | | 2001-04-15 Christopher James Lahey <clahey@ximian.com> * gal/e-text/e-text.c, gal/e-text/e-text.h: Added "bold" argument. svn path=/trunk/; revision=9319
* add a missing \Dan Winship2001-04-081-0/+1
| | | | | | | | | * tests/test-tree-3.c (INITIAL_SPEC): add a missing \ * gal/e-text/e-text.c (_get_position_from_xy): Add a "break;" to an otherwise-empty default case to make it ANSI. svn path=/trunk/; revision=9201
* Some small header cleanups & fixes, and fix to translate all popup menusGediminas Paulauskas2001-04-051-2/+2
| | | | | | | | | | | | (woohoo!): 2001-04-05 Gediminas Paulauskas <menesis@delfi.lt> * gal/widgets/e-popup-menu.c: Copied gnome_app_helper_gettext function here, and use it for translating menu names (they are passed from app as well as from gal in arrays with N_(), and domains differ). svn path=/trunk/; revision=9190
* Fixed headers. Moved the .h associated with each .c to the top of the listChristopher James Lahey2001-04-041-2/+4
| | | | | | | | | | | | | | | | | | | | | | 2001-04-04 Christopher James Lahey <clahey@ximian.com> * gal/e-text/e-text-model-uri.c, gal/e-text/e-text.c, gal/e-text/e-text.h, gal/e-text/e-text-event-processor.c, gal/util/e-xml-utils.c, gal/widgets/e-cursors.c, gal/widgets/e-cursors.h: Fixed headers. Moved the .h associated with each .c to the top of the list of included files. * gal/util/e-util.h: Removed the bonobo-xobject.h header here. * gal/util/e-xml-utils.c: Replaced strcasecmp with g_strcasecmp. * gal/widgets/e-canvas-vbox.c: Make this work even if the item is destroyed after the vbox. * gal/widgets/e-categories.c (do_parse_categories): Made this translate using e_utf8_from_locale string as it should. svn path=/trunk/; revision=9175
* Fix headers. Ditto. Ditto. Ditto. Ditto. Ditto. Ditto. Same. Ditto. SameKjartan Maraas2001-04-041-1/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2001-04-04 Kjartan Maraas <kmaraas@gnome.org> * gal/e-text/e-entry.c: Fix headers. * gal/e-text/e-table-text-model.[ch]: Ditto. * gal/e-text/e-table-text-model-uri.c: Ditto. * gal/e-text/e-text-model-uri.[ch]: Ditto. * gal/e-text/e-text-model.[ch]: Ditto. * gal/e-text/e-text.[ch]: Ditto. * gal/util/e-text-event-processor-emacs-like.[ch]: Ditto. * gal/util/e-text-event-processor.[ch]: Same. * gal/util/e-util.h: Ditto. * gal/util/e-xml-utils.[ch]: Same here. * gal/widgets/color-group.[ch]: Ditto. * gal/widgets/color-palette.[ch]: Ditto. * gal/widgets/e-canvas-utils.h: Ditto. * gal/widgets/e-canvas-vbox.[ch]: Ditto. * gal/widgets/e-canvas.[ch]: Ditto. * gal/widgets/e-categories.h: Ditto. * gal/widgets/e-colors.[ch]: Ditto. * gal/widgets/e-cursors.c: Ditto. * gal/widgets/e-gui-utils.c: Ditto * gal/widgets/e-popup-menu.[ch]: Same. * gal/widgets/e-reflow-sorted.c: Same. * gal/widgets/e-reflow.[ch]: Same. * gal/widgets/e-selection-model.c: Same * gal/widgets/e-unicode.[ch]: Same. * gal/widgets/gtk-combo-stack.[ch]: Same. * gal/widgets/widget-color-combo.[ch]: Same. * gal/widgets/widget-pixmap-combo.[ch]: Same. svn path=/trunk/; revision=9168
* Make this take an extra argument saying whether or not to grab theDan Winship2001-03-161-2/+2
| | | | | | | | | | | * gal/widgets/e-canvas.c (e_canvas_item_grab_focus): Make this take an extra argument saying whether or not to grab the widget-level focus. * gal/e-text/e-text.c (e_text_event): Update arguments to e_canvas_item_grab_focus. svn path=/trunk/; revision=8745
* Added. This is part of a change of sematics that makes things much nicerJon Trowbridge2001-03-061-14/+14
| | | | | | | | | | | | | | | | | | | | | | | 2001-03-06 Jon Trowbridge <trow@gnu.org> * gal/e-text/e-entry.c (e_entry_text_keypress): Added. This is part of a change of sematics that makes things much nicer for the user --- auto-activate the completion popup only on keypresses than also change the entry. (e_entry_proxy_changed): Record that the underlying EText has changed, and set up a timeout to clear the changed_since_keypress flag in a very short amount of time. (e_entry_init): Connect to the EText's "keypress" signal". (e_entry_destroy): If our completion_delay_tag timeout is still floating around out there when we are winding things down, remove it. * gal/e-text/e-text.c (e_text_class_init): Added keypress signal. (e_text_text_model_reposition): Removed some old cruft. (e_text_event): Emit our keypress signal after handling events of type GDK_KEY_PRESS. svn path=/trunk/; revision=8566
* Set version number to 0.5.99.5Jon Trowbridge2001-03-061-5/+29
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2001-03-05 Jon Trowbridge <trow@gnu.org> * configure.in: Set version number to 0.5.99.5 * gal/e-text/e-entry.c (e_entry_class_init): Add a "popup" signal. If you have trepidations about this, see the technical argument below. (e_entry_init): Connect to the EText's popup signal. (e_entry_proxy_popup): Proxy emitter for popup signals from the EText. * gal/e-text/e-text.c (e_text_class_init): Added a "popup" signal. (e_text_event): Emit the "popup" signal on right-clicks. Now you could ask yourself: "should there be a signal named 'popup' in EText that gets emitted on right-clicks?" And this is a reasonable question, since... well, this has a funny feeling to it. But the whole point of GNOME, or at least one of the original points of GNOME, was to impose policy in a reasonable way when it made sense in order to simplify the user's experience. Convention dictates that popup menus are tied to right-clicks --- so rather than setting up some elaborate forwarding of button-press signals, why not just impose a little policy and set up a signal that is closely tied to a familiar set of semantics? Maybe it isn't the best thing to do from a aesthetics-of-the-API point of view, but I doubt anyone could condemn it as being anything more than mostly harmless. svn path=/trunk/; revision=8565
* Upped the version number to 0.5.99.4.Christopher James Lahey2001-03-061-0/+1
| | | | | | | | | | 2001-03-05 Christopher James Lahey <clahey@ximian.com> * configure.in: Upped the version number to 0.5.99.4. * gal/e-text/e-text.c (e_text_draw): Fixed a crash here. svn path=/trunk/; revision=8556
* Changed the version number to 0.5.99.1.Christopher James Lahey2001-02-201-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2001-02-19 Christopher James Lahey <clahey@ximian.com> * configure.in: Changed the version number to 0.5.99.1. * gal/Makefile.am (libgal_la_LIBADD): Change the directories for e-table-text-model.lo, e-text-event-processor.lo, and e-text-event-processor-emacs-like.lo. Reordered the e-text directory to be after the e-table directory in build order. * gal/e-text/Makefile.am: Removed e-text-event-processor-emacs-like.c, e-text-event-processor-emacs-like.h, e-text-event-processor-types.h, e-text-event-processor.c, and e-text-event-processor.h. Added e-table-text-model.c and e-table-text-model.h. * gal/e-text/e-table-text-model.c: Changed the signature of these mehtods to match the changed signature in ETextModel. * gal/e-text/e-text-event-processor-emacs-like.c, gal/e-text/e-text-event-processor-emacs-like.h, gal/e-text/e-text-event-processor-types.h, gal/e-text/e-text-event-processor.c, gal/e-text/e-text-event-processor.h: Moved these to gal/util/. * gal/e-text/e-text.c, gal/e-text/e-text.h: Changed the includes to match the moved files. * gal/util/Makefile.am: Added e-text-event-processor-emacs-like.c, e-text-event-processor-emacs-like.h, e-text-event-processor-types.h, e-text-event-processor.c, and e-text-event-processor.h. * gal/util/e-text-event-processor-emacs-like.h, gal/util/e-text-event-processor.h: Changed the includes to match the moved files. 2001-02-19 Christopher James Lahey <clahey@ximian.com> * Makefile.am: Removed e-table-text-model.c and e-table-text-model.h. * e-table-text-model.c, e-table-text-model.h: Moved these to gal/e-text/. * e-cell-text.c: Changed the include line for e-text-event-processor.h and e-text-event-processor-emacs-like.h. svn path=/trunk/; revision=8298
* Added. Allows you to attach an ECompletion to an EEntry, and have thatJon Trowbridge2001-02-201-256/+314
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2001-02-19 Jon Trowbridge <trow@ximian.com> * gal/e-text/e-entry.c (e_entry_enable_completion_full): Added. Allows you to attach an ECompletion to an EEntry, and have that ECompletion be used for (obviously enough) completions. * gal/e-text/e-completion-view.h, gal/e-text/e-completion-view.c: Added. ECompletionView is a widget for displaying the results of a completion request in a format that is appropriate for a drop-down window. * gal/e-text/e-completion.h, gal/e-text/e-completion.c: Added. ECompletion is a "pure virtual base class" for completion-type operations. It is implemented so that completions can be either synchronous or asynchronous. * gal/e-text/e-text.c: Lots of changes to accomodate the ETextModel changes. First of all, we render embedded text objects as being underlined. We also cause the model to emit the appropriate object activation signal when an embedded object is double-clicked. Also, all of the code that moves the cursor in response to user input has been removed. Instead, the EText now listens for "reposition" events from the underlying model, and bases all cursor motions on those. (get_bounds_item_relative): Fixed bug in the handling of differently-anchored text. Being differently-anchored is not a crime or a perversion --- it is an alternative lifestyle that we have to respect. * gal/e-text/e-text-model-uri.h, gal/e-text/e-text-model-uri.c: A sample ETextModel that converts URIs into embedded objects that get opened in the browser when you double-click them. * gal/e-text/e-text-model-repos.h, gal/e-text/e-text-model-repos.c: Added. A group of simple structures & functions for handling various cursor movement rules. These are the sorts of things that are passed as arguments to ETextModel "reposition" event handlers. * gal/e-text/e-text-model.h, gal/e-text/e-text-model.c: Privitized the ETextModel struct and "methodized" all of the operations, so that derived classes can do arbitrarily respond to get/set requests in arbitrarily strange ways. Also added the concept of declaring regions of the text as "embedded text objects". Finally, caused operations that change the text to emit a "reposition" signal that passes information that can be used by a view (like an EText) to move the cursor or selection in an intelligent way in response to those changes. This means that you can now open two ETexts that look at the same ETextModel, and have the cursor in one do the right thing when you edit the other. (As opposed to producing a lot of potential segfaults, as it was before.) svn path=/trunk/; revision=8280
* Store the whole GdkColor instead of just the pixel.Christopher James Lahey2001-02-081-12/+8
| | | | | | | | | 2001-02-07 Christopher James Lahey <clahey@ximian.com> * gal/e-text/e-text.c, gal/e-text/e-text.h (e_text_realize): Store the whole GdkColor instead of just the pixel. svn path=/trunk/; revision=8063
* Fixed allocation and placement of text window.Christopher James Lahey2001-01-311-16/+26
| | | | | | | | | | | 2001-01-30 Christopher James Lahey <clahey@ximian.com> * gal/e-text/e-entry.c (canvas_size_allocate, et_set_arg): Fixed allocation and placement of text window. * gal/e-text/e-text.c (e_text_draw): Fixed display of the text. svn path=/trunk/; revision=7920
* Reverted the latest change to EText since we're in feature freeze.Christopher James Lahey2001-01-301-91/+6
| | | | | | | | 2001-01-30 Christopher James Lahey <clahey@helixcode.com> * Reverted the latest change to EText since we're in feature freeze. svn path=/trunk/; revision=7912
* Connect to the model's "position" signal. (e_text_init): Set default valueJon Trowbridge2001-01-301-6/+91
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2001-01-29 Jon Trowbridge <trow@gnu.org> * gal/e-text/e-text.c (e_text_init): Connect to the model's "position" signal. (e_text_init): Set default value for rgba_object as blue. (e_text_destroy): Disconnect model position signal. (fix_selection): Some extra sanity checking to keep the selection from spilling outside of the bounds of the text string as it expands or contracts. Should be obsolete due to the changes to objectify_uris --- but I'll leave this in here for now, in an attempt to avoid non-\0-terminated strings, segfaults, and all of that fun stuff. (e_text_text_model_position): Move our cursor according to the suggestions made by our ETextModel, via the "position" signal. (text_width_with_objects): Check that text is not NULL. (text_draw_with_objects): Accept an extra GdkGC for use in drawing objects. (e_text_set_arg): Properly handle the "position" signal when changing models. (e_text_draw): Initialize the GC for drawing objects, if necessary. (_insert): Comment out the code that adjustes text->selection_*. The cursor is now moved by the ETextModel directly via the position signal, not by the view. * gal/e-text/e-text-model-uri.c (objectify_uris): Add more sophisticated uri recognition via regular expressions. (objectify_uris): Changed to track position changes as model->text expands and contracts along with the objects. Block the objectification of any chunks of text that straddle our current position. (e_text_model_uri_set_text): Added position info to objectify_uris call. (e_text_model_uri_insert): Added position info to objectify_uris call. (e_text_model_uri_insert_length): Added position info to objectify_uris call. (e_text_model_uri_delete): Added position info to objectify_uris call. * gal/e-text/e-text-model.c (e_text_model_class_init): Added a "position" signal that allows the ETextModel to send cursor positioning information back to any view. We need this for text with objects, where the text string can grow and shrink in ways that the view doesn't expect. (e_text_model_real_insert): Added sanity checking of args and a position emission. (e_text_model_real_insert_length): Added sanity checking of args and a position emission. (e_text_model_real_delete): Added sanity checking of args. (e_text_model_suggest_position): A wrapper around the "position" signal emitter. svn path=/trunk/; revision=7894
* Added; a new test program that demonstrates objects in ETexts.Jon Trowbridge2001-01-271-105/+347
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2001-01-26 Jon Trowbridge <trow@gnu.org> * gal/e-text/e-text-model-test.c: Added; a new test program that demonstrates objects in ETexts. * gal/e-text/e-text-model-uri.c: Added; a text model that converts URIs in the text into objects that are passed off to the GNOME URI handler when activated. This is actually still extremely broken; I got it just working enough to test out my EText changes. * gal/e-text/e-text.c: A whole lot of changes, designed to make ETextModel objects render properly. The basic idea of the changes is pretty simple, though. (text_width_with_objects): First of all, this function is an alternative to e_font_utf8_text_width that takes into the account the embedded \1s in the text string and properly accounts for the width of the object strings. (unicode_strlen_with_objects): Next, this function finds the proper strlen of a string, expanding the \1s. (text_draw_with_objects): Finally, this is just a replacement for e_font_draw_utf8_text that does the right thing for objects. I've gone through all of e-text.c and replace calls by those original functions with my new object-enabled alternatives. (split_into_lines): Some tweaking to get line breaking to work properly. Made \1 into a "break character", so that we can break lines between multiple adjacent objects. (Which seemed like the right thing to do, but there may be cases where that is undesireable.) (_get_position_from_xy): Fixed to properly handle embedded objects, and to get the right selection semantics for objects. (Or at least semantics that feel right to me.) Also fixed a bug that caused selection, etc. to not work properly if the text was anchored anywhere other than with GTK_ANCHOR_NORTH*. (_get_position): Hacked to cause objects to activate when they are double-clicked. There is probably a better way to do this. * gal/e-text/e-text-model.c (e_text_model_real_object_count): Provide a default implementation of an object counter. Derived classes might want to override this for efficiency reasons. (e_text_model_strdup_expanded_text): Added. Allocates and returns a string contains the model's text with the objects "expanded" within. * gal/e-text/e-text-model.h: Added obj_count, get_nth_obj, and activate_nth_obj virtual methods to ETextModelClass. svn path=/trunk/; revision=7842
* Make tooltip appear properly even if anchor is set.Christopher James Lahey2001-01-181-1/+1
| | | | | | | | | 2001-01-18 Christopher James Lahey <clahey@helixcode.com> * gal/e-text/e-text.c (_do_tooltip): Make tooltip appear properly even if anchor is set. svn path=/trunk/; revision=7620
* Emit a "changed" signal to the EText after we gtk_object_set a "model" argJason Leach2001-01-161-0/+1
| | | | | | | | | | 2001-01-16 Jason Leach <jasonleach@usa.net> * gal/e-text/e-text.c (e_text_set_arg): Emit a "changed" signal to the EText after we gtk_object_set a "model" arg and fill the EText with text from the model, which obviously changes the text. svn path=/trunk/; revision=7530
* Fixed the border bug. Borders draw properly now.Christopher James Lahey2001-01-051-2/+2
| | | | | | | | | 2001-01-04 Christopher James Lahey <clahey@helixcode.com> * gal/e-text/e-text.c (e_text_draw): Fixed the border bug. Borders draw properly now. svn path=/trunk/; revision=7263
* Add support here for "cursor_pos". (et_get_arg): Handle ARG_CURSOR_POS.Miguel de Icaza2000-12-291-1/+19
| | | | | | | | | | | | | | | 2000-12-29 Miguel de Icaza <miguel@helixcode.com> * gal/e-text/e-entry.c: Add support here for "cursor_pos". (et_get_arg): Handle ARG_CURSOR_POS. (et_set_arg): ditto. * gal/e-text/e-text.c: Add new argument: "cursor_pos". (e_text_get_arg): Handle ARG_CURSOR_POS. (e_text_set_arg): Handle ARG_CURSOR_POS. (e_text_class_init): Add. svn path=/trunk/; revision=7192
* Added a "draw_background" argument. Set the default for theChristopher James Lahey2000-12-271-1/+1
| | | | | | | | | | | | | 2000-12-26 Christopher James Lahey <clahey@helixcode.com> * gal/e-text/e-entry.c: Added a "draw_background" argument. Set the default for the "draw_background" argument to the contained EText to TRUE. * gal/e-text/e-text.c: Changed the default for the "draw_background" argument to FALSE. svn path=/trunk/; revision=7176
* Always have some text. Fixes crash.Miguel de Icaza2000-12-261-3/+5
| | | | | | | | 2000-12-25 Miguel de Icaza <miguel@helixcode.com> * gal/e-text/e-text.c (e_text_init): Always have some text. Fixes crash. svn path=/trunk/; revision=7171
* Made the code CanvasItem correct: the code should not draw at arbitraryMiguel de Icaza2000-12-251-6/+16
| | | | | | | | | | | | | | | 2000-12-25 Miguel de Icaza <miguel@helixcode.com> * gal/e-text/e-text.c (e_text_draw): Made the code CanvasItem correct: the code should not draw at arbitrary positions in the GdkWindow, it should instead draw from item->x1, item->y1 to item->y1, item->y2 (Chris, we need to talk about this, I think my current fix is passable, but might not be fully correct. Specially the interpretation of the width, height arguments). (e_text_class_init): Fix name. (e_text_set_arg): Use correct name. svn path=/trunk/; revision=7163
* Handle draw background. (e_text_draw): Support both border drawing andMiguel de Icaza2000-12-251-13/+34
| | | | | | | | | | | | | 2000-12-24 Miguel de Icaza <miguel@helixcode.com> * gal/e-text/e-text.c (e_text_set_arg): Handle draw background. (e_text_draw): Support both border drawing and background drawing. * gal/e-text/e-entry.c (et_get_arg, et_set_arg): Reduce code size by casting once. (et_set_arg, et_get_arg): Add ARG_DRAW_BORDERS handling. svn path=/trunk/; revision=7159
* Changed the color from yellow to light gray.Christopher James Lahey2000-12-141-1/+1
| | | | | | | | | | | | | 2000-12-13 Christopher James Lahey <clahey@helixcode.com> * gal/e-text/e-text.c (_do_tooltip): Changed the color from yellow to light gray. * gal/widgets/e-canvas-vbox.c (e_canvas_vbox_event): Made it so that e-canvas-vbox doesn't eat all the keyboard events. This means widget navigation keys work properly. svn path=/trunk/; revision=6989
* Added an "allow_newlines" argument.Christopher James Lahey2000-10-271-1/+23
| | | | | | | | | | | | | 2000-10-27 Christopher James Lahey <clahey@helixcode.com> * gal/e-text/e-entry.c, gal/e-text/e-text-event-processor-emacs-like.c, gal/e-text/e-text-event-processor-emacs-like.h, gal/e-text/e-text-event-processor.c, gal/e-text/e-text-event-processor.h, gal/e-text/e-text.c: Added an "allow_newlines" argument. svn path=/trunk/; revision=6226
* remove timeouts on destroy so they don't try to write to freed dataDan Winship2000-10-201-0/+10
| | | | svn path=/trunk/; revision=6032
* Fixed gdk-font refcountingIain Holmes2000-10-131-17/+30
| | | | | | | Added font_e argument to e-text Fixed the header-item drawing the pixmap incorrectly svn path=/trunk/; revision=5894
* set cursors to NULL after destroying them, to avoid any possibility ofDamon Chaplin2000-10-081-0/+5
| | | | | | | | | | 2000-10-07 Damon Chaplin <damon@helixcode.com> * gal/e-text/e-text.c (e_text_unrealize): set cursors to NULL after destroying them, to avoid any possibility of BadCursor. (e_text_event): just return if the EText item is destroyed. svn path=/trunk/; revision=5780
* Moved files, fixed header files and paths - FedericoFederico Mena Quintero2000-09-201-6/+6
| | | | svn path=/trunk/; revision=5513
* Changed #include lines to get e-text to compile.Chris Lahey2000-09-181-3/+3
| | | | svn path=/trunk/; revision=5481
* Some UTF-8 fixes and experimental 16-bit unicode font supportLauris Kaplinski2000-09-091-5/+5
| | | | svn path=/trunk/; revision=5279
* Unicode in addressbook basically works, including simple searchingLauris Kaplinski2000-08-241-1/+1
| | | | svn path=/trunk/; revision=4997
* UTF-8 in contact editor + some fixes for dealing with illegal stringsLauris Kaplinski2000-08-231-1/+4
| | | | svn path=/trunk/; revision=4976
* Handle iso-8859-1 keys nicely in e-text and e-table. Other encodings toLauris Kaplinski2000-08-231-2/+19
| | | | | | come... svn path=/trunk/; revision=4972
* Use byte, not character based UTF-8 syntax in e-textLauris Kaplinski2000-08-221-121/+125
| | | | svn path=/trunk/; revision=4963
* Fixed a warning.Christopher James Lahey2000-08-201-0/+2
| | | | | | | | 2000-08-20 Christopher James Lahey <clahey@helixcode.com> * widgets/e-text/e-text.c: Fixed a warning. svn path=/trunk/; revision=4889
* Moved e-text to UTF-8Lauris Kaplinski2000-08-201-222/+280
| | | | svn path=/trunk/; revision=4886
* Made clicking choose the right character even if show_borders is on.Christopher James Lahey2000-08-031-1/+7
| | | | | | | | | 2000-08-02 Christopher James Lahey <clahey@helixcode.com> * widgets/e-text/e-text.c: Made clicking choose the right character even if show_borders is on. svn path=/trunk/; revision=4492
* Made focus in not change your selection position.Christopher James Lahey2000-07-221-2/+0
| | | | | | | | | 2000-07-21 Christopher James Lahey <clahey@helixcode.com> * widgets/e-text/e-text.c: Made focus in not change your selection position. svn path=/trunk/; revision=4268
* Don't draw quite as large a "flat_box". If draw_borders is TRUE, cause theChristopher James Lahey2000-07-091-8/+8
| | | | | | | | | | 2000-07-09 Christopher James Lahey <clahey@helixcode.com> * widgets/e-text/e-text.c: Don't draw quite as large a "flat_box". If draw_borders is TRUE, cause the cursor to change even if not editing. svn path=/trunk/; revision=4017
* Removed some border padding and set the "draw_borders" argument of theChristopher James Lahey2000-07-091-20/+115
| | | | | | | | | | | | | 2000-07-09 Christopher James Lahey <clahey@helixcode.com> * widgets/e-text/e-entry.c: Removed some border padding and set the "draw_borders" argument of the contained GtkText. * widgets/e-text/e-text.c, widget/e-text/e-text.h: Added a "draw_borders" argument which, if set, makes the EText look more like a GtkEntry. svn path=/trunk/; revision=4011
* Set "anchor" and "fill_clip_rectangle" arguments.Christopher James Lahey2000-07-081-0/+41
| | | | | | | | | | | | | 2000-07-07 Christopher James Lahey <clahey@helixcode.com> * widgets/e-text/e-entry.c: Set "anchor" and "fill_clip_rectangle" arguments. * widgets/e-text/e-text.c, widgets/e-text/e-text.h: Added "fill_clip_rectangle" argument which describes whether to accept clicks throughout the clipping rectangle. svn path=/trunk/; revision=3956
* Added e-entry.c and e-entry.h.Christopher James Lahey2000-07-041-1/+1
| | | | | | | | | | | | | 2000-07-03 Christopher James Lahey <clahey@helixcode.com> * widgets/e-text/Makefile.am: Added e-entry.c and e-entry.h. * widgets/e-text/e-entry.c, widgets/e-text/e-entry.h: New files to be a widget containing a text item. * widgets/e-text/e-text.c: Fixed some spacing. svn path=/trunk/; revision=3874
* Calculate height including if clip_height is set to -1.Christopher James Lahey2000-06-271-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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
* Fixed some vertical scroll bugs.Christopher James Lahey2000-06-211-8/+8
| | | | | | | | 2000-06-21 Christopher James Lahey <clahey@helixcode.com> * widgets/e-text/e-text.c: Fixed some vertical scroll bugs. svn path=/trunk/; revision=3673
* Fix a bug with intial vertical scroll.Christopher James Lahey2000-06-211-0/+1
| | | | | | | | 2000-06-21 Christopher James Lahey <clahey@helixcode.com> * widgets/e-text/e-text.c: Fix a bug with intial vertical scroll. svn path=/trunk/; revision=3672
* Removed the usage of "x" and "y" arguments to EText.Christopher James Lahey2000-06-211-44/+68
| | | | | | | | | | | | | 2000-06-21 Christopher James Lahey <clahey@helixcode.com> * notes/e-note.c, widgets/meeting-time-sel/e-meeting-time-sel.c, widgets/shortcut-bar/e-icon-bar.c: Removed the usage of "x" and "y" arguments to EText. * widgets/e-text/e-text.c, widgets/e-text/e-text.h: Removed the "x" and "y" arguments to EText. Added vertical scrolling. svn path=/trunk/; revision=3670
* Made EText use the font from the canvas's style if one isn't set.Christopher James Lahey2000-06-171-0/+4
| | | | | | | | | 2000-06-17 Christopher James Lahey <clahey@helixcode.com> * widgets/e-text/e-text.c: Made EText use the font from the canvas's style if one isn't set. svn path=/trunk/; revision=3607
* Remove the tooltip callback when destroyed.Christopher James Lahey2000-05-101-0/+5
| | | | | | | | | 2000-05-09 Christopher James Lahey <clahey@helixcode.com> * widgets/e-text/e-text.c: Remove the tooltip callback when destroyed. svn path=/trunk/; revision=2952
* Added an activate signal.Christopher James Lahey2000-05-081-0/+11
| | | | | | | | | 2000-05-08 Christopher James Lahey <clahey@helixcode.com> * widget/e-text/e-text.c, widgets/e-text/e-text.h: Added an activate signal. svn path=/trunk/; revision=2890
* Added a "changed" signal that gets sent whenever the text changes.Christopher James Lahey2000-05-071-5/+6
| | | | | | | | | 2000-05-06 Christopher James Lahey <clahey@helixcode.com> * widgets/e-text/e-text.c, widgets/e-text/e-text.h: Added a "changed" signal that gets sent whenever the text changes. svn path=/trunk/; revision=2837
* + * widgets/e-text/e-text.c (e_text_destroy): Kill text->timer andMatthew Loper2000-04-271-0/+11
| | | | | | | | | | | + text->timeout on destroy. + + * e-shell-view.c (bonobo_widget_is_dead): Helper function to see + whether a bonobo widget is a zombie (ie the remote bonobo control + died). + (e_shell_view_set_view): Try to respawn dead bonobo widgets. svn path=/trunk/; revision=2638
* Made the tooltip show up in the correct place and configuration when usingChristopher James Lahey2000-04-241-24/+173
| | | | | | | | | | | | | | | | | | | | | | | | 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
* Moved some logic a bit. Minor changes.Christopher James Lahey2000-04-121-8/+1
| | | | | | | | 2000-04-11 Christopher James Lahey <clahey@helixcode.com> * widgets/e-text/e-text.c: Moved some logic a bit. Minor changes. svn path=/trunk/; revision=2396
* e-text.c: Recalc bounds when changing the width/clip_widthiholmes2000-04-121-3/+24
| | | | | | | | forward clicks on the tooltip to the pareent item tooltip obeys parents line_wrap and max_lines e_text_point returns 0 when pointer is on the item svn path=/trunk/; revision=2394
* pixmap_DATA isn't defined so don't use it as a variable.Christopher James Lahey2000-04-091-10/+23
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2000-04-08 Christopher James Lahey <clahey@helixcode.com> * art/Makefile.am: pixmap_DATA isn't defined so don't use it as a variable. * addressbook/gui/component/, addressbook/gui/component/.cvsignore, addressbook/gui/Makefile.am, addressbook/gui/component/addressbook-factory.c, addressbook/gui/component/addressbook.c, addressbook/gui/component/addressbook.gnorba, addressbook/gui/component/addressbook.h: New directory to proivde the component for contact management. Simply uses an e-minicard-view. * addressbook/gui/minicard/e-minicard-view.c, addressbook/gui/minicard/e-minicard-view.h: New subclass of e-reflow-sorted that takes an EBook and uses it to compute the card data to display. * addressbook/gui/minicard/e-minicard.c, addressbook/gui/minicard/e-minicard.h: This now backends to a ECard instead of a ETableModel. * addressbook/gui/minicard/e-reflow.c, addressbook/gui/minicard/e-reflow.h: This now has a virtualized add method. * addressbook/gui/minicard/e-reflow-sorted.c, addressbook/gui/minicard/e-reflow-sorted.h: New subclass of e-reflow that allows the data to be sorted on the fly. * addressbook/gui/minicard/test-minicard-view.c: New test to test the new minicard view. * addressbook/gui/minicard/test-reflow.c: Uses the new ECard backend of the e-minicard. * addressbook/gui/minicard/.cvsignore, addressbook/gui/minicard/Makefile.am: Added new test. Fixed dependencies. Added new files. * addressbook/gui/, addressbook/gui/Makefile.am, addressbook/gui/.cvsignore: New directory for addressbook gui bits. Added subdirectories. Created an initial .cvsignore. * addressbook/Makefile.am (SUBDIRS): Removed demo and added gui. * addressbook/backend/pas/pas-backend-file.c: Added code to do notification on bookviews when changes in the backend are made. * addressbook/backend/pas/pas-book-view.c, addressbook/backend/pas/pas-book-view.h: Added helper functions to notify the view about the addition or modification of a single card. Fixed a mistaken extra free. * addressbook/backend/ebook/e-card-list-iterator.h: Fixed incorrect parent class. * addressbook/backend/ebook/test-client.c: Made this accept an optional parameter that specifies the vcard to add. * configure.in: Replaced widgets/e-minicard/Makefile and addressbook/demo/Makefile with addressbook/gui/minicard/Makefile and addressbook/gui/component/Makefile respectively. * widgets/Makefile.am: Removed e-minicard since it's being moved to addressbook/gui/minicard. * widgets/e-text/e-text.c: Fixed the border width around tooltips and made the main tooltip area yellow. From camel/ChangeLog: 2000-04-08 Christopher James Lahey <clahey@helixcode.com> * providers/smtp/.cvsignore: Added a .cvsignore file. From calendar/ChangeLog: 2000-04-08 Christopher James Lahey <clahey@helixcode.com> * gui/Makefile.am: Removed linking with libetable and libeminicard since they weren't being used. svn path=/trunk/; revision=2343
* Made text tooltips appear in place. Iain figured out that to get them toChristopher James Lahey2000-04-081-28/+54
| | | | | | | | | | | | 2000-04-07 Christopher James Lahey <clahey@helixcode.com> * widgets/e-text/e-text.c: Made text tooltips appear in place. Iain figured out that to get them to not appear, we hide the tooltip when the mouse leaves the tooltip window, not the canvas item (this works because the tooltip window always covers the canvas item completely.) svn path=/trunk/; revision=2328
* Removed an unnecessary get_bounds call.Christopher James Lahey2000-04-051-20/+62
| | | | | | | | | | | | | 2000-04-04 Christopher James Lahey <clahey@helixcode.com> * widgets/e-text/e-text.c: Removed an unnecessary get_bounds call. (From a patch by Iain Holmes <ih@csd.abdn.ac.uk>) * widgets/e-text/e-text.c: Made tooltips look more like the underlying text. Made tooltips show up more consistently. svn path=/trunk/; revision=2290
* Changed gnome_canvas_item_grab_focus to e_canvas_item_grab_focus.Christopher James Lahey2000-03-221-2/+2
| | | | | | | | | 2000-03-21 Christopher James Lahey <clahey@helixcode.com> * widgets/e-text/e-text.c: Changed gnome_canvas_item_grab_focus to e_canvas_item_grab_focus. svn path=/trunk/; revision=2138
* Added the ability to access the text event processor.Christopher James Lahey2000-03-211-16/+36
| | | | | | | | | | | | | | | 2000-03-20 Christopher James Lahey <clahey@helixcode.com> * widgets/e-text/e-text.c, widgets/e-text/e-text.h: Added the ability to access the text event processor. 2000-03-13 Christopher James Lahey <clahey@helixcode.com> * addressbook/demo/addressbook-widget.c: Made the addressbook component look in the users home directory for the addressbook.xml file. svn path=/trunk/; revision=2125
* Rearranged SUBDIRS for dependencies.Christopher James Lahey2000-03-121-37/+101
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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
* Designed a new system for doing hierarchical displays in the canvas. AddsChristopher James Lahey2000-03-111-51/+160
| | | | | | | | | | | | | | | | | 2000-03-10 Christopher James Lahey <clahey@helixcode.com> * e-util/e-canvas.c, e-util/e-canvas.h: Designed a new system for doing hierarchical displays in the canvas. Adds an extra idle loop to the canvas system. * widgets/e-minicard/e-minicard.c, widgets/e-minicard/e-minicard-label.c, widgets/e-minicard/e-minicard-label.h, widgets/e-minicard/e-reflow.c, widgets/e-minicard/test-reflow.c, widgets/e-text/e-text.c, widgets/e-text/e-text.h: Adapted to use the new e-canvas reflow system. svn path=/trunk/; revision=2096
* Added a "break_characters" argument. It lets you define a set ofChristopher James Lahey2000-03-081-42/+147
| | | | | | | | | | | | | | | | | | | | | | | | 2000-03-07 Christopher James Lahey <clahey@helixcode.com> * widgets/e-text/e-text.c, widgets/e-text/e-text.h: Added a "break_characters" argument. It lets you define a set of characters which should cause optional linebreaks to occur. Made setting the "clip_height" argument to -1 mean no height clipping. Moved calling the "resize" signal into an idle handler to avoid reentering the canvas update loop. Made EText recalc bounds if the affine has changed. Fixed up tooltip_count (this counts the number of ENTER and LEAVE events.) * widgets/e-text/e-text-test.c: Got rid of a few warnings. * widgets/e-minicard/e-minicard-label.h: Reindent a few lines. * widgets/e-minicard/e-minicard.c, widgets/e-minicard/e-minicard-label.c: Switch from using "x" and "y" to set the children's position to using e_canvas_item_move_absolute. svn path=/trunk/; revision=2079
* Don't show the tooltip if the text is being editted or isn't clipped.Iain Holmes2000-03-011-3/+18
| | | | | | | | | | | 2000-02-29 Iain Holmes <ih@csd.abdn.ac.uk> * widgets/e-text/e-text.c: Don't show the tooltip if the text is being editted or isn't clipped. Remove the tooltip when editting starts. * widgets/e-text/Makefile.am: Build the test program svn path=/trunk/; revision=1994
* Compilation error.Chris Lahey2000-02-281-9/+8
| | | | | | | | 2000-02-28 Chris Lahey <clahey@umich.edu> * widgets/e-text/e-text.c: Compilation error. svn path=/trunk/; revision=1973
* Updated these to use the canvas ::update system properly.Chris Lahey2000-02-281-64/+67
| | | | | | | | | 2000-02-28 Chris Lahey <clahey@umich.edu> * widgets/e-text/e-text.c, widgets/e-text/e-text.h: Updated these to use the canvas ::update system properly. svn path=/trunk/; revision=1972
* This were moved to widgets/e-text/ a while ago but never removed. TheyChristopher James Lahey2000-02-241-52/+11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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
* Show the text of the item, in a tooltip style. (e_text_event): Add aIain Holmes2000-02-211-1/+50
| | | | | | | | | | | | | 2000-02-20 Iain Holmes <ih@csd.abdn.ac.uk> * widgets/e-text/e-text.[ch] (_do_tooltip): Show the text of the item, in a tooltip style. (e_text_event): Add a timeout on the Enter and remove it on the Leave events. * e-text-test.c: New file to test e-text items. svn path=/trunk/; revision=1866
* Made a click on a text widget set the cursor properly.Christopher James Lahey2000-02-121-3/+18
| | | | | | | | | 2000-02-11 Christopher James Lahey <clahey@helixcode.com> * widgets/e-text/e-text.c (e_text_event): Made a click on a text widget set the cursor properly. svn path=/trunk/; revision=1740
* Added line wrap and a max number of lines (max number of lines is onlyChristopher James Lahey2000-02-081-126/+261
| | | | | | | | | | 2000-02-07 Christopher James Lahey <clahey@helixcode.com> * widgets/e-text.h, widgets/e-text.c: Added line wrap and a max number of lines (max number of lines is only obeyed if text is not being edited). svn path=/trunk/; revision=1691
* Handle the grab and ungrab command instead of doing focus by hand. ThisChristopher James Lahey2000-01-281-13/+31
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2000-01-28 Christopher James Lahey <clahey@helixcode.com> * widgets/e-text.c (e_text_command): Handle the grab and ungrab command instead of doing focus by hand. This fixes a problem related to the scroll wheel. (e_text_command): Reset the blink timer in many more command situations so that the cursor blinks less when you're interacting with it. * widgets/e-text-event-processor-emacs-like.c: Send the grab focus command when starting a selection and the ungrab focus command when ending it. * widgets/e-text-event-processor-types.h: Added grab command type so that the event processor can tell the widget to grab the focus. * widgets/e-reflow.c: Redefined all sizes using #defines so that they can be tweaked later. Added scroll wheel handling and set up adjustment increments so that the scroll bars will work correctly. * widgets/e-minicard.h: Added minicard focus type enum. This doesn't mean anything yet, but it will later be used to say which direction the focus is coming from (below for shift-tab, above for tab.) svn path=/trunk/; revision=1650
* Added an arrow cursor for the draggable columns. Made the clickable columnChristopher James Lahey2000-01-261-0/+45
| | | | | | | | | | | | | | | | 2000-01-27 Christopher James Lahey <clahey@helixcode.com> * widgets/e-reflow.h, widgets/e-reflow.c: Added an arrow cursor for the draggable columns. Made the clickable column area larger. * widgets/e-text.h, widgets/e-text.c: Added an I beam cursor for the text item when it is editable. * widgets/e-minicard-label.c: Forward enter and leave notifications to the contained editable text item. svn path=/trunk/; revision=1647
* Finishing previous commit.Chris Lahey2000-01-171-77/+62
| | | | svn path=/trunk/; revision=1582
* Added selection and clipboard support. Added up and down arrow keys. FixedChris Lahey2000-01-141-13/+258
| | | | | | | | | | | | | | | | * widgets/e-text-event-processor-types.h, widgets/e-text-event-processor-emacs-like.c, widgets/e-text.c, widgets/e-text.h: Added selection and clipboard support. Added up and down arrow keys. Fixed choice of font colors for the selection to be based on the current style. * widgets/e-minicard.c: Caused a click to grab the focus. Changed the fake information added. * widgets/e-minicard-label.c: Forward mouse events to the field EText item. svn path=/trunk/; revision=1568
* e_canvas_item_move_absolute is just a helper function not supplied by theChris Lahey2000-01-141-8/+105
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | * widgets/e-canvas-utils.c, widgets/e-canvas-utils.h: e_canvas_item_move_absolute is just a helper function not supplied by the gnome_canvas.[ch] I put it here so that multiple items can use it. * widgets/e-reflow.c, widgets/e-reflow.h: This item contains a number of other items and places them into multiple columns. The items contained must support a number of arguments and signals to allow the reflow to interact with them. * widgets/test-reflow.c: This is a test program for e-reflow. * widgets/e-text.c, widgets/e-text.h: Added properly drawn selected text. Added some preliminary code for X selection handling and cut & paste. * widgets/e-minicard.c, widgets/e-minicard.h: Added ARG_HAS_FOCUS handling. Made label display random for more interesting tests of multiple cards. Tweaked sizing information for better display. * widgets/e-minicard-label.c, widgets/e-minicard-label.h: Added ARG_HAS_FOCUS handling. * widgets/Makefile.am: Added the reflow test and reflow files. svn path=/trunk/; revision=1566
* Added a resize signal for when the card changes height. Made it so thatChris Lahey2000-01-121-8/+77
| | | | | | | | | | | | | | | | * widgets/e-minicard.c, widgets/e-minicard.h: Added a resize signal for when the card changes height. Made it so that when you press tab inside of a field, it goes to the next field. * widgets/e-minicard-label.c, widgets/e-minicard-label.h: Added a resize signal for when the label changes height. * widgets/e-text.c, widgets/e-text.h: Added a resize signal for multiple lines. Added scrolling based on cursor position. * widgets/Makefile.am: Removed an extraneous build target. svn path=/trunk/; revision=1562
* Blocked the tab key from getting inserted into the buffer since theChris Lahey2000-01-121-2/+113
| | | | | | | | | | | * widgets/e-text-event-processor-emacs-like.c: Blocked the tab key from getting inserted into the buffer since the renderer doesn't know what a tab is. * widgets/e-text.c, widgets/e-text.h: Fixed a memory leak. Added a blinking cursor and scrolling for the text item. svn path=/trunk/; revision=1554
* Removed some code which got in the way of testing properly.Chris Lahey2000-01-111-27/+437
| | | | | | | | | | | | | | | | | | | | | | | * widgets/test-minicard.c: Removed some code which got in the way of testing properly. * widgets/e-minicard-label.c (e_minicard_label_realize): Made the field text item editable. * widgets/Makefile.am: Added e-text-event-process*.[ch]. * widgets/e-text.c, widgets/e-text.h: Changed these to support editing. * widgets/e-text-event-processor.c, widgets/e-text-event-processor.h, widgets/e-text-event-processor-types.h, widgets/e-text-event-processor-emacs-like.c, widgets/e-text-event-processor-emacs-like.h: These are a new pair of classes which handle all events from the text item and convert them into commands. svn path=/trunk/; revision=1553
* Added minicard and text stuff.Chris Lahey2000-01-101-0/+1411
* widgets/Makefile.am: Added minicard and text stuff. * widgets/e-minicard.c, widgets/e-minicard.h, widgets/e-minicard-label.c, widgets/e-minicard-label.h: Added canvas items for the minicard view in the contact manager. * widgets/test-minicard.c, widgets/test-minicard-label.c: Tests for the minicard items. * widgets/e-text.h, widgets/e-text.c: New canvas item. Based on GnomeCanvasText. Adds ellipsis capabilities. Used in e-minicard*.[ch]. * widgets/.cvsignore: Added minicard-test and minicard-label-test. svn path=/trunk/; revision=1552