aboutsummaryrefslogtreecommitdiffstats
path: root/widgets/text/e-completion.c
Commit message (Collapse)AuthorAgeFilesLines
* Retired GAL from Head. The relevant files have moved inside evolution.Kaushal Kumar2005-06-171-5/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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-2/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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
* added castRadek Doulik2004-06-111-0/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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
* ignore test-completion.Chris Toshok2003-02-101-332/+31
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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
* Lots of GObject work.Chris Toshok2002-11-171-103/+96
| | | | | | | | | | | | | | | | | | | | | | | | 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-11/+14
| | | | | | merging the gal-2 branch back to the trunk. svn path=/trunk/; revision=18471
* Changed the license announcement at the top of these files.Christopher James Lahey2001-10-271-21/+17
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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
* add E_OBJECT_CLASS_ADD_SIGNALS and E_OBJECT_CLASS_TYPE to ease migrationMichael Meeks2001-10-051-9/+10
| | | | | | | | | | | | | | | 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
* Patch to fix few 64bit issuesGeorge Lebl2001-08-291-0/+1
| | | | | | | | | | | | | | | | | | | | | | Tue Aug 28 18:29:28 2001 George Lebl <jirka@5z.com> Patch to fix few 64bit issues * gal/e-table/e-table-header-item.c (ethi_draw) (ethi_start_drag) gal/widgets/e-categories.c (e_categories_value_at) (e_categories_value_to_string): Use GINT_TO_POINTER and GPOINTER_TO_INT to cast between pointers and ints to fix 64bit issues connected with that. * gal/e-table/e-table-sorting-utils.c (e_table_sorting_utils_tree_check_position) gal/util/e-sorter-array.c (e_sorter_array_append): Use size_t for size not ints to fix crashes * gal/e-text/e-completion-match.c, gal/e-text/e-completion.c: Include <string.h> svn path=/trunk/; revision=12507
* Added "hit_count" to ECompletionMatch. Used by searchJon Trowbridge2001-08-171-7/+204
| | | | | | | | | | | | | | | | | | | | | | 2001-08-16 Jon Trowbridge <trow@ximian.com> * gal/e-text/e-completion-match.h: Added "hit_count" to ECompletionMatch. Used by search refinement/unrefinement. * gal/e-text/e-completion.c (e_completion_refine_search): Added. Handle automatic search refinements. (e_completion_unrefine_search): Added. Handle automatic search "unrefinements", or reversions. (e_completion_begin_search): Check if the refinement or unrefinement operations can be used to handle the search. Emit "request_search" at the end of the call. (e_completion_class_init): Added a new signal "request_search". "begin_search" is now purely informational, telling views that a series of matches and an "end_search" are forthcoming. * configure.in: Increment version of 0.10.99.3. svn path=/trunk/; revision=12116
* bumped up to 0.10.99.3jacob berkman2001-08-101-55/+104
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2001-08-09 jacob berkman <jacob@ximian.com> * configure.in: bumped up to 0.10.99.3 * gal/e-text/e-completion-view.c (e_completion_view_init): init matches array (e_completion_view_destroy): free matches array (e_completion_view_disconnect): disconnect from the clear and lost_match signals (e_completion_view_clear_choices): fixup for ptr array (e_completion_view_set_cursor_row): ditto (e_completion_view_select): ditto (e_completion_view_key_press_handler): ditto (clear_completion_cb): handle the clear signal (lost_completion_cb): remove a row from the model (table_row_count): fixup for ptr array (table_value_at): ditto (e_completion_view_construct): connect to clear and lost completion signals (e_completion_view_set_width): ptr array fixup again * gal/e-text/e-completion.c (e_completion_class_init): add new clean / lost completion signals (e_completion_init): initialize the matches array (e_completion_destroy): free the matches array (e_completion_add_match): fixup for matches being a GPtrArray (e_completion_clear_matches): ditto (e_completion_clear): new function to clear the list of matches (e_completion_foreach_match): fixup for ptrarray (e_completion_restart): ditto (e_completion_found_match): if we are at the limit return first, rather than adding and then unreffing. there very well could be some weird crashes this caused but it is kind of unlikely. (e_completion_lost_match): new function to forget about a match (e_completion_end_search): add a comment on why this is broken * gal/e-text/e-entry.c (e_entry_text_keypress): only start a delayed completion if our completion timeout is >= 0. this provides a way for the completion starting / stopping to be controlled by something other than the EEntry (ie, file-sel) svn path=/trunk/; revision=11843
* Turned off alternating row colors in our ETable specification.Jon Trowbridge2001-06-091-1/+0
| | | | | | | | | | | | | | 2001-06-08 Jon Trowbridge <trow@ximian.com> * gal/e-text/e-completion-view.c: Turned off alternating row colors in our ETable specification. * gal/e-text/e-completion-match.c (e_completion_match_compare_alpha): Fix the sort routine to properly use the major & minor keys for sorting grouped elements with the same match text. I had this all wrong. svn path=/trunk/; revision=10159
* Oops. Forgot to remove some debugging code before committing.Jon Trowbridge2001-06-061-16/+0
| | | | svn path=/trunk/; revision=10119
* Small changes throughout to use ECompletionMatch.Jon Trowbridge2001-06-061-105/+44
| | | | | | | | | | | | | | | | | | | | 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
* Comment out text after #endif. Add #include <string.h> for strcmp().Kjartan Maraas2001-03-161-0/+1
| | | | | | | | | 2001-03-16 Kjartan Maraas <kmaraas@gnome.org> * gal/widgets/widget-pixmap-combo.h: Comment out text after #endif. * gal/e-text/e-completion.c: Add #include <string.h> for strcmp(). svn path=/trunk/; revision=8758
* Boost version number to 0.5.99.3.Jon Trowbridge2001-03-021-49/+15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2001-03-01 Jon Trowbridge <trow@ximian.com> * configure.in: Boost version number to 0.5.99.3. * gal/e-text/e-entry.c (e_entry_show_popup): Grab pointer when the popup is visible, and then hide the popup if any button press events occur outside of the popup. This lets up avoid most of the worst "floating popup" cases that would occur if windows are moved, desktops changed, etc. with the mouse. (Doing things like changing desktop w/ keybindings can still cause a "floating popup", but that is also true of Gtk's own combo box.) Change popup positioning to slightly offset it from the entry, rather than just plopping it down directly below. (button_press_cb): Determine if a button press occured outside of the popup when the pointer was grabbed, and unbrowse accordingly. * gal/e-text/e-completion-view.c (e_completion_view_key_press_handler): Improve keystroke handling. Allow Tabs to pass through (after hiding the pop-up) in order to allow focus change requests to work properly. (e_completion_view_construct): Disable horizontal scrollbars. * gal/e-text/e-completion-test.c (main): Reworked to use signals instead of explicit callbacks. * gal/e-text/e-completion.h: * gal/e-text/e-completion.c: Fix the awkward mix of signals and explicitly-specified callbacks by taking out the explicit callbacks. This approach is more gtk-ish, after all. svn path=/trunk/; revision=8458
* Added. Allows you to attach an ECompletion to an EEntry, and have thatJon Trowbridge2001-02-201-0/+511
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