Commit Graph

38 Commits

Author SHA1 Message Date
5485ba72d9 Changed some incorrect gtk_object_refs and gtk_object_unrefs into
2000-04-10  Christopher James Lahey  <clahey@helixcode.com>

	* addressbook/backend/ebook/e-book-view.c,
	addressbook/backend/ebook/e-book.c: Changed some incorrect
	gtk_object_refs and gtk_object_unrefs into bonobo_object_refs and
	bonobo_object_unrefs.

	* addressbook/backend/pas/pas-card-cursor.c: Changed a
	gtk_object_destroy to a gtk_object_unref.

	* addressbook/gui/minicard/e-minicard-view.c,
	addressbook/gui/minicard/e-minicard-view.h: Set a list pointer to
	NULL after freeing its contents.  Added
	e_minicard_view_remove_selection function.

	* addressbook/gui/minicard/e-reflow.c: Set a list pointer to NULL
	after freeing its contents.

svn path=/trunk/; revision=2386
2000-04-11 00:21:08 +00:00
a5fef3a82e Added proper keyboard focus handling.
2000-04-10  Christopher James Lahey  <clahey@helixcode.com>

	* e-canvas.c: Added proper keyboard focus handling.

svn path=/trunk/; revision=2377
2000-04-10 19:33:35 +00:00
a09c52cdf9 CVS move mistake. Fixed the correct changes in the correct places.
2000-04-08  Christopher James Lahey  <clahey@helixcode.com>

	* addressbook/gui/minicard/.cvsignore,
	addressbook/gui/minicard/Makefile.am,
	addressbook/gui/minicard/e-minicard-view.c,
	addressbook/gui/minicard/e-minicard-view.h,
	addressbook/gui/minicard/e-minicard.c,
	addressbook/gui/minicard/e-minicard.h,
	addressbook/gui/minicard/e-reflow-sorted.c,
	addressbook/gui/minicard/e-reflow-sorted.h,
	addressbook/gui/minicard/e-reflow.c,
	addressbook/gui/minicard/e-reflow.h,
	addressbook/gui/minicard/test-minicard-view.c,
	addressbook/gui/minicard/test-reflow.c,
	widgets/e-minicard/.cvsignore, widgets/e-minicard/Makefile.am,
	widgets/e-minicard/e-minicard-label.c,
	widgets/e-minicard/e-minicard-label.h,
	widgets/e-minicard/e-minicard-view.c,
	widgets/e-minicard/e-minicard-view.h,
	widgets/e-minicard/e-minicard.c, widgets/e-minicard/e-minicard.h,
	widgets/e-minicard/e-reflow-sorted.c,
	widgets/e-minicard/e-reflow-sorted.h,
	widgets/e-minicard/e-reflow.c, widgets/e-minicard/e-reflow.h,
	widgets/e-minicard/test-minicard-label.c,
	widgets/e-minicard/test-minicard-view.c,
	widgets/e-minicard/test-minicard.c,
	widgets/e-minicard/test-reflow.c: CVS move mistake.  Fixed the
	correct changes in the correct places.

svn path=/trunk/; revision=2344
2000-04-08 22:18:26 +00:00
228a741d69 minor style clean + kill duff file in POTFILES.
svn path=/trunk/; revision=2198
2000-03-27 22:12:58 +00:00
2589a36ea0 ChangeLog shuffling.
ChangeLog shuffling.

Miguel.

svn path=/trunk/; revision=2174
2000-03-27 02:58:23 +00:00
1f7ba945b1 Rearranged SUBDIRS for dependencies.
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
2000-03-12 07:59:42 +00:00
0a908b7fe4 Designed a new system for doing hierarchical displays in the canvas. Adds
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
2000-03-11 00:32:15 +00:00
7699b8996a This were moved to widgets/e-text/ a while ago but never removed. They
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
2000-02-24 06:51:23 +00:00
d53eea370b Add the unicode libraries as well.
2000-02-14  Miguel de Icaza  <miguel@gnu.org>

	* camel/providers/mbox/Makefile.am (libcamelmbox_la_LIBADD): Add
	the unicode libraries as well.

	* camel/camel-provider.c (camel_provider_register_as_module): Add
	error reporting here.  Desire to use Solaris increases.  Hair loss
	in the last two hours: 5,400.

	* camel/providers/mbox/camel-mbox-provider.c
	(camel_mbox_get_provider): Renamed function.

	* camel/camel.h: All include files use camel/ now here.

	* camel/providers/mbox/Makefile.am: Drop all the dynamism from
	Camel, and make this a standard library.

	* configure.in: set the UNICODE_LIBS variable here.
