aboutsummaryrefslogtreecommitdiffstats
path: root/widgets/text/e-entry.c
Commit message (Collapse)AuthorAgeFilesLines
* Boost version number to 0.5.99.3.Jon Trowbridge2001-03-021-24/+41
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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
* Fixed. (e_entry_select_region): Fixed. (e_entry_show_popup): Grab/ungrabJon Trowbridge2001-02-241-4/+40
| | | | | | | | | | | | | | | | | | | 2001-02-23 Jon Trowbridge <trow@ximian.com> * gal/e-text/e-entry.c (e_entry_set_position): Fixed. (e_entry_select_region): Fixed. (e_entry_show_popup): Grab/ungrab the pointer and keyboard when the popup appears/disappears. This (mostly) solves the "floating popup" problem. (button_press_cb): Added. We catch button presses outside of the popup, and hide the popup when they occur. * gal/e-text/e-completion-view.c (e_completion_view_get_type, e_completion_view_class_init): Changed base class to GtkEventBox. (e_completion_view_key_press_handler): Make Escape always cause an unbrowse, even wehen we are editting. svn path=/trunk/; revision=8369
* Added. Allows you to attach an ECompletion to an EEntry, and have thatJon Trowbridge2001-02-201-92/+529
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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
* Fixed allocation and placement of text for no bordered text.Christopher James Lahey2001-01-311-16/+33
| | | | | | | | | 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 for no bordered text. svn path=/trunk/; revision=7922
* Fixed allocation and placement of text window.Christopher James Lahey2001-01-311-9/+8
| | | | | | | | | | | 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
* Fixed text misplacement.Christopher James Lahey2001-01-191-10/+12
| | | | | | | | 2001-01-18 Christopher James Lahey <clahey@helixcode.com> * gal/e-text/e-entry.c: Fixed text misplacement. svn path=/trunk/; revision=7632
* Center text vertically.Christopher James Lahey2001-01-181-10/+13
| | | | | | | | | 2001-01-18 Christopher James Lahey <clahey@helixcode.com> * gal/e-text/e-entry.c (canvas_size_allocate, et_set_arg): Center text vertically. svn path=/trunk/; revision=7619
* Made EEntry be shrinkable.Christopher James Lahey2001-01-181-3/+6
| | | | | | | | 2001-01-17 Christopher James Lahey <clahey@helixcode.com> * gal/e-text/e-entry.c (e_entry_init): Made EEntry be shrinkable. svn path=/trunk/; revision=7604
* Make justification work properly for entries. Documented.Christopher James Lahey2001-01-181-2/+49
| | | | | | | | | 2001-01-17 Christopher James Lahey <clahey@helixcode.com> * gal/e-text/e-entry.c, gal/e-text/e-entry.h (et_set_arg): Make justification work properly for entries. Documented. svn path=/trunk/; revision=7603
* Add support here for "cursor_pos". (et_get_arg): Handle ARG_CURSOR_POS.Miguel de Icaza2000-12-291-4/+16
| | | | | | | | | | | | | | | 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/+18
| | | | | | | | | | | | | 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
* Connect to the "changed" and "activate" signals on the EText to the proxyMiguel de Icaza2000-12-261-0/+22
| | | | | | | | | | | 2000-12-26 Miguel de Icaza <miguel@helixcode.com> * gal/e-text/e-entry.c: Connect to the "changed" and "activate" signals on the EText to the proxy routines. (e_entry_proxy_changed): Proxy this to our signals. (e_entry_proxy_activate): ditto. svn path=/trunk/; revision=7173
* Always have some text. Fixes crash.Miguel de Icaza2000-12-261-1/+0
| | | | | | | | | | 2000-12-25 Miguel de Icaza <miguel@helixcode.com> * gal/e-text/e-text.c (e_text_init): Always have some text. Fixes crash. * gal/widgets/e-reflow.c (set_empty): Set draw_background to FALSE. svn path=/trunk/; revision=7172
* Always have some text. Fixes crash.Miguel de Icaza2000-12-261-2/+2
| | | | | | | | 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
* Handle draw background. (e_text_draw): Support both border drawing andMiguel de Icaza2000-12-251-37/+70
| | | | | | | | | | | | | 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
* Added an "allow_newlines" argument.Christopher James Lahey2000-10-271-2/+14
| | | | | | | | | | | | | 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
* Made EEntry accept focus properly.Christopher James Lahey2000-10-191-0/+11
| | | | | | | | 2000-10-18 Christopher James Lahey <clahey@helixcode.com> * gal/e-text/e-entry.c: Made EEntry accept focus properly. svn path=/trunk/; revision=6015
* Moved files, fixed header files and paths - FedericoFederico Mena Quintero2000-09-201-3/+3
| | | | 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
* Removed some border padding and set the "draw_borders" argument of theChristopher James Lahey2000-07-091-7/+4
| | | | | | | | | | | | | 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/+2
| | | | | | | | | | | | | 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
* Fixed some typos.Christopher James Lahey2000-07-081-9/+5
| | | | | | | | 2000-07-07 Christopher James Lahey <clahey@helixcode.com> * widgets/e-text/e-entry.c: Fixed some typos. svn path=/trunk/; revision=3949
* Added e-entry.c and e-entry.h.Christopher James Lahey2000-07-041-0/+413
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