aboutsummaryrefslogtreecommitdiffstats
path: root/widgets/text/e-text.c
Commit message (Collapse)AuthorAgeFilesLines
* 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