2003-05-19 Mike Kestner <mkestner@ximian.com>
* Makefile.am : revert a broken CLEAN_FILES change. [42478]
2003-05-19 Mike Kestner <mkestner@ximian.com>
* e-cell-text.c (build_layout): don't call any line breaking
or justification code if the width <= 0 since it's pointless
and apparently pango likes to crash when you do. [43199]
svn path=/trunk/; revision=21260
2003-05-16 Mike Kestner <mkestner@ximian.com>
* gal-view-collection.c (view_changed): block the signal
that got us here until we're done to stop an infinite
recursion. Fixes 43153.
2003-05-16 Mike Kestner <mkestner@ximian.com>
* e-cell-text.c (invisible_finalize): kill
(ect_stop_editing): destroy the invisible, not weak_unref
(e_cell_text_view_get_invisible): don't weak_ref the invisible
since we own its ref.
2003-05-16 Mike Kestner <mkestner@ximian.com>
* e-table-item.c (eti_event): fix a couple timer checks
* e-tree-table-adapter.c (update_node): Traverse POST order
so that the parent nodes are at the head of the prepended list.
Don't restore expanded state to nodes that aren't in the tree
any longer. Hopefully fixes#42856.
svn path=/trunk/; revision=21229
2003-04-29 Mike Kestner <mkestner@ximian.com>
* e-cell-text.c (build_layout): don't use unicode ellipsis so
that we don't break on broken font setups.
2003-04-29 Mike Kestner <mkestner@ximian.com>
* e-cell-text.c (generate_layout): don't set width on the layout
during edit
svn path=/trunk/; revision=21012
2003-04-21 Mike Kestner <mkestner@ximian.com>
* e-cell-text.c (build_layout): use unicode ellipsis char for
breaking lines. Use g_utf8_find_prev_char and check for failure
so that we don't tight loop for small cells that can't display
any chars.
svn path=/trunk/; revision=20924
2003-04-18 Mike Kestner <mkestner@ximian.com>
* e-cell-text.c (build_layout): if the layout splits into more
than one line, shorten it to a single line with elipses.
(generate_layout): don't ref NULL layouts
(ect_enter_edit): use g_new0 for the CellEdit
(get_position_from_xy): use generate_layout since edit->layout
isn't necessarily set here.
svn path=/trunk/; revision=20892
2003-04-16 Mike Kestner <mkestner@ximian.com>
* e-cell-text.c (build_layout): set width and alignment of layout.
(generate_layout): set width on existing layout and pass new width
param to build_layout.
(ect_draw): pass width to generate_layout
(ect_height): pass width to generate_layout
(ect_enter_edit): pass width to generate_layout
(ect_max_width): pass width to generate_layout
(ect_max_width_by_row): pass width to generate_layout
(ect_show_tooltip): pass width to generate_layout
(e_cell_text_view_command): pass width to generate_layout
svn path=/trunk/; revision=20870
2003-02-17 Chris Toshok <toshok@ximian.com>
* e-cell-text.c (build_layout): make sure the row >= 0 before
calling value_at to calc "strikeout".
svn path=/trunk/; revision=19926
2002-06-04 Christopher James Lahey <clahey@ximian.com>
* e-table-item.c (eti_event): Reenable tooltips if the
GAL_DO_TOOLTIPS environment variable is set.
svn path=/trunk/; revision=17097
2002-06-03 Christopher James Lahey <clahey@ximian.com>
* e-cell-text.c (ect_style_set): Get the font from the style again
when the style changes.
(init): Checks for the environment variable GAL_ELLIPSIS and uses
that instead of ... if it is set.
* e-table-click-to-add.c (finish_editing): e_table_item_leave_edit
before committing.
(etcta_event): Added a missing break; here.
* e-table-item.c (eti_style_set): On style set, free the height
cache, request a reflow and a redraw, and call
eti_idle_maybe_show_cursor.
(e_table_item_compute_location): Don't call eti_get_height here,
just use the cached value.
* e-tree.c, e-tree.h (e_tree_get_table_adapter): Added this simple
accessor function.
svn path=/trunk/; revision=17088
2002-03-14 Christopher James Lahey <clahey@ximian.com>
* e-cell-text.c: Implemented capitalization keybindings.
* e-tree.c (item_key_press): Added parentheses to the default case
here.
svn path=/trunk/; revision=16168
2002-01-21 Christopher James Lahey <clahey@ximian.com>
* e-cell-text.c: Implement max_width_by_row.
* e-cell-tree.c: Use max_width_by_row in max_width function.
* e-cell.c, e-cell.h (e_cell_max_width_by_row): Added this new
method to ECell.
svn path=/trunk/; revision=15418
2002-01-15 Christopher James Lahey <clahey@ximian.com>
* e-cell.c, e-cell.h (e_cell_save_state, e_cell_load_state,
e_cell_free_state): New functions for saving selection state and
such.
* e-cell-text.c (ect_save_state): Implemented the new state
functions.
* e-table-item.c, e-table-item.h: Use the new cell state functions
when focusing in or out. Fixes Ximian bug #14968.
svn path=/trunk/; revision=15335
2001-12-12 Christopher James Lahey <clahey@ximian.com>
* e-cell-text.c (ect_stop_editing): Change to not editing before
committing values. Then commit the values.
svn path=/trunk/; revision=15104
2001-10-28 Christopher James Lahey <clahey@ximian.com>
* e-cell-text.c: Removed erroneous comment about needing to handle
selection better.
svn path=/trunk/; revision=14272
2001-10-24 Christopher James Lahey <clahey@ximian.com>
* e-cell-combo.c: Added #include "gal/widgets/e-unicode.h".
* e-cell-text.c: Added lots of deactivated debugging printfs here.
(ect_event): Fixed the flags check here. Set edit->actions to 0
before calling e_text_event_processor_handle_event.
* e-table-item.c, e-table-item.h: Use eti_grab and eti_ungrab all
over the place. Added lots and lots of deactivated debugging
printfs here.
(eti_grab, eti_ungrab): New functions to encapsulate grabbing and
ungrabbing the cursor and to allow for recursive grabs
(refcounting style.)
* e-table.c: Added deactivated debugging printfs here.
(et_canvas_root_event): Attach to the event handler on the root
canvas item instead of the canvas itself when making the ETable
leave editing state. Fixes Ximian bug #9737.
svn path=/trunk/; revision=14072
2001-10-22 Damon Chaplin <damon@ximian.com>
* e-cell-text.[hc]: added set_value() class method, which sets the
model value based on the text. In ECellText itself it assumes the model
value is a char* and passes the text directly. Subclasses may parse
the text into some other datatype.
Also made the calls the e_cell_text_get_text(), e_cell_text_free_text()
and e_cell_text_set_value() public, since we need them in ECellCombo.
* e-cell-combo.c (e_cell_combo_select_matching_item):
(e_cell_combo_update_cell): use e_cell_text_get_text()/free_text()/
set_value() so it can handle subclasses of ECellText as the child.
svn path=/trunk/; revision=13901
2001-10-10 Christopher James Lahey <clahey@ximian.com>
* e-cell-popup.c (ecp_get_bg_color), e-cell-tree.c
(ect_get_bg_color): Implement these functions as pass through to
the child cell.
* e-cell-text.c, e-cell-text.h (ect_get_bg_color): Implemented
this using a bg_color_column which can be set through the argument
of the same string.
* e-cell.c, e-cell.h (e_cell_get_bg_color): Added this function to
allow background color to change by cell.
* e-table-item.c (eti_get_cell_background_color): Call
e_cell_get_bg_color to allow background color to change by cell.
svn path=/trunk/; revision=13566
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
2001-05-14 Jon Trowbridge <trow@ximian.com>
* e-cell-text.c (_get_position_from_xy): Try to deal with bad
utf8.
(_get_position): Try to deal with bad utf8.
(number_of_lines): Try to deal with bad utf8.
(split_into_lines): Try to deal with bad utf8.
svn path=/trunk/; revision=9791
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
2001-04-15 Christopher James Lahey <clahey@ximian.com>
* e-cell-text.c (ect_show_tooltip): Set the background color to
the specified tooltip->background. Set the foreground color to
the specified tooltip->foreground.
* e-table-item.c (eti_get_cell_background_color,
eti_get_cell_foreground_color): Added these functions.
(eti_draw, _do_tooltip): Use these new functions.
* e-table-tooltip.h: Added foreground and background colors to
this structure.
* e-tree.c, e-tree.h (e_tree_get_tooltip): Added this function.
svn path=/trunk/; revision=9338
2001-04-15 Christopher James Lahey <clahey@ximian.com>
* e-table-item.c: Added /* #defines */ at the top. Fixed
ALTERNATE_COLORS to be an #ifdef instead of an #if.
* e-cell-text.c (ect_show_tooltip): Set "strikeout" argument on
created tooltip.
svn path=/trunk/; revision=9328
2001-04-15 Christopher James Lahey <clahey@ximian.com>
* e-cell-text.c (tooltip_event): Use e_canvas_hide_tooltip and
e_canvas_popup_tooltip.
* e-table-item.c: Cleaned this up. Removed some #if 0 and
replaced others with #ifdefs.
* e-table-tooltip.h: Removed some unnecessary fields.
svn path=/trunk/; revision=9326
2001-04-15 Christopher James Lahey <clahey@ximian.com>
* e-cell-text.c (ect_show_tooltip): Set "bold" argument on created
tooltip. Adjusted position of displayed tooltip.
* e-cell-tree.c (offset_of_node): Changed it so that this function
handles knowing whether on not to indent non expandable first
level nodes. This makes things more consistent.
* e-table-item.c (eti_realize): Cleaned up the ETableItem code to
properly hide tooltips when going off the screen.
* e-table-tooltip.h: Added a visibility_count field to ETableTooltip.
svn path=/trunk/; revision=9320
2001-04-02 Federico Mena Quintero <federico@ximian.com>
* e-cell-popup.c (ecp_unrealize): Typo fix; call
e_cell_unrealize(), not e_cell_realize().
* e-cell-text.c (ect_event): Removed fallback "else", from "if
(edit_display)"since our planned return value is already zero and
we do need to unbuild_current_cell() instead of returning
immediately.
* e-table-state.c (etst_destroy): Free the expansions field.
* e-table.c (e_table_set_state_object): Do not ref the header
since we just created it!
svn path=/trunk/; revision=9123
2001-03-23 Christopher James Lahey <clahey@ximian.com>
* e-cell-text.c: Made this not create the new font until realize
instead of at new_view time.
* e-table-item.c: Don't request heights or do other things that
you aren't allowed to do before realization unless you're
realized.
svn path=/trunk/; revision=8915
2001-03-04 Damon Chaplin <damon@ximian.com>
* e-cell-text.c: added "editable" Arg, to stop the user from editing
the text. The user can still select the text, though. The "editable"
Arg is useful for ECellCombo where we want the user to select an item
in the popup but not edit the field itself.
* e-cell-combo.c: updated to select the matcing item before it pops up
the list.
svn path=/trunk/; revision=8544
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
2001-01-15 Christopher James Lahey <clahey@ximian.com>
* Makefile.am: Added e-cell-date.c, e-cell-date.h, e-cell-size.c,
and e-cell-size.h.
* e-cell-date.c, e-cell-date.h: New cell to implement displaying a
date.
* e-cell-size.c, e-cell-size.h: New cell to implement displaying a
file size.
* e-cell-text.c, e-cell-text.h: Got rid of the filter arguments.
Replaced them with the ability to subclass ECellText and override
the get_text method. Added free_text to override if your get_text
implementation returns allocated memory.
* e-table-extras.c (ete_init): Added "size" and "date" cells to
the default ETableExtras.
svn path=/trunk/; revision=7523
2001-01-12 Christopher James Lahey <clahey@helixcode.com>
* e-cell-text.h, e-cell-text.h: Changed the filter function back
to being args to be more consistent with the rest of the object.
svn path=/trunk/; revision=7465
2001-01-12 Miguel de Icaza <miguel@ximian.com>
* e-cell-text.c (key_begins_editing): New function. Tells whether
a key should begin editing.
(ect_event, GDK_KEY_PRESS/RELEASE): check whether we should start
editing.
svn path=/trunk/; revision=7445
2001-01-12 Miguel de Icaza <miguel@ximian.com>
* e-cell-text.c (e_cell_text_set_filter): Implement new function
API. Remove Gtk arguments for this.
(ect_height): Pass all the extra information Dan requested.
(ect_print): Pass all the extra information Dan requested.
(build_current_cell): ditto.
svn path=/trunk/; revision=7444