Jim Evins [Mon, 16 Feb 2004 02:53:37 +0000 (02:53 +0000)]
2004-02-15 Jim Evins <evins@snaught.com>
* src/label-barcode.c: (gl_label_barcode_set_data),
(gl_label_barcode_set_props):
Don't emit "changed" signal, if no change actually made for these
methods. Reduces number of unnecessary redraws of barcodes.
* src/label-object.h:
* src/label-object.c: (gl_label_object_set_position),
(gl_label_object_set_position_relative), (set_size),
(gl_label_object_set_size),
(gl_label_object_set_size_honor_aspect):
Don't emit "changed" signal, if no change actually made for these
methods.
Jim Evins [Sun, 15 Feb 2004 16:28:39 +0000 (16:28 +0000)]
2004-02-15 Jim Evins <evins@snaught.com>
* data/glabels-2.0.dtd:
Added specific subtypes for various barcode types.
* src/bc.h:
* src/bc.c: (id_to_index), (name_to_index), (gl_barcode_new),
(gl_barcode_get_styles_list), (gl_barcode_default_digits),
(gl_barcode_can_text), (gl_barcode_text_optional),
(gl_barcode_can_csum), (gl_barcode_csum_optional),
(gl_barcode_id_to_name), (gl_barcode_name_to_id):
Changed API to use a string id, rather than a fixed enumeration. Id and
name are separate strings. Added entries to backend table for specific
subtypes for various barcode types.
* src/bc-postnet.h:
* src/bc-postnet.c: (gl_barcode_postnet_new), (postnet_code),
(is_length_valid):
Modified to conform to above API. Now more stringent with data length
for various subtypes.
* src/bc-gnubarcode.h:
* src/bc-gnubarcode.c: (gl_barcode_gnubarcode_new),
(is_length_valid), (is_length1_valid), (is_length2_valid):
Modified to conform to above API. Now more stringent with data length
for various subtypes.
* src/label-barcode.h:
* src/label-barcode.c: (copy), (gl_label_barcode_set_props),
(gl_label_barcode_get_props), (get_size):
Modified to use above API for storing barcode type.
* src/object-editor.h:
* src/object-editor-bc-page.c: (style_changed_cb),
(gl_object_editor_set_bc_style), (gl_object_editor_get_bc_style):
Modified to use above API for storing barcode type.
* src/object-editor.glade:
Made barcode style combo's text entry non-editable.
* src/print.c: (draw_barcode_object):
Modified to use above API for barcode type.
* src/view-barcode.c: (update_object_from_editor_cb),
(update_editor_from_object_cb),
(gl_view_barcode_create_event_handler), (draw_barcode):
Modified to use above API for barcode type.
* src/xml-label-04.c: (xml04_parse_barcode_props):
* src/xml-label-191.c: (xml191_parse_barcode_props):
* src/xml-label.c: (xml_parse_object_barcode),
(xml_create_object_barcode):
Modified to use above API for barcode type.
Jim Evins [Sat, 7 Feb 2004 05:29:48 +0000 (05:29 +0000)]
2004-02-07 Jim Evins <evins@snaught.com>
* src/stock-pixmaps/Makefile.am:
* src/stock-pixmaps/stock_hchain_24.png:
* src/stock-pixmaps/stock_hchain_broken_24.png:
* src/stock-pixmaps/stock_vchain_24.png:
* src/stock-pixmaps/stock_vchain_broken_24.png:
Added chain pixmaps borrowed from the gimp's default theme.
* src/stock.h:
* src/stock.c: (gl_stock_init), (add_button_icon):
Added above pixmaps to stock icon sets. Created add_button_icon() to
add these pixmaps sized as GTK_ICON_SIZE_BUTTON.
* src/wdgt-chain-button.h
* src/wdgt-chain-button.c
* src/Makefile.am:
* po/POTFILES.in:
Added this Modified version of gimpchainbutton widget, borrowed from
the gimp.
* AUTHORS:
Added acknowledgements of the above borrowing from the gimp.
* src/object-editor-size-page.c: (aspect_toggle_cb), (w_spin_cb),
(h_spin_cb):
* src/object-editor.c: (gl_object_editor_construct_chain_button):
* src/object-editor.glade:
Replaced the keep aspect ratio check box with the above chain-button
widget.
* src/text-node.c: (gl_text_node_equal):
* src/text-node.h:
Added function gl_text_node_equal() to compare text_nodes.
* src/label-image.c: (gl_label_image_set_filename):
Replaced incomplete text_node comparison code with invocation of
gl_text_node_equal. This fixed the problem of not being able to
resize an image using the object_editor if the aspect ratio is not
locked.
Jim Evins [Thu, 5 Feb 2004 02:56:48 +0000 (02:56 +0000)]
2004-02-04 Jim Evins <evins@snaught.com>
* src/object-editor-image-page.c:
(gl_object_editor_prepare_image_page):
Track "changed" signal of pixmap entry's GtkEntry rather than its
"activate" signal -- this catches all changes to the entry rather than
just changes resulting from a browse, so one can easily pull previous
entries from the history. (This change is marked below on 2004-02-03,
but somehow never got checked in.)
* src/view-highlight.c: (sl_resize_event_handler),
(sr_resize_event_handler), (st_resize_event_handler),
(sb_resize_event_handler):
Side resize handles will now confirm the actual resize that the object
accepted before adjusting position parameters. Previously some interesting
things happened when resizing a barcode to its minimum size.
Jim Evins [Wed, 4 Feb 2004 02:11:18 +0000 (02:11 +0000)]
2004-02-03 Jim Evins <evins@snaught.com>
* src/object-editor-image-page.c:
(gl_object_editor_prepare_image_page):
Track "changed" signal of pixmap entry's GtkEntry rather than its
"activate" signal -- this catches all changes to the entry rather than
just changes resulting from a browse, so one can easily pull previous
entries from the history.
* src/view-highlight.c: (tl_resize_event_handler),
(tr_resize_event_handler), (bl_resize_event_handler),
(br_resize_event_handler):
Allow control key to be dropped while dragging a corner resize handle
without losing the aspect ratio lock.
Jim Evins [Tue, 3 Feb 2004 04:31:17 +0000 (04:31 +0000)]
2004-02-02 Jim Evins <evins@snaught.com>
* src/label-image.c: (gl_label_image_set_filename):
When setting a new filename adjust size such that the aspect ratio of
the image is preserved using the current size as a bounding box.
* src/view-image.c: (update_object_from_editor_cb):
When updating object from editor, feed back possible size changes to
editor as a result of a possible change in image.
* src/object-editor-size-page.c: (size_reset_cb):
Fixed typo when blocking spin handlers. If the base size is larger than
the max size, treat max size as a bounding box while keeping aspect
ratio.
Jim Evins [Tue, 3 Feb 2004 02:11:36 +0000 (02:11 +0000)]
2004-02-02 Jim Evins <evins@snaught.com>
* src/label-object.h:
* src/label-object.c: (gl_label_object_set_size),
(gl_label_object_set_size_honor_aspect):
Added gl_label_object_set_size_honor_aspect() which will maintain the
current aspect ratio by modifying the supplied w or h apropriately.
* src/view-highlight.c: (tl_resize_event_handler),
(tr_resize_event_handler), (bl_resize_event_handler),
(br_resize_event_handler):
Corner handles will now maintain the current aspect ratio if the
control key is pressed while resizing. This addresses feature
request #816603.
Jim Evins [Wed, 7 Jan 2004 05:10:22 +0000 (05:10 +0000)]
2004-01-06 Jim Evins <evins@snaught.com>
Split-out template.[ch], paper.[ch], xml-template.[ch], xml-paper.[ch], and
xml.[ch] into a separate library called libglabels, to facilitate third
party use of glabels template files. This was suggested by Wayne Schuller.
Once split-out, some modifications to the structures and functions to
make a cleaner more useful API, hopefully. Rather extensive changes have
propogated to other modules.
* src/paper.h:
* src/paper.c:
* src/template.h:
* src/template.c:
* src/xml-paper.h:
* src/xml-paper.c:
* src/xml-template.h:
* src/xml-template.c:
* src/xml.h:
* src/xml.c:
These files have been moved to libglabels/. API cleanup performed.
* libglabels/libglabels.h:
* libglabels/libglabels-private.h:
* libglabels/Makefile.am:
These files have been added to finish out libglabels.
* Makefile.am:
* configure.in:
* glabels.spec.in:
* po/POTFILES.in:
* src/Makefile.am:
Modified to reflect new sets of files in src/ and libglabels/.
* COPYING.LIBGLABELS:
* COPYING-DOCS:
Added copy of the LGPL for libglabels, and a copy the GFDL for
documentation.
Jim Evins [Sun, 4 Jan 2004 04:18:02 +0000 (04:18 +0000)]
2004-01-03 Jim Evins <evins@snaught.com>
* AUTHORS:
Added acknowledgement of contributions by Wayne Schuller.
* src/commands.c: (gl_cmd_file_print):
Create extra reference to print dialog, so that it can be properly re-used.
* src/mygal/mygal-combo-box.h:
* src/mygal/mygal-combo-box.c:
(mygal_combo_box_popup_hide_unconditional),
(mygal_combo_box_popup_display), (mygal_combo_box_set_display),
(gtk_combo_set_tearoff_state), (mygal_combo_box_construct),
(mygal_combo_box_set_arrow_relief), (mygal_combo_box_set_title),
(mygal_combo_box_set_tearable):
Changed all occurances of GTK_IS_COMBO_BOX to MYGAL_IS_COMBO_BOX, to
complete the rename of this widget to prevent namespace collisions
with Gtk+-2.3.
* src/prefs-dialog.glade:
Fixed alignment of Fill/Color widgets.
Jim Evins [Sat, 3 Jan 2004 20:50:54 +0000 (20:50 +0000)]
2004-01-03 Jim Evins <evins@snaught.com>
* pixmaps/ex-rect-size.png:
* pixmaps/ex-round-size.png:
* pixmaps/ex-cd-size.png:
* pixmaps/Makefile.am:
Added ex-rect-size.png, ex-round-size.png, and ex-cd-size.png image
files to be used as illustrations/examples in the template-designer.
* src/template-designer.c: (construct_rect_size_page),
(construct_round_size_page), (construct_cd_size_page),
(construct_nlayouts_page), (rect_size_page_prepare_cb),
(round_size_page_prepare_cb), (cd_size_page_prepare_cb),
(layout_page_prepare_cb), (build_template):
* src/template-designer.glade:
Added illustrations for rectangle, round, and cd label size pages.
Added margin spinboxes to these pages, and now add a margin markup
to the constructed template. Added realistic default values for
some of the size spinboxes. Cleaned up the code for setting spinbox
ranges on the layouts page.
* src/view-text.c: (construct_properties_editor),
(update_object_from_editor_cb),
(update_object_from_editor_size_cb):
Track size changes from object editor separately from other
properties. This is so the default size (0,0) of a text
object is not modified unintentionally.
Jim Evins [Tue, 30 Dec 2003 05:41:48 +0000 (05:41 +0000)]
2003-12-30 Jim Evins <evins@snaught.com>
* src/template-designer.c:
* src/template-designer.h:
* src/template-designer.glade:
New template designer assistant.
* po/POTFILES.in:
* src/Makefile.am:
Added entries for src/template-designer.* files.
* pixmaps/ex-1layout.png
* pixmaps/ex-2layouts.png
* pixmaps/Makefile.am:
Added the new image files ex-*.png used as illustrations in the
template designer assistant.
* src/print-dialog.h:
* src/print-dialog.c: (gl_print_dialog_finalize),
(gl_print_dialog_new), (gl_print_dialog_construct),
(gl_print_dialog_force_outline_flag):
Changed first argument of gl_print_dialog_new() from glView to glLabel,
to support printing from the template designer assistant which does not
have a full-fledged view. Nothing else from the view object was being
used by the dialog anyway.
Added the gl_print_dialog_force_outline_flag() method, for better
integration with the template designer assistant.
* src/commands.h:
* src/commands.c: (gl_cmd_file_template_designer),
(gl_cmd_file_print):
Modified print command to provide label instead of view to dialog.
Added the gl_cmd_file_template_designer() command to invoke the
template designer assistant.
* src/ui.c:
* src/glabels-ui.xml:
Added support for template designer assistant.
* src/wdgt-mini-preview.h:
* src/wdgt-mini-preview.c: (gl_wdgt_mini_preview_set_template),
(gl_wdgt_mini_preview_set_bg_color):
Preview is now centered in canvas. Added
gl_wdgt_mini_preview_set_bg_color() to allow the template designer
assistant to match the background color with its own.
* src/print.c: (clip_to_outline):
Fixed really stupid bug when adding waste to clip region of rectangular
labels/cards. Each side of the clip region needs to be extended by
twice the waste margin, as well as negatively offset by the waste
margin.
Jim Evins [Sun, 28 Dec 2003 20:20:23 +0000 (20:20 +0000)]
2003-12-28 Jim Evins <evins@snaught.com>
* src/prefs-dialog.c: (update_object_page_from_prefs):
Block intermediary function align_toggle_cb() instead of
update_prefs_from_object_page() for the three alignment
widgets.
Jim Evins [Sun, 28 Dec 2003 00:29:36 +0000 (00:29 +0000)]
2003-12-27 Jim Evins <evins@snaught.com>
* configure.in:
Updated to work with latest gnome-common package from CVS.
Removed recursive configuration of barcode-0.98.
* acconfig.h:
* macros/*:
Removed.
* Makefile.am:
Added barcode-0.98/ as a SUBDIR, and removed dist-hook.
* barcode-0.98/Makefile.in:
* barcode-0.98/configure.in:
* barcode-0.98/Makefile.am:
* barcode-0.98/README.glabels:
Modified to ignore the barcode package's build system, and build
as a part of glabels.
Renamed Makefile.in to Makefile.in.dist.
Renamed configure.in to configure.in.dist.
Added barcode-0.98/Makefile.am and barcode-0.98/README.glabels.
* src/Makefile.am:
* src/mygal/Makefile.am:
* src/recent-files/Makefile.am:
In order to build against the GNOME 2.5 platform,
all use of *_DISABLE_DEPRECATED compile-time flags has been removed.
* src/mygal/Makefile.am:
* src/mygal/mygal-combo-box.c:
* src/mygal/mygal-combo-box.h:
* src/mygal/widget-color-combo.c:
* src/mygal/widget-color-combo.h:
* po/POTFILES.in:
In order to build against the GNOME 2.5 platform,
Renamed gtk_combo_box widget to mygal_combo_box, to prevent namespace
collisions with the real gtk_combo_box widget, now a part of gtk.
Jim Evins [Sun, 28 Dec 2003 00:19:55 +0000 (00:19 +0000)]
2003-12-27 Jim Evins <evins@snaught.com>
* configure.in:
Updated to work with latest gnome-common package from CVS.
Removed recursive configuration of barcode-0.98.
* acconfig.h:
* macros/*:
Removed.
* Makefile.am:
Added barcode-0.98/ as a SUBDIR, and removed dist-hook.
* barcode-0.98/Makefile.in:
* barcode-0.98/configure.in:
* barcode-0.98/Makefile.am:
* barcode-0.98/README.glabels:
Modified to ignore the barcode package's build system, and build
as a part of glabels.
Renamed Makefile.in to Makefile.in.dist.
Renamed configure.in to configure.in.dist.
Added barcode-0.98/Makefile.am and barcode-0.98/README.glabels.
* src/Makefile.am:
* src/mygal/Makefile.am:
* src/recent-files/Makefile.am:
In order to build against the GNOME 2.5 platform,
all use of *_DISABLE_DEPRECATED compile-time flags has been removed.
* src/mygal/Makefile.am:
* src/mygal/mygal-combo-box.c:
* src/mygal/mygal-combo-box.h:
* src/mygal/widget-color-combo.c:
* src/mygal/widget-color-combo.h:
* po/POTFILES.in:
In order to build against the GNOME 2.5 platform,
Renamed gtk_combo_box widget to mygal_combo_box, to prevent namespace
collisions with the real gtk_combo_box widget, now a part of gtk.
Jim Evins [Sun, 28 Dec 2003 00:13:29 +0000 (00:13 +0000)]
2003-12-27 Jim Evins <evins@snaught.com>
* configure.in:
Updated to work with latest gnome-common package from CVS.
Removed recursive configuration of barcode-0.98.
* acconfig.h:
* macros/*:
Removed.
* Makefile.am:
Added barcode-0.98/ as a SUBDIR, and removed dist-hook.
* barcode-0.98/Makefile.in:
* barcode-0.98/configure.in:
* barcode-0.98/Makefile.am:
* barcode-0.98/README.glabels:
Modified to ignore the barcode package's build system, and build
as a part of glabels.
Renamed Makefile.in to Makefile.in.dist.
Renamed configure.in to configure.in.dist.
Added barcode-0.98/Makefile.am and barcode-0.98/README.glabels.
* src/Makefile.am:
* src/mygal/Makefile.am:
* src/recent-files/Makefile.am:
In order to build against the GNOME 2.5 platform,
all use of *_DISABLE_DEPRECATED compile-time flags has been removed.
* src/mygal/Makefile.am:
* src/mygal/mygal-combo-box.c:
* src/mygal/mygal-combo-box.h:
* src/mygal/widget-color-combo.c:
* src/mygal/widget-color-combo.h:
* po/POTFILES.in:
In order to build against the GNOME 2.5 platform,
Renamed gtk_combo_box widget to mygal_combo_box, to prevent namespace
collisions with the real gtk_combo_box widget, now a part of gtk.
Jim Evins [Sat, 27 Dec 2003 04:33:08 +0000 (04:33 +0000)]
2003-12-26 Jim Evins <evins@snaught.com>
* src/paper.c:
* src/template.c:
* src/util.c:
* src/util.h:
Moved local versions of get_home_data_dir() in paper.c and
template.c to util package. Cleaned up formatting in
util.[ch].
* src/template.c:
In gl_template_register() save a copy of the template in
~/.glabels if the template is not known. Still need to
handle duplicate filename case and duplicate name but
different template case.
* src/xml-label.c:
* src/xml.h:
Moved local definition of NAME_SPACE macro from xml-label.c
to xml.h.
* src/xml-template.c:
* src/xml-template.h:
Added function gl_xml_template_write_template_to_file(), used
in gl_template_register().
Jim Evins [Fri, 26 Dec 2003 06:56:12 +0000 (06:56 +0000)]
When looking up templates by name and name isn't found, return
first template instead of NULL (suggested by Wayne Schuller <k_wayne@linuxpower.org>). In addition, added code to register templates (make known, if not already known) when they are encountered when reading a label.
Jim Evins [Fri, 19 Dec 2003 05:21:02 +0000 (05:21 +0000)]
Created 2 methods for setting label for mini-preview widget. The first is "by name" and the second is by template. This second method allows us to use a label's local template, even if its name is not an exact match with an existing template's -- can occur if templates are renamed between versions or if a label uses someone else's custom template.
Jim Evins [Wed, 17 Dec 2003 00:30:21 +0000 (00:30 +0000)]
Modifications to track properties of selected objects. This addresses Bug #839801. Patch provided by Emmanuel Pacaud <emmanuel.pacaud@univ-poitiers.fr>.
Jim Evins [Fri, 12 Dec 2003 03:22:14 +0000 (03:22 +0000)]
Removed some artifacts in copy() method. In particular a g_free() on an unitialized automatic variable was removed, which caused a copy/paste of a text object to segfault (See bug #857773).
Jim Evins [Sat, 6 Dec 2003 14:49:16 +0000 (14:49 +0000)]
- Changed gl_prefs from a simple structure to a full-fledged object (prefs_model).
- Moved prefs_init after paper_init so that page size proof reading code in prefs_model_load_settings works properly.
Jim Evins [Sat, 29 Nov 2003 03:34:01 +0000 (03:34 +0000)]
Delay doing a gtk_widget_show on notebook until it is known if any pages are visible or not. Doing the show on a notebook with all hidden pages causes a crash on Fedora Core 1/Gnome 2.4.
Jim Evins [Thu, 27 Nov 2003 06:27:43 +0000 (06:27 +0000)]
Created generic "get" methods for text, fill and line properties for all label objects. This will make it easier to track changes in a general view such as the property toolbar.
Jim Evins [Wed, 26 Nov 2003 01:12:23 +0000 (01:12 +0000)]
Modified zoom code:
- Now keeps track of zoom levels, rather than screen scale
- Calculates home scale from screen DPI
- View size changes are tracked, and if selected zoom_to_fit is maintained.
- New windows default to zoom_to_fit.
- Tracks changes in screen, so that new home scale can be updated
Jim Evins [Mon, 24 Nov 2003 03:44:28 +0000 (03:44 +0000)]
Changed object property dialogs to a single object property editor sidebar.
Added zoom to fit command.
Converted object property editor and preferences dialog to use libglade and removed un-needed widgets.
Jim Evins [Sat, 15 Nov 2003 13:50:29 +0000 (13:50 +0000)]
Added "break" in draw_markup_layer between line and circle cases of switch. This fixes Bug #842705. This is also the 2nd time I have fixed this bug -- I must of neglected to check it in.
Jim Evins [Tue, 11 Nov 2003 01:39:45 +0000 (01:39 +0000)]
Prefixed $(configdir) with $(DESTDIR) in intall-data-local rule. Patch provided by Andrew Lau <netsnipe@users.sourceforge.net> needed to build debian package.
Jim Evins [Sun, 9 Nov 2003 15:34:08 +0000 (15:34 +0000)]
One of the signal handlers (view_scale_changed_cb) created with a view_highlight actually belongs to view. So when a view_highlight is finalized, we must disconnect this handler. This fixes the crash reported in bug #836873.
Jim Evins [Mon, 27 Oct 2003 04:15:24 +0000 (04:15 +0000)]
Fix for Bug #822848: in gl_window_destroy() unreference window->uic and recent_view.
Hack: squirrel away recent_view as data in window->uic, and extract this in gl_window_destroy(). A better approach might be to wrap up the ui_component in its own object, then simply unreference it.
Jim Evins [Sun, 19 Oct 2003 05:00:58 +0000 (05:00 +0000)]
Applied patch #826108: Installs files to register glabels and glabels filetypes/mimetypes with gnome. This addresses bug #822852. Supplied by Emmanuel Pacaud <emmanuel.pacaud@univ-poitiers.fr>. This patch adds the files:
Jim Evins [Fri, 17 Oct 2003 03:26:47 +0000 (03:26 +0000)]
Cleanup of Avery US-Letter templates.
- Spaced between manufacturer and part # to facilitate sorting, i.e. Assume part #s are 5 digits and right justified.
- Unified descriptions so they are consistent with the generic portion of Avery's descriptions, and their are fewer unique descriptions to facilitate translations.
- If multiple types per sheet or part #, the part # is suffixed with an appropriate description (e.g. 8391-Disc).
Jim Evins [Wed, 15 Oct 2003 01:02:46 +0000 (01:02 +0000)]
Applied patch #822935. This patch slightly increases the invalidated area during a redraw request, to account for anti-aliasing. This prevent small artifacts from being left around when text and barcode objects are dragged around the canvas. This patch also corrects an oversight in view-barcode.c when converting from gnome_canvas_hacktext to gl_canvas_hacktext. This patch was provided by Emmanuel Pacaud <emmanuel.pacaud@univ-poitiers.fr>.
Jim Evins [Mon, 13 Oct 2003 02:00:10 +0000 (02:00 +0000)]
Patch #820699: corrects interpretation of Object-text nodes when it consists of a single Field node. Interpretation gets screwed up by the automatic XML indentation. Patch provided by: Emmanuel Pacaud <emmanuel.pacaud@univ-poitiers.fr>.