2000-02-14  Miguel de Icaza  <miguel@gnu.org>

	* folder-browser.c (folder_browser_load_folder): New routine,
	loads a camel folder.
	(folder_browser_set_uri): redo.

	* session.c: new file.  Implements SessionStores to keep track of
	a Session/Store tuple.

svn path=/trunk/; revision=1783
2000-02-15 17:28:34 +00:00
c656db137c Major rationalization of pts vs pixels and the use of margins.
Some redraw speedups and the addition of XL2000 style alpha bended selections.

2000-02-13  Jody Goldberg <jgoldberg@home.com>

	* ./src/sheet-view.c (sheet_view_redraw_cell_region) : redraw the
	  bounding grid lines too.

	* src/item-cursor.c (item_cursor_get_pixel_coords) : Clip the cursor
	  region to the visible range.  The layout still needs cleaning to
	  match the 'correct' way of implementing canvas-items, but this
	  heuristic saves us lots of iterations through the accumulator for
	  the size of the entire sheet.

2000-02-12  Jody Goldberg <jgoldberg@home.com>

	* src/gnumeric-sheet.c : Use visible flag and adjust to naming and
	  margin changes.

	* src/item-bar.c (colrow_tip_setlabel) : Use the format provided by
	  XL2000.  Things are correct for rows, colwidth are quoted in pts
	  rather than char widths.
	(get_col_from_pos) : Use visible flag.
	(item_bar_start_resize) : Function renaming.
	(is_pointer_on_division) : Ditto.
	(item_bar_draw) : Changes to margins.

	* src/item-edit.c : Function renaming.
	* src/item-cursor.c : Ditto.  decrease spacing for auto handle.

	* src/item-grid.c (item_grid_draw) : Remove inversion process for the
	  selection.  Instead have the cells draw their background
	  differently.  Use the visible flag.
	(item_grid_paint_empty_cell) : Ditto.
	(item_grid_paint_cell) : Ditto.

	* src/mstyle.c (mstyle_new_default) : The default vert alignment is BOTTOM.

	* src/pattern.c (gnumeric_background_set_gc) : Draw the background of
	  a selected cell differently.

	* src/print-cell.c (DIM) : margins are already included.
	(print_cell_text) : Adjust argument order to more closely match
	  cell_draw.  Add support for vertical alignment of 1 line cells.
	  Invert control of single vs multiple lines.
	(print_cell) : Adjust to changes in the arguments.
	(print_cell_range) : Use the visible flag.
	  Draw line at the boundary rather than pretending there were
	  additional rows/cols.

	* src/print.c (compute_groups) : size_pts INCLUDES margins.  Use 'visible' flag.
	(print_page) : Adjust to function renaming.
	(print_range_used_units) : Ditto.

	* src/selection.c : Include sheet-view directly for now.
	(cb_set_row_height) : Adjust to function renaming.

	* src/sheet-view.c (sheet_view_redraw_cell_region) : Adjust to function
	  renaming.
	(sheet_view_redraw_headers) : Ditto.
	(sheet_view_set_zoom_factor) : Ditto.
	(sheet_view_col_size_changed) : Ditto.
	(sheet_view_row_size_changed) : Ditto.
	(sheet_view_comment_get_points) : Ditto.

	* src/sheet.[ch] : Rationalize function names, and add glossary.
	Make the use of margins and sizes (in points and pixels) consistant.

	(sheet_col_get_external_width : Delete.
	(sheet_row_get_external_height : Delete.
	(sheet_col_get_distance : Rename sheet_col_get_distance_pixels.
	(sheet_row_get_distance : Rename sheet_row_get_distance_pixels.
	(sheet_row_get_unit_distance : Rename sheet_row_get_distance_pts.
	(sheet_col_get_unit_distance : Rename sheet_col_get_distance_pts.
	(sheet_col_set_width : Rename sheet_col_set_size_pixels.
	(sheet_col_set_width_units : Rename sheet_col_set_size_pts.
	(sheet_row_set_height : Rename sheet_row_set_size_pixels.
	(sheet_row_set_height_units) : Rename sheet_row_set_size_pts.
	(sheet_get_default_external_col_width) : Rename sheet_col_get_default_size_pts.
	(sheet_get_default_external_row_height): Rename sheet_row_get_default_size_pts.
	(sheet_col_set_internal_width) : sheet_col_set_internal_size_pts.
	(sheet_row_set_internal_height): sheet_row_set_internal_size_pts.
	(sheet_{row,col}_set_default_size_pts) : New functions.

	(sheet_init_default_styles) : Tune to match XL defaults.

	* src/sort.c : Use g_strcasecmp, and include <stdlib.h>

	* src/style.c (style_color_new) : Init the selection colour as a 50%
	  alpha blend with lavender.

	* src/style.h : Change default font to be Helvetica 9 because it will
	  scale better when the standard 96 dpi resolution is assumed.
	  Add a selected_color to StyleColor.

	* src/value-sheet.c : Include <gnome.h> to get the
	  internationalization support.

	* src/workbook-cmd-format.c (workbook_cmd_format_column_auto_fit) :
	  sheet_col_set_width -> sheet_col_set_size_pixels.
	(workbook_cmd_format_column_width) :
	  sheet_col_set_width_units -> sheet_col_set_size_pts.
	(workbook_cmd_format_row_auto_fit) :
          sheet_row_set_height -> sheet_row_set_size_pixels
	(workbook_cmd_format_row_height) :
	  sheet_row_set_height_units -> sheet_row_set_size_pts.

	* src/xml-io.c (xml_read_rows_info) : Rename
	  sheet_row_set_height_units -> sheet_row_set_size_pts.
	(xml_read_cols_info) : Rename
	  sheet_col_set_height_units -> sheet_col_set_size_pts.
	(xml_read_colrow_info) : Remove hack with negative pixels.
	  Use 'visible' flag instead.
	(xml_write_colrow_info) : Ditto.

svn path=/trunk/; revision=1764
2000-02-13 14:32:30 +00:00
12ba6679ac Handle the grab and ungrab command instead of doing focus by hand. This
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
2000-01-28 06:03:48 +00:00
905f7de48f Use e_canvas_item_grab_focus so that it will work with old versions of
2000-01-28  Christopher James Lahey  <clahey@helixcode.com>

        * widgets/e-minicard-label.c, widgets/e-minicard.c: Use
        e_canvas_item_grab_focus so that it will work with old versions of
        gnome-canvas.

        * widgets/e-canvas.c, widgets/e-canvas.h: Finished working around
        focus bugs.

svn path=/trunk/; revision=1649
2000-01-27 07:51:37 +00:00
074aff3059 Set the minimum_width.
2000-01-28  Christopher James Lahey  <clahey@helixcode.com>

        * widgets/test-reflow.c: Set the minimum_width.

        * widgets/e-reflow.h, widgets/e-reflow.c: Added one more column
        line so that the right edge of the reflow will have a line.  Also
        added a minimum_width so that even if the reflow is thinner than
        the window, when you resize it larger all the lines are drawn.

svn path=/trunk/; revision=1648
2000-01-27 07:25:26 +00:00
bbcecaf6b7 Added an arrow cursor for the draggable columns. Made the clickable column
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
2000-01-26 11:26:07 +00:00
7ffbbe3692 Handle shift-tab properly now.
2000-01-25  Christopher James Lahey  <clahey@helixcode.com>

        * widgets/e-reflow.c, widgets/e-minicard.c: Handle shift-tab
        properly now.

        * widgets/e-minicard-label.c: Reindented some areas.

        * widgets/test-reflow.c: Use e-canvas.  Set the back pixmap to
        NULL for the canvas so that scrolling won't flash grey.

        * widgets/e-canvas.c, widgets/e-canvas.h: These subclass
        GnomeCanvas to work around a few bugs so that evolution will work
        well with old versions of gnome-libs.

        * widgets/Makefile.am: Added e-canvas.c and e-canvas.h.

        * addressbook/contact-editor/contact-editor.glade: Not much
        change.  Mostly internal reorganization by glade itself.

svn path=/trunk/; revision=1638
2000-01-26 00:53:50 +00:00
07af9adcd6 Changed some line spacing.
* widgets/e-text-event-processor-types.h: Changed some line
        spacing.

        * widgets/test-reflow.c: Connected to the resize signal of the
        reflow.

        * widgets/e-minicard.c: Made width argument set function only
        update if width is different.

        * widgets/e-reflow.h, widgets/e-reflow.c: Added draggable column dividers.

        * addressbook/contact-editor/test-editor.c: Open two dialogs for
        more interesting testing.

        * addressbook/contact-editor/e-contact-editor.h,
        addressbook/contact-editor/e-contact-editor.c: Modified to use
        glade.  Added menus to change which phone/address/email entries to
        view.  Added images to the dialog.

        * addressbook/contact-editor/e-contact-editor-strings.h,
        addressbook/contact-editor/contact-editor.glade: Glade files for
        the contact editor dialog.

        * addressbook/contact-editor/Makefile.am: Added images and added
        glade stuff.

        * addressbook/contact-editor/arrow.png,
        addressbook/contact-editor/briefcase.png,
        addressbook/contact-editor/netfreebusy.png,
        addressbook/contact-editor/netmeeting.png: Image files for the
        contact editor dialog.

svn path=/trunk/; revision=1599
2000-01-21 00:35:45 +00:00
f5347f59ff e_canvas_item_move_absolute is just a helper function not supplied by the
* 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
2000-01-13 22:01:23 +00:00
dcc0e7dcde More missing files
svn path=/trunk/; revision=1541
2000-01-07 00:30:34 +00:00
3df4c423ba Ettore's drop shadow on cursor,
HTML bug fix from Jarl,
Sort dialog cleans.

svn path=/trunk/; revision=1500
1999-12-18 08:26:19 +00:00
510e8547bb Renamed the move modes to MODE_MOVE and MOVE_MODE_DRAGGING.
1999-11-02  Federico Mena Quintero  <federico@redhat.com>

	* src/print-preview.c (PreviewMode): Renamed the move modes to
	MODE_MOVE and MOVE_MODE_DRAGGING.
	(preview_canvas_button_press): Split the event handling code
	between several functions.  Rationale:  we will want drag-zoom and
	we need different modes for this, and the code in a single
	function would get unwieldy.  In addition, grab the pointer and
	use GDK_POINTER_MOTION_HINT_MASK for better behavior.
	(PrintPreview): Added fields for drag anchor and drag offset.
	(drag_to): New function to drag/scroll.
	(create_preview_canvas): Connect to the different event handlers.
	(do_zoom): We do not need to re-render the page; just set the zoom
	factor.  Also, use exponential zooming for better behavior.

	* src/cursors.h: Moved the cursor #defines to an enum.  This way
	we can check for a max value in cursor_get().  Moved the cursor
	array to the .c file and made it private.

	* src/cursors.c (cursors_init): Added sanity check so that all
	cursors are defined.
	(cursor_get): New function to get a cursor based on its type.
	(cursors): Added hand cursors.

	* src/pixmaps/cursor_hand_{open,closed}.xpm: Added hand cursors.

svn path=/trunk/; revision=1365
1999-11-02 21:48:52 +00:00
182bac9d13 - Move some math functions from utils to mathfuncs.
- Beautify the scrollbar tooltips a bit and move some of their utility
  routines into gnumeric-utility.
- Add width/height tooltips on col/row resize.
- Fix bug that would loose the end of resize event when the cursor had
  not moved.

svn path=/trunk/; revision=1321
1999-10-08 13:38:27 +00:00
710c7909d8 Fiddled with object creation,
Added a load of new cursors for object moving / sizing,
Fixed sheet object sizing,
Add sheet object popup menus.

svn path=/trunk/; revision=1249
1999-09-21 21:36:14 +00:00
ffa1277638 Cosmetic widget update when loading lots of files,
Fixed serious bug in sheet tab editing,
New sizing algo.

svn path=/trunk/; revision=1221
1999-09-10 20:11:36 +00:00
fe269dcef3 Commit missing files
svn path=/trunk/; revision=1188
1999-09-06 22:09:26 +00:00
c17952163c Add an event handler for the preview canvas. (zoom_state): new routine,
1999-09-05  Miguel de Icaza  <miguel@gnu.org>

	* src/print-preview.c (preview_canvas_event): Add an event handler
	for the preview canvas.
	(zoom_state): new routine, controls the toolbar widget display.

	* src/cursors.c: Add new zoom in and zoom out cursors.

	* src/dialogs/dialog-printer-setup.c (unit_editor_new): One line
	warning fix.

	* src/sheet.c (sheet_col_size_fit): Returns the size required to
	render every cell completely.

	* src/item-bar.c (item_bar_event): Delay column/row resizing
	action until the division is actually being dragged.  We need this
	to catch double-clicks for auto-sizing cells.
	(GDK_2BUTTON_PRESS):

1999-09-04  Jody Goldberg <jgoldberg@home.com>

svn path=/trunk/; revision=1183
1999-09-06 03:05:38 +00:00
99af67a6ca Added margin display preview.
1999-09-03  Miguel de Icaza  <miguel@gnu.org>

	* src/dialogs/dialog-printer-setup.c (draw_margins): Added margin
	display preview.

	* src/print-preview.c (preview_zoom_out_cmd): Zoom-in, zoom-out
	and move are now toggle buttons.

	* src/workbook.c (italic_cmd, bold_cmd): Simplified the code some.

	* src/dialogs/dialog-printer-setup.c (do_setup_page_info): Force
	the icon display here.
	(preview_page_create): Invert test.
	(PAGE_X, PAGE_Y): They are now the same values.
	(do_setup_page): Show the images here.

svn path=/trunk/; revision=1173
1999-09-03 07:26:43 +00:00
68f3afb7a2 - Disable insert/delete row/column that would split an array-formula
- Enable cut/copy/paste for array formulas.
- Fix multi-line cell drawing & whitespace issues.
- Change the default column width & grid colour to more closely match XL
- Add the edit popup menu in the row/col headers
- Short circuit the insert/delete dialogs to directly insert/delete when
  an entire row/column is selected.

svn path=/trunk/; revision=1023
1999-07-11 13:42:32 +00:00
3be2b5f40a Reworked the insert/delete column/row code again. Beat on it, please!
svn path=/trunk/; revision=937
1999-05-21 19:12:01 +00:00
399f0e77bc Wide use of const in gnumeric now, thanks to Morten Welinder
svn path=/trunk/; revision=873
1999-04-24 07:34:52 +00:00
3e1e7873f1 Use 0.0########## instead. Looks saner.
1999-01-10  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/format.c (format_value): Use 0.0########## instead.  Looks saner.

1999-01-10  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/workbook.c (change_auto_expr_menu): Use the event->button
	field to get the popup menu to behave correctly.
	(workbook_setup_auto_calc): Put the information display inside a
	GtkFrame.

	* src/item-bar.c (set_cursor): This routine can be invoked before
	we are realized.

	* src/workbook.c (sheet_label_button_press): We need to do the
	page flipping ourselves, as the GtkNotebook wont take events if
	they are not for a window it knows about.

	* src/widget-editable-label.c (el_button_press_event): Forward
	events to parent.

	* src/parser.y: New non-terminal "cellref".  Make this
	non-terminal include CELLREF and SHEETREF!CELLREF constructions.

	* src/expr.c: Changed the whole module according to the dropping
	of VALUE_CELLREF.

	* src/expr.h: VALUE_CELLREF did not make much sense.  Better add
	to the ExprTree union a CellRef field specifically for OPER_VAR
	nodes.

svn path=/trunk/; revision=591
1999-01-11 04:35:55 +00:00
63d572bcbc Made all of the header inclussion conditionals consistent
svn path=/trunk/; revision=416
1998-09-30 19:08:39 +00:00
9e927267cd New routine to paint a little red triangle if the cell hsa notes.
1998-09-29  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/cell.c (cell_draw_comment): New routine to paint a little
	red triangle if the cell hsa notes.

	* src/cell.c (cell_destroy): Destroy the comment.
	(str_trim_spaces): New routine.  Trims the spaces on a string.
	(cell_draw): Trim the leading and trailing spaces on every string
	of a multi-line text.

	* src/color.c (color_init): Allocate a red for tagging the
	spreadhseet notes.

	* src/dialog-cell-format.c (format_list_fill): Apply the
	traslation when adding the format.

	* doc/tranlating.sgml: New document that describes how to
	internationalize and localize Gnumeric properly.

	* src/workbook.c (recalc_cmd): Provide a way to force a recomputation.
	(insert_current_time_cmd): New function.  insert the current time.
	(insert_current_date_cmd): New function.  insert the current date.
	(insert_at_cursor): New utility function.

	* src/gnumeric-sheet.c (gnumeric_sheet_key_mode_sheet): Handle control-home

svn path=/trunk/; revision=414
1998-09-30 05:51:35 +00:00
8089200cb5 New:
New:

	- Bold button works properly (ie, it detects what sort of
	  stuff you have and presses/unpresses accordingly).

	- GNumeric now has operation modes: sheet and object.
	  Using delete/backspace/edit-cut will let you kill
	  objects.

	- Lots of the bug fixes reported by Adrian/Federico.

Here is the detailed changelog:

1998-09-23  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/xml-io.c: Destroy the extra style.

	* src/main.c (main): No need to init colors as they are auto-inited.

	* src/style.c (font_compute_hints): At font creation time store a
	couple of the font attributes for quick retrieval.

	* src/sheet-view.c (sheet_view_construct): Do not allow this
	button to have the focus either.

	* src/item-bar.c (item_bar_draw): If the whole sheet is selected,
	draw all of the columns in pressed presenstation

	* src/sheet.c (sheet_is_all_selected): Return wheter all the sheet
	is selected.

	* src/utils.c (cell_name): Fixed cell name computation.
	(parse_cell_name): Fixed parsing of the cell name.

svn path=/trunk/; revision=396
1998-09-24 02:45:43 +00:00
f6fd83536e When decoding a tree, include the argument separator. Also, loop properly
1998-09-21  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/expr.c (do_expr_decode_tree): When decoding a tree, include
	the argument separator.  Also, loop properly trough the arguments
	being decoded.

	(function_call_with_values, function_def_call_with_values): New
	functions: these ones are for the plugins so that a plugin can
	invoke other functions in Gnumeric.

	* src/fn-date.c (gnumeric_now): The serial number returned by
	NOW() should be relative to 1900/1/1, not year zero.

1998-09-20  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* src/expr.c (eval_expr): Fix the way we computed expressions.

	* src/eval.c (cell_eval): Maintain a CELL_ERROR flag to know if
	the value is NULL due to an error or to the cell not being
	evaluated.

	* src/expr.c (funcion_call_with_values): Add a routine to allow
	plugins to call other functions defined in Gnumeric.

	* src/style.c: Handle the pattern property of the styles.

	* src/style.h: Pattern style is now just a 4 bit quantity, instead
	of a RefCounted structure.

	* src/plugin.c: Include gnumeric-util.h

svn path=/trunk/; revision=390
1998-09-21 05:18:05 +00:00
8d5c52e66b Autofill lists work:
Autofill lists work:

	Integers, Floats, Formulas and constant strings works.

Todo:

	Lists of known strings and strings with numbers embedded

Miguel.

svn path=/trunk/; revision=379
1998-09-16 08:22:56 +00:00
70fa0cb326 Got cursors working.
Got cursors working.

Use the cursors properly on the spreadhseet (gives good feedback
on what is going to happen).

More work on autofill.

miguel.

svn path=/trunk/; revision=377
1998-09-15 04:19:56 +00:00
95099ae101 Color attributes in formats work (ie, you can get colored cells now);
Color attributes in formats work (ie, you can get colored cells now);

My first -futile attempts- at getting various different cursors working on the
spreadsheet (we need a cross and various other cursors for a better emulation
of Excel).

The beginning of autofill, but I really need to see Excel live before implementing
this.

Miguel.

svn path=/trunk/; revision=376
1998-09-14 04:50:58 +00:00
5716777409 Color implemtnation
svn path=/trunk/; revision=373
1998-09-12 00:32:51 +00:00