2001-02-23 Christopher James Lahey <clahey@ximian.com>
* gal/Makefile.am (libgal_la_LIBADD): Added
e-table/e-table-sorting-utils.lo.
From gal/e-table/ChangeLog:
2001-02-23 Christopher James Lahey <clahey@ximian.com>
* Makefile.am (libetable_la_SOURCES): Added
e-table-sorting-utils.c.
(libetableinclude_HEADERS): Added e-table-sorting-utils.h.
* e-table-group-container.c: Implemented add_array method. Use
add_array to implement add_all instead of using add. Did some
general clean up.
* e-table-group-leaf.c, e-table-group-leaf.h: Implemented
add_array method. Changed everything to use an ETableSubset
variable instead of an ETableSortedVariable. Implemented it as
ETableSortedVariable if there's grouping involved and ETableSorted
if there isn't.
* e-table-group.c, e-table-group.h: Added add_array method. Added
unused get_position code.
* e-table-sorted-variable.c, e-table-sorted-variable.h: Moved a
lot of the actual implementation of sorting to
e-table-sorting-utils.c. Got rid of the signal handlers here
since we weren't using them and ETableSubset has the proxy virtual
methods.
* e-table-sorted.c, e-table-sorted.h: Completely replaced these
files with a variation on ETableSortedVariable that doesn't have
the add methods and such but instead just mimics the source
model's set of rows completely.
* e-table-sorter.c, e-table-sorter.h: Added functions to get at
the arrays here.
* e-table-sorting-utils.c, e-table-sorting-utils.h: Utility
functions for doing sorting.
* e-table-subset-variable.c, e-table-subset-variable.h: Added
add_array method.
* e-table-subset.c, e-table-subset.h: Made it so that the signal
hookups to the source model's signals are virtual methods.
* e-table.c, e-table.h: Don't call add_all and add and remove type
functions if not grouped. Don't rebuild for sort changes unless
it was either grouped before or will be grouped now.
svn path=/trunk/; revision=8374
2001-02-24 Not Zed <NotZed@Ximian.com>
* e-search-bar.c (add_dropdown): Move the event box into the
esb->dropdown_holder. Changed so it can be called again on the
same esb, to rebuild the menu.
(e_search_bar_set_menu): New function to (re)set the menu.
(add_option): Setup so it can be re-called to rebuild the option
list.
(e_search_bar_set_option): New function to build the menu's.
svn path=/trunk/; revision=8373
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
2001-02-02 Not Zed <NotZed@Ximian.com>
* e-cell-tree.c (ect_draw): If we are drawing a top-level tree
node, without any children then dont offset it for the expansion
image it doesn't need.
svn path=/trunk/; revision=8304
2001-02-20 Chris Toshok <toshok@ximian.com>
* e-tree-model.c: add some more (mostly empty) api docs.
(e_tree_model_node_changed): pass the node in the "node_changed"
signal.
(etree_destroy): e_tree_model_node_remove our root node here to
free up the tree's storage.
svn path=/trunk/; revision=8302
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-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
2001-02-17 Christopher James Lahey <clahey@ximian.com>
* e-table.c (et_real_construct): Removed setting of invalid
"horizontal_scrolling" argument.
* e-table-column-model.h: Removed this as it is not used.
svn path=/trunk/; revision=8268
2001-02-17 Christopher James Lahey <clahey@ximian.com>
From a patch submitted by Murray Cumming <Murray.Cumming@mybau.com>
* gal-define-views-model.h, gal-view-collection.h,
gal-view-etable.h, gal-view-factory-etable.h, gal-view-factory.h,
gal-view.h: Added GNOME_DECLS.
svn path=/trunk/; revision=8266
2001-02-17 Rusty Conover <rconover@zootweb.com>
* e-cell-tree.c (ect_max_width): Change the calculation of the
maximum with of tree cell, from O(n^2) to O(n), we don't need to
continually recalculate the maximum width of the subcells when
calculating the width of every row.
svn path=/trunk/; revision=8264
2001-02-15 Christopher James Lahey <clahey@ximian.com>
* e-table-selection-model.c
(e_table_selection_model_do_something): Made it so that if you set
the row or col to something not equal to -1, it makes sure that
the other one is also not equal to -1.
svn path=/trunk/; revision=8240
2001-02-13 Christopher James Lahey <clahey@ximian.com>
* e-table-header.c, e-table-header.h
(e_table_header_update_horizontal): This new function updates the
minimum width of all of the columns based on the data contained in
that column.
* e-table.c, e-table.h (changed_idle): Added a
horizontal_scrolling field. Call e_table_header_update_horizontal
if the model changes at all and horizontal_scrolling is set to TRUE.
svn path=/trunk/; revision=8214
2001-02-13 Christopher James Lahey <clahey@ximian.com>
* e-table-scrolled.c (e_table_scrolled_real_construct): Set policy
of scrolled window to be automatic/automatic.
* e-table-specification.c, e-table-specification.h (etsp_init):
Added a horizontal-scrolling attribute.
svn path=/trunk/; revision=8208
2001-02-13 Christopher James Lahey <clahey@ximian.com>
* e-table-item.c (eti_destroy): Fix the crash when ETableItems are
destroyed.
svn path=/trunk/; revision=8207
2001-02-11 Christopher James Lahey <clahey@ximian.com>
* gal/widgets/e-canvas-vbox.c, gal/widgets/e-canvas-vbox.h: Made a
width other than the default possible if the children have widths
larger than the default.
svn path=/trunk/; revision=8171
2001-02-11 Christopher James Lahey <clahey@ximian.com>
* e-table-selection-model.c (change_one_row): Fix selection so
that changing a model row equal to 31 mod 32 works.
svn path=/trunk/; revision=8170
2001-02-11 Christopher James Lahey <clahey@ximian.com>
* e-table-item.c (eti_cursor_change): Let
e_canvas_item_show_area_delayed deal with a delayed area show
instead of dealing with it ourselves.
svn path=/trunk/; revision=8169
2001-02-11 Christopher James Lahey <clahey@ximian.com>
* gal/widgets/e-canvas-utils.c, gal/widgets/e-canvas-utils.h
(e_canvas_item_show_area_delayed): Added this function.
svn path=/trunk/; revision=8168
2001-02-09 JP Rosevear <jpr@ximian.com>
* gal/widgets/e-canvas.c (e_canvas_key): Since gdkevent is a
union, casting a smaller struct to a gdkevent caused unknown
memory to be copied around. fix by copying to a full gdkevent
structure before calling gdkevent.
(e_canvas_focus_in): ditto
(e_canvas_focus_out): ditto
svn path=/trunk/; revision=8153
2001-02-08 Christopher James Lahey <clahey@ximian.com>
* e-table.c (e_table_setup_header): Set the dnd_code on the header
properly.
svn path=/trunk/; revision=8110
2001-02-08 Christopher James Lahey <clahey@ximian.com>
* gal/e-text/e-text-model-test.c (describe_model): Commented out
this function since it's not being used.
svn path=/trunk/; revision=8109
2001-02-08 Christopher James Lahey <clahey@ximian.com>
* gal/widgets/gal-categories.glade, gal/widgets/e-categories.c
(ec_set_header): Added a "header" argument to set the label at the
top of the dialog.
svn path=/trunk/; revision=8108
2001-02-08 Christopher James Lahey <clahey@ximian.com>
* e-tree-model.c, e-tree-model.h (e_tree_model_show_node): Added
this function. Made frozen an int so that recursive freezes and
thaws behaves properly.
svn path=/trunk/; revision=8106
2001-02-07 Christopher James Lahey <clahey@ximian.com>
* gal/e-text/e-text.c, gal/e-text/e-text.h (e_text_realize): Store
the whole GdkColor instead of just the pixel.
svn path=/trunk/; revision=8063
2001-02-06 Christopher James Lahey <clahey@ximian.com>
* gal-view-collection.c (gal_view_collection_save): Create the
local directory when saving if it doesn't exist already.
svn path=/trunk/; revision=8043
2001-02-06 Christopher James Lahey <clahey@ximian.com>
* e-cell-date.c (ecd_get_text): Change encoding from locale
encoding to utf8.
svn path=/trunk/; revision=8033
2001-02-05 Christopher James Lahey <clahey@ximian.com>
* gal/e-text/e-entry.h: Changed draw_borders from a gboolean to a
a guint : 1.
svn path=/trunk/; revision=7990
2001-02-05 Christopher James Lahey <clahey@ximian.com>
* gal-define-views-model.h: Removed unnecessary comment about now
non-existant virtual column list.
svn path=/trunk/; revision=7989
2001-02-05 Christopher James Lahey <clahey@helixcode.com>
* e-table-header-item.c: Changed the text to pop up the Field
Chooser.
svn path=/trunk/; revision=7988
2001-02-05 Christopher James Lahey <clahey@helixcode.com>
* gal-view-collection.c: Fixed a number of small bugs in how we
were saving and loading view collections.
* gal-view-etable.c (config_changed): Send the changed signal
properly.
(gal_view_etable_construct): Duplicate the spec's state here.
svn path=/trunk/; revision=7986
2001-02-05 Christopher James Lahey <clahey@helixcode.com>
* gal/widgets/e-font.c (e_font_to_native), gal/widgets/e-unicode.c
(e_utf8_from_gtk_string_sized, e_utf8_to_gtk_string_sized):
Changed the call to iconv to be char ** instead of const char **.
svn path=/trunk/; revision=7970
2001-02-04 Christopher James Lahey <clahey@ximian.com>
* e-table-item.c (view_to_model_col): Make this not error out if
ecol is not found, but simply return -1.
(eti_event): Don't call view_to_model_col here as we already have
a model column.
svn path=/trunk/; revision=7960
2001-02-02 Not Zed <NotZed@Ximian.com>
* e-table-selection-model.c (model_row_deleted): Dont overwrite
the end of our bitmap array.
svn path=/trunk/; revision=7944
2001-01-31 Larry Ewing <lewing@ximian.com>
* e-table-item.c (view_to_model_col): make the segfault caused by
double clicking into a critical warning until it can be fixed.
svn path=/trunk/; revision=7927
2001-01-31 Radek Doulik <rodo@ximian.com>
* gal/e-text/e-entry.h: added gboolean draw_borders to make it
compile, probably some forgotten commit of e-entry.h
svn path=/trunk/; revision=7926