* Copyright (C) 1999-2000 Sven Neumann <sven@gimp.org>
Glabels includes contributions from:
+ Frederic Ruaudel <grumz@users.sf.net>
Emmanuel Pacaud <emmanuel.pacaud@univ-poitiers.fr>
Wayne Schuller <k_wayne@linuxpower.org>
nestor di <nestordi@usuarios.retecal.es> -- excellent splash screen
Translations:
- Olivier Berger <oberger@april.org> -- French
+ Olivier Berger <oberger@april.org> -- French (original)
+ Florent Morel <florent@taket.org> -- French (2.0.2)
Marcus Bauer <m@7n7.de> -- German (original)
Christian Neumair <christian-neumair@web.de> -- German (1.89.1)
Takeshi AIHANA <aihana@gnome.gr.jp> -- Japanese
JBadger
Frank Altpeter
Matthew J. Lockner
+ Larry Harriman
+ Juan Carlos Valero
+ Nick Hill
And many others for their many helpful suggestions and bug reports -- thanks.
+2005-01-22 Jim Evins <evins@snaught.com>
+
+ * MESSAGE-OF-DOOM:
+ Added.
+ * Makefile.am:
+ Added MESSAGE-OF-DOOM to EXTRA_DIST.
+ * NEWS:
+ Final prep for 2.1.0.
+ * configure.in:
+ Set version to 2.1.0. Output MESSAGE-OF-DOOM.
+ * glabels.spec.in:
+ Added '--remove-original' flag to desktop-file-install, so that there is
+ only one menu entry.
+
+2005-01-20 Jim Evins <evins@snaught.com>
+
+ * data/glade/object-editor.glade:
+ - Font family entry should not be editable.
+ - img_key_entry should have sensitivity=YES, so that it follows the
+ sensitivity of img_key_combo.
+
+2005-01-19 Jim Evins <evins@snaught.com>
+
+ * AUTHORS:
+ Give credit to Frederic Ruaudel for the color merge patches.
+
+2005-01-18 Frederic Ruaudel <grumz@users.sf.net>
+
+ Add support to merge color for all other color attribute (Feature
+ Requests item #1008635. If the data is invalid, the color used is transparent
+ (GL_COLOR_NONE). The format for color in merge data file are those accepted
+ by gdk_color_parse() these include name for a color from rgb.txt, such as
+ DarkSlateGray, or a hex specification such as #305050. File format has been
+ changed but backward compatibility is preserved for all format. For
+ box/ellipse/line, keep attribute "line_color" for static color or replace by
+ "line_color_field" for merge data. For text/barcode objects, keep attribute
+ "color" for static color or replace by "color_field" for merge data. In the
+ edit canvas window, merged color are represented by half-transparent black
+ line/area.
+
+ * data/dtd/glabels-2.0.dtd:
+ Added line_color_field to line_attrs. Added color_field to
+ Object-barcode and Span.
+ * data/glade/object-editor.glade:
+ Modify the layout of the editor to add merge possibility to color options
+ * src/color.c:
+ Fix a copy/paste error in a comment
+ * src/color.h:
+ Add default color for merge color representation in the editor canvas.
+ * src/label-barcode.c:
+ * src/object-editor-bc-page.c:
+ * src/view-barcode.c:
+ Add merge color support for barcode color.
+ * src/label-box.c:
+ * src/view-box.c:
+ Add merge color support for box border color.
+ * src/label-ellipse.c:
+ * src/view-ellipse.c:
+ Add merge color support for ellipse border color.
+ * src/label-line.c:
+ * src/view-line.c:
+ Add merge color support for line color.
+ * src/label-object.c:
+ * src/label-object.h:
+ * src/object-editor.c:
+ * src/object-editor.h:
+ * src/ui-property-bar.c:
+ * src/view.c:
+ * src/view.h:
+ * src/xml-label-04.c:
+ * src/xml-label-191.c:
+ Add support for merging to other color attribute.
+ * src/label-text.c:
+ * src/object-editor-text-page.c:
+ * src/view-text.c:
+ Add merge color support for text color.
+ * src/object-editor-fill-page.c:
+ Change a blocked handler that didn't match the good widget. Fix the type
+ of some debug message.
+ * src/object-editor-line-page.c:
+ Add merging support to line color option.
+ * src/object-editor-private.h:
+ Add variables for new widget.
+ * src/print.c:
+ Modify the draw functions to get merge data if needed.
+ * src/window.c:
+ Change the default size of the window in order to see all widget in the
+ "text style tab" of the editor.
+ * src/xml-label.c:
+ Modify the parser to record/retreive the field value for objects that need
+ "color" attribute. For box/ellipse/line, keep attribute "line_color" for
+ static color or replace by "line_color_field" for merge data. For
+ text/barcode objects, keep attribute "color" for static color or replace
+ by "color_field" for merge data.
+
+2005-01-17 Jim Evins <evins@snaught.com>
+
+ * src/view.c: (screen_changed_cb):
+ Don't do anything if we don't have a screen.
+
+2005-01-06 Jim Evins <evins@snaught.com>
+
+ * src/view.c: (get_home_scale):
+ Fixed bad call to gtk_widget_has_screen() -- huh?.
+
+2005-01-06 Jim Evins <evins@snaught.com>
+
+ * data/dtd/glabels-2.0.dtd:
+ Added fill_color_field to fill_attrs. Also added xmlns attribute to all
+ top-level elements.
+
+2005-01-06 Jim Evins <evins@snaught.com>
+
+ * data/glade/object-editor.glade:
+ Set entries for fill and data field key dropdowns to NOT editable.
+ * src/view-box.c: (construct_properties_editor):
+ * src/view-ellipse.c: (construct_properties_editor):
+ Update object editor when label's merge property has changed.
+ * src/xml-label.c: (xml_parse_object_ellipse):
+ Completed the merge color support for the ellipse item.
+
+2005-01-06 Frederic Ruaudel <grumz@users.sf.net>
+
+ Add support to merge color for object that have a "Fill color" attribute (Feature
+ Requests item #1008635. If the data is invalid, the color used is transparent
+ (GL_COLOR_NONE). The format for color in merge data file are those accepted
+ by gdk_color_parse() these include name for a color from rgb.txt, such as
+ DarkSlateGray, or a hex specification such as #305050. File format has been
+ changed but backward compatibility is preserved for all format. For box/ellipse,
+ keep attribute "fill_color" for static color or replace by "fill_color_field"
+ for merge data.
+
+ * data/glade/object-editor.glade:
+ Modify "Fill" tab to add the merge key combo and convert the labels into
+ radio button.
+ * src/color.h:
+ * src/color.c:
+ Add "glColorNode" structure and associated functions to manage it. This
+ structure is equivalent for color than the "glTextNode". It holds the color
+ and the key field.
+ * src/label-object.h:
+ * src/label-object.c:
+ * src/label-box.c:
+ * src/label-ellipse.c:
+ * src/ui-property-bar.c:
+ * src/view.h:
+ * src/view.c:
+ * src/view-box.c:
+ * src/view-ellipse.c:
+ * src/xml-label-04.c:
+ * src/xml-label-191.c:
+ Change functions of objects that have a "fill color" attribute to use the
+ new "glColorNode" structure. Use barcode code as example.
+ * src/Makefile.am:
+ Add the color.[ch] file to glabels_batch binary that now need support for
+ "glColorNode".
+ * src/object-editor.h:
+ * src/object-editor.c:
+ * src/object-editor-fill-page.c:
+ Manage the new widget of the editor's "Fill" tab : key combo and radio button
+ to choose between static color or merge key. Use barcode code as example.
+ * src/object-editor-private.h:
+ Add new widget in the "_glObjectEditorPrivate" structure.
+ * src/print.c:
+ Modify the draw functions to get merge data if needed.
+ * src/xml-label.c:
+ Modify the parser to record/retreive the field value for objects that need
+ "Fill color" attribute. For box/ellipse, put attribute "fill_color" for static
+ color or "fill_color_field" for merge data.
+
+2005-01-04 Jim Evins <evins@snaught.com>
+
+ * AUTHORS:
+ * data/templates/avery-iso-templates.xml:
+ * data/templates/misc-iso-templates.xml:
+ * data/templates/misc-us-templates.xml:
+ Added templates, submitted by Larry Harriman, Juan Carlos Valero, and
+ Nick Hill.
+
+2004-11-26 Jim Evins <evins@snaught.com>
+
+ * AUTHORS:
+ * po/fr.po:
+ Updated french translations provided by Florent Morel <florent@taket.org>.
+ * src/view-barcode.c:
+ * src/view-box.c:
+ * src/view-ellipse.c:
+ * src/view-image.c:
+ * src/view-line.c:
+ * src/view-text.c:
+ Added '#include <config.h>' -- HAVE_*GETTEXT macros were not defined and
+ thus _() strings were not being translated.
+
+2004-11-14 Jim Evins <evins@snaught.com>
+
+ * src/debug.h:
+ * src/debug.c: (gl_debug_init), (gl_debug):
+ Borrowed from gedit: use environmental variables to select debug
+ sections.
+ * src/splash.c:
+ Removed unused include of debug.h.
+ * src/glabels.c: (main):
+ Added call to gl_debug_init(), and removed debug clutter from command line
+ options.
+ * src/glabels-batch.c: (main):
+ Added call to gl_debug_init().
+
+2004-11-13 Jim Evins <evins@snaught.com>
+
+ Drawing and property toolbars were being initialized with the "icons and text"
+ look in Fedora Core 3. Even though none of the buttons had any text attached to
+ them, the buttons were being sized as if they were. This led to less real estate
+ for the property editor, leading to Bug #1064630. The
+
+ * data/ui/glabels-ui.xml:
+ Added explicit "look" property to both drawing and property toolbars.
+ * src/prefs-model.c: (gl_prefs_model_save_settings),
+ (gl_prefs_model_load_settings):
+ * src/prefs-model.h:
+ Removed drawing_toolbar_button_style configuration parameter.
+ * src/ui.c: (view_menu_item_toggled_cb),
+ (set_app_drawing_toolbar_style):
+ Do not attempt to adjust look property of the drawing toolbar.
+
+2004-10-28 Jim Evins <evins@snaught.com>
+
+ * data/pixmaps/glabels-about-logo.png:
+ Updated about logo.
+
+2004-10-28 Jim Evins <evins@snaught.com>
+
+ * data/man/glabels.1:
+ * src/glabels-batch.c: (main):
+ * src/print.h:
+ * src/print.c: (gl_print_batch):
+
+ Added option to glabels-batch to select the first label to begin
+ printing on.
+
+2004-09-26 Jim Evins <evins@snaught.com>
+
+ * data/desktop/glabels.desktop.in:
+ Point to app icon, "glabels.png"
+ * data/mime/glabels.keys.in:
+ Point at mime icon, "glabels-application-x-glabels.png"
+ * data/pixmaps/Makefile.am:
+ Added glabels_app_icondir. Renamed icons.
+ * data/pixmaps/glabels.png:
+ New cleaned up app icon. Deleted glabels-icon.png.
+ * data/pixmaps/glabels-application-x-glabels.png:
+ New mime icon.
+ * data/pixmaps/glabels-splash.png:
+ Renamed glabels-logo to glabels-splash to be more correct about role.
+ * src/glabels.c:
+ * src/template-designer.c:
+ Point at app icon, "glabels.png"
+ * src/splash.c:
+ Point at renamed splash image, "glabels-splash.png"
+
2004-08-22 Jim Evins <evins@snaught.com>
* AUTHORS:
* src/xml-template.h:
Added function gl_xml_template_write_template_to_file(), used
in gl_template_register().
-
-
--- /dev/null
+ *** IMPORTANT ***
+
+This is an unstable (development) version of glabels.
+It is for testing purposes only.
+
+Please, DO NOT use it in a production environment.
+It will probably crash and you will lose your data.
+
+If you are looking for a stable release of glabels, it can be downloaded from:
+
+ http://glabels.sourceforge.net/download
+
+ *** END OF WARNING ***
+
+
intltool-merge.in \
intltool-update.in \
glabels.spec.in \
- glabels.spec
+ glabels.spec \
+ MESSAGE-OF-DOOM
+* gLabels 2.1.0 (unstable) release. Release date 2005-01-22.
+
+- Added ability to select color from merge source (Frederic Ruaudel)
+- See 2.0.2
+
+* gLabels 2.0.2 release. Release date 2005-01-22.
+
+- Desktop file reconciled with desktop-entry-spec
+- New cleaned-up icon
+- Added option to glabels-batch to allow selection of first label.
+- Added options to glabels-batch to allow selection of merge source and crop marks.
+ (José Dapena Paz)
+- Updated french translation (Florent Morel)
+- Fixed translation problem with object editor labels
+- Minor bug fixes and cleanup
+- New templates
+
+* gLabels 2.0.1 release. Release date 2004-08-15.
+
+- Fixed crash when reading some labels created with 1.93.x.
+- Updated japanese translations (Takeshi AIHANA)
+- Fixed crash from improperly freeing translation strings.
* gLabels 2.0.0 release. Release date 2004-08-09.
AC_PREREQ(2.52)
-AC_INIT(glabels, 2.1cvs, http://sourceforge.net/tracker/?func=add&group_id=46122&atid=445116)
+AC_INIT(glabels, 2.1.0, http://sourceforge.net/tracker/?func=add&group_id=46122&atid=445116)
AC_CONFIG_SRCDIR(src/glabels.c)
AM_INIT_AUTOMAKE(AC_PACKAGE_NAME, AC_PACKAGE_VERSION)
Compiler: ${CC}
"
+
+cat ${srcdir}/MESSAGE-OF-DOOM
+
_Name=gLabels Label Designer
_Comment=Create labels, business cards and media covers
Exec=glabels %F
-Icon=glabels/glabels-icon.png
+Icon=glabels.png
Terminal=false
Type=Application
Categories=GNOME;Application;Office;
<!-- :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: -->
<!-- :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: -->
<!ELEMENT Glabels-paper-sizes (Paper-size*)>
+<!ATTLIST Glabels-paper-sizes
+ xmlns %STRING_TYPE; #IMPLIED
+>
<!-- :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: -->
<!-- :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: -->
<!-- :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: -->
<!-- :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: -->
<!ELEMENT Glabels-templates (Template*)>
+<!ATTLIST Glabels-templates
+ xmlns %STRING_TYPE; #IMPLIED
+>
<!-- :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: -->
<!-- :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: -->
<!-- :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: -->
<!-- :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: -->
<!ELEMENT Glabels-document (Template, Objects+, Merge?, Data*)>
+<!ATTLIST Glabels-document
+ xmlns %STRING_TYPE; #IMPLIED
+>
<!-- :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: -->
<!-- Paper size -->
>
<!ENTITY % line_attrs
- "line_width %LENGTH_TYPE; #IMPLIED
- line_color %UINT_TYPE; #IMPLIED"
+ "line_width %LENGTH_TYPE; #IMPLIED
+ line_color %UINT_TYPE; #IMPLIED
+ line_color_field %STRING_TYPE; #IMPLIED"
>
<!ENTITY % fill_attrs
- "fill_color %UINT_TYPE; #IMPLIED"
+ "fill_color %UINT_TYPE; #IMPLIED
+ fill_color_field %STRING_TYPE; #IMPLIED"
>
<!ENTITY % affine_attrs
<!ATTLIST Object-barcode
%position_attrs;
%size_attrs;
- style %BC_STYLE_TYPE; #REQUIRED
- text %BOOLEAN_TYPE; #REQUIRED
- checksum %BOOLEAN_TYPE; #REQUIRED
- color %UINT_TYPE; #REQUIRED
- data %STRING_TYPE; #IMPLIED
- field %STRING_TYPE; #IMPLIED
- format %UINT_TYPE; #IMPLIED
+ style %BC_STYLE_TYPE; #REQUIRED
+ text %BOOLEAN_TYPE; #REQUIRED
+ checksum %BOOLEAN_TYPE; #REQUIRED
+ color %UINT_TYPE; #IMPLIED
+ color_field %STRING_TYPE; #IMPLIED
+ data %STRING_TYPE; #IMPLIED
+ field %STRING_TYPE; #IMPLIED
+ format %UINT_TYPE; #IMPLIED
%affine_attrs;
%shadow_attrs;
>
font_weight %FONT_WEIGHT_TYPE; #IMPLIED
font_italic %BOOLEAN_TYPE; #IMPLIED
color %UINT_TYPE; #IMPLIED
+ color_field %STRING_TYPE; #IMPLIED
line_spacing %LENGTH_TYPE; #IMPLIED
>
>
<!ELEMENT NL EMPTY>
-
-
<property name="modal">False</property>
<property name="resizable">True</property>
<property name="destroy_with_parent">False</property>
+ <property name="decorated">True</property>
+ <property name="skip_taskbar_hint">False</property>
+ <property name="skip_pager_hint">False</property>
+ <property name="type_hint">GDK_WINDOW_TYPE_HINT_DIALOG</property>
+ <property name="gravity">GDK_GRAVITY_NORTH_WEST</property>
<property name="has_separator">True</property>
<child internal-child="vbox">
<property name="label">gtk-close</property>
<property name="use_stock">True</property>
<property name="relief">GTK_RELIEF_NORMAL</property>
+ <property name="focus_on_click">True</property>
<property name="response_id">-7</property>
</widget>
</child>
<property name="visible">True</property>
<property name="can_focus">True</property>
<property name="editable">True</property>
+ <property name="overwrite">False</property>
+ <property name="accepts_tab">True</property>
<property name="justification">GTK_JUSTIFY_LEFT</property>
<property name="wrap_mode">GTK_WRAP_NONE</property>
<property name="cursor_visible">True</property>
<property name="label" translatable="yes">Insert merge field</property>
<property name="use_underline">True</property>
<property name="relief">GTK_RELIEF_NORMAL</property>
+ <property name="focus_on_click">True</property>
</widget>
<packing>
<property name="padding">0</property>
</packing>
</child>
- <child>
- <widget class="GtkLabel" id="text_color_label">
- <property name="visible">True</property>
- <property name="label" translatable="yes">Color:</property>
- <property name="use_underline">False</property>
- <property name="use_markup">False</property>
- <property name="justify">GTK_JUSTIFY_LEFT</property>
- <property name="wrap">False</property>
- <property name="selectable">False</property>
- <property name="xalign">0</property>
- <property name="yalign">0.5</property>
- <property name="xpad">0</property>
- <property name="ypad">0</property>
- </widget>
- <packing>
- <property name="left_attach">0</property>
- <property name="right_attach">1</property>
- <property name="top_attach">3</property>
- <property name="bottom_attach">4</property>
- <property name="x_options">fill</property>
- <property name="y_options"></property>
- </packing>
- </child>
-
<child>
<widget class="GtkLabel" id="text_align_label">
<property name="visible">True</property>
<widget class="GtkEntry" id="text_family_entry">
<property name="visible">True</property>
<property name="can_focus">True</property>
- <property name="editable">True</property>
+ <property name="editable">False</property>
<property name="visibility">True</property>
<property name="max_length">0</property>
<property name="text" translatable="yes"></property>
<property name="visible">True</property>
<property name="can_focus">True</property>
<property name="relief">GTK_RELIEF_NORMAL</property>
+ <property name="focus_on_click">True</property>
<property name="active">False</property>
<property name="inconsistent">False</property>
<property name="visible">True</property>
<property name="can_focus">True</property>
<property name="relief">GTK_RELIEF_NORMAL</property>
+ <property name="focus_on_click">True</property>
<property name="active">False</property>
<property name="inconsistent">False</property>
<property name="visible">True</property>
<property name="can_focus">True</property>
<property name="relief">GTK_RELIEF_NORMAL</property>
+ <property name="focus_on_click">True</property>
<property name="active">False</property>
<property name="inconsistent">False</property>
<property name="visible">True</property>
<property name="can_focus">True</property>
<property name="relief">GTK_RELIEF_NORMAL</property>
+ <property name="focus_on_click">True</property>
<property name="active">False</property>
<property name="inconsistent">False</property>
<property name="visible">True</property>
<property name="can_focus">True</property>
<property name="relief">GTK_RELIEF_NORMAL</property>
+ <property name="focus_on_click">True</property>
<property name="active">False</property>
<property name="inconsistent">False</property>
</packing>
</child>
- <child>
- <widget class="GtkHBox" id="hbox3">
- <property name="visible">True</property>
- <property name="homogeneous">False</property>
- <property name="spacing">12</property>
-
- <child>
- <widget class="Custom" id="text_color_combo">
- <property name="visible">True</property>
- <property name="creation_function">gl_object_editor_construct_color_combo</property>
- <property name="int1">2</property>
- <property name="int2">0</property>
- <property name="last_modification_time">Sun, 16 Nov 2003 06:52:23 GMT</property>
- </widget>
- <packing>
- <property name="padding">0</property>
- <property name="expand">False</property>
- <property name="fill">False</property>
- </packing>
- </child>
- </widget>
- <packing>
- <property name="left_attach">1</property>
- <property name="right_attach">2</property>
- <property name="top_attach">3</property>
- <property name="bottom_attach">4</property>
- <property name="x_options">fill</property>
- <property name="y_options">fill</property>
- </packing>
- </child>
-
<child>
<widget class="GtkHBox" id="hbox31">
<property name="visible">True</property>
<property name="label" translatable="yes">Allow merge to automatically shrink text</property>
<property name="use_underline">True</property>
<property name="relief">GTK_RELIEF_NORMAL</property>
+ <property name="focus_on_click">True</property>
<property name="active">False</property>
<property name="inconsistent">False</property>
<property name="draw_indicator">True</property>
<property name="y_options"></property>
</packing>
</child>
+
+ <child>
+ <widget class="GtkVBox" id="vbox3">
+ <property name="visible">True</property>
+ <property name="homogeneous">False</property>
+ <property name="spacing">6</property>
+
+ <child>
+ <widget class="GtkHBox" id="hbox42">
+ <property name="visible">True</property>
+ <property name="homogeneous">False</property>
+ <property name="spacing">6</property>
+
+ <child>
+ <widget class="GtkRadioButton" id="text_color_radio">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="label" translatable="yes"></property>
+ <property name="use_underline">True</property>
+ <property name="relief">GTK_RELIEF_NORMAL</property>
+ <property name="focus_on_click">True</property>
+ <property name="active">False</property>
+ <property name="inconsistent">False</property>
+ <property name="draw_indicator">True</property>
+ </widget>
+ <packing>
+ <property name="padding">0</property>
+ <property name="expand">False</property>
+ <property name="fill">False</property>
+ </packing>
+ </child>
+
+ <child>
+ <widget class="GtkHBox" id="hbox43">
+ <property name="visible">True</property>
+ <property name="homogeneous">False</property>
+ <property name="spacing">12</property>
+
+ <child>
+ <widget class="Custom" id="text_color_combo">
+ <property name="visible">True</property>
+ <property name="creation_function">gl_object_editor_construct_color_combo</property>
+ <property name="int1">2</property>
+ <property name="int2">0</property>
+ <property name="last_modification_time">Sun, 16 Nov 2003 06:52:23 GMT</property>
+ </widget>
+ <packing>
+ <property name="padding">0</property>
+ <property name="expand">False</property>
+ <property name="fill">False</property>
+ </packing>
+ </child>
+ </widget>
+ <packing>
+ <property name="padding">0</property>
+ <property name="expand">True</property>
+ <property name="fill">True</property>
+ </packing>
+ </child>
+ </widget>
+ <packing>
+ <property name="padding">0</property>
+ <property name="expand">True</property>
+ <property name="fill">True</property>
+ </packing>
+ </child>
+
+ <child>
+ <widget class="GtkHBox" id="hbox44">
+ <property name="visible">True</property>
+ <property name="homogeneous">False</property>
+ <property name="spacing">6</property>
+
+ <child>
+ <widget class="GtkRadioButton" id="text_color_key_radio">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="label" translatable="yes">Key:</property>
+ <property name="use_underline">True</property>
+ <property name="relief">GTK_RELIEF_NORMAL</property>
+ <property name="focus_on_click">True</property>
+ <property name="active">False</property>
+ <property name="inconsistent">False</property>
+ <property name="draw_indicator">True</property>
+ <property name="group">text_color_radio</property>
+ </widget>
+ <packing>
+ <property name="padding">0</property>
+ <property name="expand">False</property>
+ <property name="fill">False</property>
+ </packing>
+ </child>
+
+ <child>
+ <widget class="GtkHBox" id="hbox45">
+ <property name="visible">True</property>
+ <property name="homogeneous">False</property>
+ <property name="spacing">12</property>
+
+ <child>
+ <widget class="GtkCombo" id="text_color_key_combo">
+ <property name="width_request">80</property>
+ <property name="visible">True</property>
+ <property name="value_in_list">False</property>
+ <property name="allow_empty">True</property>
+ <property name="case_sensitive">False</property>
+ <property name="enable_arrow_keys">True</property>
+ <property name="enable_arrows_always">False</property>
+
+ <child internal-child="entry">
+ <widget class="GtkEntry" id="text_color_key_entry">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="editable">False</property>
+ <property name="visibility">True</property>
+ <property name="max_length">0</property>
+ <property name="text" translatable="yes"></property>
+ <property name="has_frame">True</property>
+ <property name="invisible_char" translatable="yes">*</property>
+ <property name="activates_default">False</property>
+ </widget>
+ </child>
+
+ <child internal-child="list">
+ <widget class="GtkList" id="list4">
+ <property name="visible">True</property>
+ <property name="selection_mode">GTK_SELECTION_BROWSE</property>
+ </widget>
+ </child>
+ </widget>
+ <packing>
+ <property name="padding">0</property>
+ <property name="expand">False</property>
+ <property name="fill">False</property>
+ </packing>
+ </child>
+ </widget>
+ <packing>
+ <property name="padding">0</property>
+ <property name="expand">True</property>
+ <property name="fill">True</property>
+ </packing>
+ </child>
+ </widget>
+ <packing>
+ <property name="padding">0</property>
+ <property name="expand">True</property>
+ <property name="fill">True</property>
+ </packing>
+ </child>
+ </widget>
+ <packing>
+ <property name="left_attach">1</property>
+ <property name="right_attach">2</property>
+ <property name="top_attach">3</property>
+ <property name="bottom_attach">4</property>
+ <property name="x_options">fill</property>
+ <property name="y_options">fill</property>
+ </packing>
+ </child>
+
+ <child>
+ <widget class="GtkLabel" id="text_color_label">
+ <property name="visible">True</property>
+ <property name="label" translatable="yes">Color:</property>
+ <property name="use_underline">False</property>
+ <property name="use_markup">False</property>
+ <property name="justify">GTK_JUSTIFY_LEFT</property>
+ <property name="wrap">False</property>
+ <property name="selectable">False</property>
+ <property name="xalign">0</property>
+ <property name="yalign">0.14</property>
+ <property name="xpad">0</property>
+ <property name="ypad">0</property>
+ </widget>
+ <packing>
+ <property name="left_attach">0</property>
+ <property name="right_attach">1</property>
+ <property name="top_attach">3</property>
+ <property name="bottom_attach">4</property>
+ <property name="x_options">fill</property>
+ <property name="y_options">fill</property>
+ </packing>
+ </child>
</widget>
<packing>
<property name="padding">0</property>
</packing>
</child>
+ <child>
+ <widget class="GtkVBox" id="vbox2">
+ <property name="visible">True</property>
+ <property name="homogeneous">False</property>
+ <property name="spacing">6</property>
+
+ <child>
+ <widget class="GtkHBox" id="hbox38">
+ <property name="visible">True</property>
+ <property name="homogeneous">False</property>
+ <property name="spacing">6</property>
+
+ <child>
+ <widget class="GtkRadioButton" id="line_color_radio">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="label" translatable="yes"></property>
+ <property name="use_underline">True</property>
+ <property name="relief">GTK_RELIEF_NORMAL</property>
+ <property name="focus_on_click">True</property>
+ <property name="active">False</property>
+ <property name="inconsistent">False</property>
+ <property name="draw_indicator">True</property>
+ </widget>
+ <packing>
+ <property name="padding">0</property>
+ <property name="expand">False</property>
+ <property name="fill">False</property>
+ </packing>
+ </child>
+
+ <child>
+ <widget class="GtkHBox" id="hbox39">
+ <property name="visible">True</property>
+ <property name="homogeneous">False</property>
+ <property name="spacing">12</property>
+
+ <child>
+ <widget class="Custom" id="line_color_combo">
+ <property name="visible">True</property>
+ <property name="creation_function">gl_object_editor_construct_color_combo</property>
+ <property name="int1">2</property>
+ <property name="int2">0</property>
+ <property name="last_modification_time">Sun, 16 Nov 2003 06:52:23 GMT</property>
+ </widget>
+ <packing>
+ <property name="padding">0</property>
+ <property name="expand">False</property>
+ <property name="fill">False</property>
+ </packing>
+ </child>
+ </widget>
+ <packing>
+ <property name="padding">0</property>
+ <property name="expand">True</property>
+ <property name="fill">True</property>
+ </packing>
+ </child>
+ </widget>
+ <packing>
+ <property name="padding">0</property>
+ <property name="expand">True</property>
+ <property name="fill">True</property>
+ </packing>
+ </child>
+
+ <child>
+ <widget class="GtkHBox" id="hbox40">
+ <property name="visible">True</property>
+ <property name="homogeneous">False</property>
+ <property name="spacing">6</property>
+
+ <child>
+ <widget class="GtkRadioButton" id="line_key_radio">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="label" translatable="yes">Key:</property>
+ <property name="use_underline">True</property>
+ <property name="relief">GTK_RELIEF_NORMAL</property>
+ <property name="focus_on_click">True</property>
+ <property name="active">False</property>
+ <property name="inconsistent">False</property>
+ <property name="draw_indicator">True</property>
+ <property name="group">line_color_radio</property>
+ </widget>
+ <packing>
+ <property name="padding">0</property>
+ <property name="expand">False</property>
+ <property name="fill">False</property>
+ </packing>
+ </child>
+
+ <child>
+ <widget class="GtkHBox" id="hbox41">
+ <property name="visible">True</property>
+ <property name="homogeneous">False</property>
+ <property name="spacing">12</property>
+
+ <child>
+ <widget class="GtkCombo" id="line_key_combo">
+ <property name="width_request">80</property>
+ <property name="visible">True</property>
+ <property name="value_in_list">False</property>
+ <property name="allow_empty">True</property>
+ <property name="case_sensitive">False</property>
+ <property name="enable_arrow_keys">True</property>
+ <property name="enable_arrows_always">False</property>
+
+ <child internal-child="entry">
+ <widget class="GtkEntry" id="line_key_entry">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="editable">False</property>
+ <property name="visibility">True</property>
+ <property name="max_length">0</property>
+ <property name="text" translatable="yes"></property>
+ <property name="has_frame">True</property>
+ <property name="invisible_char" translatable="yes">*</property>
+ <property name="activates_default">False</property>
+ </widget>
+ </child>
+
+ <child internal-child="list">
+ <widget class="GtkList" id="list3">
+ <property name="visible">True</property>
+ <property name="selection_mode">GTK_SELECTION_BROWSE</property>
+ </widget>
+ </child>
+ </widget>
+ <packing>
+ <property name="padding">0</property>
+ <property name="expand">False</property>
+ <property name="fill">False</property>
+ </packing>
+ </child>
+ </widget>
+ <packing>
+ <property name="padding">0</property>
+ <property name="expand">True</property>
+ <property name="fill">True</property>
+ </packing>
+ </child>
+ </widget>
+ <packing>
+ <property name="padding">0</property>
+ <property name="expand">True</property>
+ <property name="fill">True</property>
+ </packing>
+ </child>
+ </widget>
+ <packing>
+ <property name="left_attach">1</property>
+ <property name="right_attach">2</property>
+ <property name="top_attach">1</property>
+ <property name="bottom_attach">2</property>
+ <property name="x_options">fill</property>
+ <property name="y_options">fill</property>
+ </packing>
+ </child>
+
<child>
<widget class="GtkLabel" id="line_color_label">
<property name="visible">True</property>
<property name="wrap">False</property>
<property name="selectable">False</property>
<property name="xalign">0</property>
- <property name="yalign">0.5</property>
+ <property name="yalign">0.14</property>
<property name="xpad">0</property>
<property name="ypad">0</property>
</widget>
<property name="top_attach">1</property>
<property name="bottom_attach">2</property>
<property name="x_options">fill</property>
- <property name="y_options"></property>
- </packing>
- </child>
-
- <child>
- <widget class="GtkHBox" id="hbox8">
- <property name="visible">True</property>
- <property name="homogeneous">False</property>
- <property name="spacing">12</property>
-
- <child>
- <widget class="Custom" id="line_color_combo">
- <property name="visible">True</property>
- <property name="creation_function">gl_object_editor_construct_color_combo</property>
- <property name="int1">1</property>
- <property name="int2">0</property>
- <property name="last_modification_time">Sat, 15 Nov 2003 22:10:18 GMT</property>
- </widget>
- <packing>
- <property name="padding">0</property>
- <property name="expand">False</property>
- <property name="fill">False</property>
- </packing>
- </child>
- </widget>
- <packing>
- <property name="left_attach">1</property>
- <property name="right_attach">2</property>
- <property name="top_attach">1</property>
- <property name="bottom_attach">2</property>
- <property name="x_options">fill</property>
<property name="y_options">fill</property>
</packing>
</child>
<property name="column_spacing">12</property>
<child>
- <widget class="GtkLabel" id="label23">
- <property name="visible">True</property>
- <property name="label" translatable="yes">Color:</property>
- <property name="use_underline">False</property>
- <property name="use_markup">False</property>
- <property name="justify">GTK_JUSTIFY_LEFT</property>
- <property name="wrap">False</property>
- <property name="selectable">False</property>
- <property name="xalign">0.5</property>
- <property name="yalign">0.5</property>
- <property name="xpad">0</property>
- <property name="ypad">0</property>
- </widget>
- <packing>
- <property name="left_attach">0</property>
- <property name="right_attach">1</property>
- <property name="top_attach">0</property>
- <property name="bottom_attach">1</property>
- <property name="x_options">fill</property>
- <property name="y_options"></property>
- </packing>
- </child>
-
- <child>
- <widget class="GtkHBox" id="hbox9">
+ <widget class="GtkVBox" id="vbox5">
<property name="visible">True</property>
<property name="homogeneous">False</property>
- <property name="spacing">12</property>
+ <property name="spacing">6</property>
<child>
- <widget class="Custom" id="fill_color_combo">
+ <widget class="GtkHBox" id="hbox50">
<property name="visible">True</property>
- <property name="creation_function">gl_object_editor_construct_color_combo</property>
- <property name="string1"></property>
- <property name="int1">0</property>
- <property name="int2">0</property>
- <property name="last_modification_time">Sat, 15 Nov 2003 20:47:48 GMT</property>
+ <property name="homogeneous">False</property>
+ <property name="spacing">6</property>
+
+ <child>
+ <widget class="GtkRadioButton" id="fill_color_radio">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="label" translatable="yes"></property>
+ <property name="use_underline">True</property>
+ <property name="relief">GTK_RELIEF_NORMAL</property>
+ <property name="focus_on_click">True</property>
+ <property name="active">False</property>
+ <property name="inconsistent">False</property>
+ <property name="draw_indicator">True</property>
+ </widget>
+ <packing>
+ <property name="padding">0</property>
+ <property name="expand">False</property>
+ <property name="fill">False</property>
+ </packing>
+ </child>
+
+ <child>
+ <widget class="GtkHBox" id="hbox51">
+ <property name="visible">True</property>
+ <property name="homogeneous">False</property>
+ <property name="spacing">12</property>
+
+ <child>
+ <widget class="Custom" id="fill_color_combo">
+ <property name="visible">True</property>
+ <property name="creation_function">gl_object_editor_construct_color_combo</property>
+ <property name="int1">2</property>
+ <property name="int2">0</property>
+ <property name="last_modification_time">Sun, 16 Nov 2003 06:52:23 GMT</property>
+ </widget>
+ <packing>
+ <property name="padding">0</property>
+ <property name="expand">False</property>
+ <property name="fill">False</property>
+ </packing>
+ </child>
+ </widget>
+ <packing>
+ <property name="padding">0</property>
+ <property name="expand">True</property>
+ <property name="fill">True</property>
+ </packing>
+ </child>
</widget>
<packing>
<property name="padding">0</property>
- <property name="expand">False</property>
- <property name="fill">False</property>
+ <property name="expand">True</property>
+ <property name="fill">True</property>
+ </packing>
+ </child>
+
+ <child>
+ <widget class="GtkHBox" id="hbox52">
+ <property name="visible">True</property>
+ <property name="homogeneous">False</property>
+ <property name="spacing">6</property>
+
+ <child>
+ <widget class="GtkRadioButton" id="fill_key_radio">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="label" translatable="yes">Key:</property>
+ <property name="use_underline">True</property>
+ <property name="relief">GTK_RELIEF_NORMAL</property>
+ <property name="focus_on_click">True</property>
+ <property name="active">False</property>
+ <property name="inconsistent">False</property>
+ <property name="draw_indicator">True</property>
+ <property name="group">fill_color_radio</property>
+ </widget>
+ <packing>
+ <property name="padding">0</property>
+ <property name="expand">False</property>
+ <property name="fill">False</property>
+ </packing>
+ </child>
+
+ <child>
+ <widget class="GtkHBox" id="hbox53">
+ <property name="visible">True</property>
+ <property name="homogeneous">False</property>
+ <property name="spacing">12</property>
+
+ <child>
+ <widget class="GtkCombo" id="fill_key_combo">
+ <property name="width_request">80</property>
+ <property name="visible">True</property>
+ <property name="value_in_list">False</property>
+ <property name="allow_empty">True</property>
+ <property name="case_sensitive">False</property>
+ <property name="enable_arrow_keys">True</property>
+ <property name="enable_arrows_always">False</property>
+
+ <child internal-child="entry">
+ <widget class="GtkEntry" id="fill_key_entry">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="editable">False</property>
+ <property name="visibility">True</property>
+ <property name="max_length">0</property>
+ <property name="text" translatable="yes"></property>
+ <property name="has_frame">True</property>
+ <property name="invisible_char" translatable="yes">*</property>
+ <property name="activates_default">False</property>
+ </widget>
+ </child>
+
+ <child internal-child="list">
+ <widget class="GtkList" id="list6">
+ <property name="visible">True</property>
+ <property name="selection_mode">GTK_SELECTION_BROWSE</property>
+ </widget>
+ </child>
+ </widget>
+ <packing>
+ <property name="padding">0</property>
+ <property name="expand">False</property>
+ <property name="fill">False</property>
+ </packing>
+ </child>
+ </widget>
+ <packing>
+ <property name="padding">0</property>
+ <property name="expand">True</property>
+ <property name="fill">True</property>
+ </packing>
+ </child>
+ </widget>
+ <packing>
+ <property name="padding">0</property>
+ <property name="expand">True</property>
+ <property name="fill">True</property>
</packing>
</child>
</widget>
<property name="y_options">fill</property>
</packing>
</child>
+
+ <child>
+ <widget class="GtkLabel" id="fill_color_label">
+ <property name="visible">True</property>
+ <property name="label" translatable="yes">Color:</property>
+ <property name="use_underline">False</property>
+ <property name="use_markup">False</property>
+ <property name="justify">GTK_JUSTIFY_LEFT</property>
+ <property name="wrap">False</property>
+ <property name="selectable">False</property>
+ <property name="xalign">0</property>
+ <property name="yalign">0.14</property>
+ <property name="xpad">0</property>
+ <property name="ypad">0</property>
+ </widget>
+ <packing>
+ <property name="left_attach">0</property>
+ <property name="right_attach">1</property>
+ <property name="top_attach">0</property>
+ <property name="bottom_attach">1</property>
+ <property name="x_options">fill</property>
+ <property name="y_options">fill</property>
+ </packing>
+ </child>
</widget>
<packing>
<property name="padding">0</property>
<property name="label" translatable="yes">File:</property>
<property name="use_underline">True</property>
<property name="relief">GTK_RELIEF_NORMAL</property>
+ <property name="focus_on_click">True</property>
<property name="active">False</property>
<property name="inconsistent">False</property>
<property name="draw_indicator">True</property>
<property name="browse_dialog_title" translatable="yes">Load image</property>
<property name="modal">False</property>
<property name="do_preview">True</property>
+ <property name="use_filechooser">False</property>
<child internal-child="entry">
<widget class="GtkEntry" id="combo-entry3">
<property name="label" translatable="yes">Key:</property>
<property name="use_underline">True</property>
<property name="relief">GTK_RELIEF_NORMAL</property>
+ <property name="focus_on_click">True</property>
<property name="active">False</property>
<property name="inconsistent">False</property>
<property name="draw_indicator">True</property>
<child internal-child="entry">
<widget class="GtkEntry" id="img_key_entry">
<property name="visible">True</property>
- <property name="sensitive">False</property>
<property name="can_focus">True</property>
<property name="editable">False</property>
<property name="visibility">True</property>
<property name="label" translatable="yes">Literal:</property>
<property name="use_underline">True</property>
<property name="relief">GTK_RELIEF_NORMAL</property>
+ <property name="focus_on_click">True</property>
<property name="active">False</property>
<property name="inconsistent">False</property>
<property name="draw_indicator">True</property>
<property name="label" translatable="yes">Key:</property>
<property name="use_underline">True</property>
<property name="relief">GTK_RELIEF_NORMAL</property>
+ <property name="focus_on_click">True</property>
<property name="active">False</property>
<property name="inconsistent">False</property>
<property name="draw_indicator">True</property>
<widget class="GtkEntry" id="data_key_entry">
<property name="visible">True</property>
<property name="can_focus">True</property>
- <property name="editable">True</property>
+ <property name="editable">False</property>
<property name="visibility">True</property>
<property name="max_length">0</property>
<property name="text" translatable="yes"></property>
</packing>
</child>
- <child>
- <widget class="GtkLabel" id="bc_color_label">
- <property name="visible">True</property>
- <property name="label" translatable="yes">Color:</property>
- <property name="use_underline">False</property>
- <property name="use_markup">False</property>
- <property name="justify">GTK_JUSTIFY_LEFT</property>
- <property name="wrap">False</property>
- <property name="selectable">False</property>
- <property name="xalign">0</property>
- <property name="yalign">0.5</property>
- <property name="xpad">0</property>
- <property name="ypad">0</property>
- </widget>
- <packing>
- <property name="left_attach">0</property>
- <property name="right_attach">1</property>
- <property name="top_attach">3</property>
- <property name="bottom_attach">4</property>
- <property name="x_options">fill</property>
- <property name="y_options"></property>
- </packing>
- </child>
-
<child>
<widget class="GtkHBox" id="hbox20">
<property name="visible">True</property>
</packing>
</child>
- <child>
- <widget class="GtkHBox" id="hbox23">
- <property name="visible">True</property>
- <property name="homogeneous">False</property>
- <property name="spacing">12</property>
-
- <child>
- <widget class="Custom" id="bc_color_combo">
- <property name="visible">True</property>
- <property name="creation_function">gl_object_editor_construct_color_combo</property>
- <property name="int1">1</property>
- <property name="int2">0</property>
- <property name="last_modification_time">Sun, 16 Nov 2003 07:00:32 GMT</property>
- </widget>
- <packing>
- <property name="padding">0</property>
- <property name="expand">False</property>
- <property name="fill">False</property>
- </packing>
- </child>
- </widget>
- <packing>
- <property name="left_attach">1</property>
- <property name="right_attach">2</property>
- <property name="top_attach">3</property>
- <property name="bottom_attach">4</property>
- <property name="x_options">fill</property>
- <property name="y_options">fill</property>
- </packing>
- </child>
-
<child>
<widget class="GtkCheckButton" id="bc_text_check">
<property name="visible">True</property>
<property name="label" translatable="yes">Text</property>
<property name="use_underline">True</property>
<property name="relief">GTK_RELIEF_NORMAL</property>
+ <property name="focus_on_click">True</property>
<property name="active">False</property>
<property name="inconsistent">False</property>
<property name="draw_indicator">True</property>
<property name="label" translatable="yes">Checksum</property>
<property name="use_underline">True</property>
<property name="relief">GTK_RELIEF_NORMAL</property>
+ <property name="focus_on_click">True</property>
<property name="active">False</property>
<property name="inconsistent">False</property>
<property name="draw_indicator">True</property>
<property name="y_options"></property>
</packing>
</child>
+
+ <child>
+ <widget class="GtkVBox" id="vbox4">
+ <property name="visible">True</property>
+ <property name="homogeneous">False</property>
+ <property name="spacing">6</property>
+
+ <child>
+ <widget class="GtkHBox" id="hbox46">
+ <property name="visible">True</property>
+ <property name="homogeneous">False</property>
+ <property name="spacing">6</property>
+
+ <child>
+ <widget class="GtkRadioButton" id="bc_color_radio">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="label" translatable="yes"></property>
+ <property name="use_underline">True</property>
+ <property name="relief">GTK_RELIEF_NORMAL</property>
+ <property name="focus_on_click">True</property>
+ <property name="active">False</property>
+ <property name="inconsistent">False</property>
+ <property name="draw_indicator">True</property>
+ </widget>
+ <packing>
+ <property name="padding">0</property>
+ <property name="expand">False</property>
+ <property name="fill">False</property>
+ </packing>
+ </child>
+
+ <child>
+ <widget class="GtkHBox" id="hbox47">
+ <property name="visible">True</property>
+ <property name="homogeneous">False</property>
+ <property name="spacing">12</property>
+
+ <child>
+ <widget class="Custom" id="bc_color_combo">
+ <property name="visible">True</property>
+ <property name="creation_function">gl_object_editor_construct_color_combo</property>
+ <property name="int1">2</property>
+ <property name="int2">0</property>
+ <property name="last_modification_time">Sun, 16 Nov 2003 06:52:23 GMT</property>
+ </widget>
+ <packing>
+ <property name="padding">0</property>
+ <property name="expand">False</property>
+ <property name="fill">False</property>
+ </packing>
+ </child>
+ </widget>
+ <packing>
+ <property name="padding">0</property>
+ <property name="expand">True</property>
+ <property name="fill">True</property>
+ </packing>
+ </child>
+ </widget>
+ <packing>
+ <property name="padding">0</property>
+ <property name="expand">True</property>
+ <property name="fill">True</property>
+ </packing>
+ </child>
+
+ <child>
+ <widget class="GtkHBox" id="hbox48">
+ <property name="visible">True</property>
+ <property name="homogeneous">False</property>
+ <property name="spacing">6</property>
+
+ <child>
+ <widget class="GtkRadioButton" id="bc_key_radio">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="label" translatable="yes">Key:</property>
+ <property name="use_underline">True</property>
+ <property name="relief">GTK_RELIEF_NORMAL</property>
+ <property name="focus_on_click">True</property>
+ <property name="active">False</property>
+ <property name="inconsistent">False</property>
+ <property name="draw_indicator">True</property>
+ <property name="group">bc_color_radio</property>
+ </widget>
+ <packing>
+ <property name="padding">0</property>
+ <property name="expand">False</property>
+ <property name="fill">False</property>
+ </packing>
+ </child>
+
+ <child>
+ <widget class="GtkHBox" id="hbox49">
+ <property name="visible">True</property>
+ <property name="homogeneous">False</property>
+ <property name="spacing">12</property>
+
+ <child>
+ <widget class="GtkCombo" id="bc_key_combo">
+ <property name="width_request">80</property>
+ <property name="visible">True</property>
+ <property name="value_in_list">False</property>
+ <property name="allow_empty">True</property>
+ <property name="case_sensitive">False</property>
+ <property name="enable_arrow_keys">True</property>
+ <property name="enable_arrows_always">False</property>
+
+ <child internal-child="entry">
+ <widget class="GtkEntry" id="bc_key_entry">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="editable">False</property>
+ <property name="visibility">True</property>
+ <property name="max_length">0</property>
+ <property name="text" translatable="yes"></property>
+ <property name="has_frame">True</property>
+ <property name="invisible_char" translatable="yes">*</property>
+ <property name="activates_default">False</property>
+ </widget>
+ </child>
+
+ <child internal-child="list">
+ <widget class="GtkList" id="list5">
+ <property name="visible">True</property>
+ <property name="selection_mode">GTK_SELECTION_BROWSE</property>
+ </widget>
+ </child>
+ </widget>
+ <packing>
+ <property name="padding">0</property>
+ <property name="expand">False</property>
+ <property name="fill">False</property>
+ </packing>
+ </child>
+ </widget>
+ <packing>
+ <property name="padding">0</property>
+ <property name="expand">True</property>
+ <property name="fill">True</property>
+ </packing>
+ </child>
+ </widget>
+ <packing>
+ <property name="padding">0</property>
+ <property name="expand">True</property>
+ <property name="fill">True</property>
+ </packing>
+ </child>
+ </widget>
+ <packing>
+ <property name="left_attach">1</property>
+ <property name="right_attach">2</property>
+ <property name="top_attach">3</property>
+ <property name="bottom_attach">4</property>
+ <property name="x_options">fill</property>
+ <property name="y_options">fill</property>
+ </packing>
+ </child>
+
+ <child>
+ <widget class="GtkLabel" id="bc_color_label">
+ <property name="visible">True</property>
+ <property name="label" translatable="yes">Color:</property>
+ <property name="use_underline">False</property>
+ <property name="use_markup">False</property>
+ <property name="justify">GTK_JUSTIFY_LEFT</property>
+ <property name="wrap">False</property>
+ <property name="selectable">False</property>
+ <property name="xalign">0</property>
+ <property name="yalign">0.14</property>
+ <property name="xpad">0</property>
+ <property name="ypad">0</property>
+ </widget>
+ <packing>
+ <property name="left_attach">0</property>
+ <property name="right_attach">1</property>
+ <property name="top_attach">3</property>
+ <property name="bottom_attach">4</property>
+ <property name="x_options">fill</property>
+ <property name="y_options">fill</property>
+ </packing>
+ </child>
</widget>
<packing>
<property name="padding">0</property>
<property name="label" translatable="yes">Reset image size</property>
<property name="use_underline">True</property>
<property name="relief">GTK_RELIEF_NORMAL</property>
+ <property name="focus_on_click">True</property>
</widget>
<packing>
<property name="padding">0</property>
\fB\-c\fR \fIn\fR, \fB\-\-copies\fR=\fIn\fR
Set number of copies to \fIn\fR. (default=1)
.TP
+\fB\-f\fR \fIn\fR, \fB\-\-first\fR=\fIn\fR
+Set label on first sheet to start printing from to \fIn\fR. (default=1)
+.TP
\fB\-l\fR, \fB\-\-outline\fR
Print outlines around labels. This is useful for testing printer alignment
or printing proof sheets.
application/x-glabels:
open=glabels %f
_description=gLabels Project File
- icon_filename=glabels.png
+ icon_filename=glabels-application-x-glabels.png
default_action_type=application
category=Documents
short_list_application_ids_for_novice_user_level=glabels
glabels_pixmapsdir = $(datadir)/pixmaps/glabels
glabels_pixmaps_DATA = \
- glabels-icon.png \
- glabels-logo.png \
+ glabels-splash.png \
glabels-about-logo.png \
ex-rect-size.png \
ex-round-size.png \
ex-1layout.png \
ex-2layouts.png
+glabels_app_icondir = $(datadir)/pixmaps
+
+glabels_app_icon_DATA = \
+ glabels.png
+
glabels_mime_icondir = $(datadir)/pixmaps
-glabels_mime_icon_DATA = glabels.png
+glabels_mime_icon_DATA = \
+ glabels-application-x-glabels.png
-EXTRA_DIST = $(glabels_pixmaps_DATA) \
+EXTRA_DIST = $(glabels_pixmaps_DATA) \
+ $(glabels_app_icon_DATA) \
$(glabels_mime_icon_DATA)
</Label-rectangle>
</Template>
+ <!-- ============================================================ -->
+ <!-- Avery 32015: Business Cards -->
+ <!-- ============================================================ -->
+ <Template name="Zweckform 32015" size="A4" _description="Business Cards">
+ <Label-rectangle id="0" width="85mm" height="54mm" round="0mm">
+ <Markup-margin size="5mm"/>
+ <Layout nx="2" ny="4" x0="17mm" y0="31.5mm" dx="91mm" dy="60mm"/>
+ </Label-rectangle>
+ <Alias name="Zwekform 32015"/>
+ </Template>
+
</Glabels-templates>
</Label-rectangle>
</Template>
+ <!-- =================================================================== -->
+ <!-- Herma 5079: CD/DVD Labels, 2 per sheet -->
+ <!-- =================================================================== -->
+ <Template name="Herma 5079" size="A4" description="CD/DVD Labels">
+ <Label-cd id="0" radius="164.409pt" hole="58.1102pt" waste="9pt">
+ <Markup-margin size="9pt"/>
+ <Layout nx="1" ny="2" x0="133.228pt" y0="46.7717pt" dx="346.819pt" dy="419.528pt"/>
+ </Label-cd>
+ </Template>
+
<!-- ===================================================================-->
<!-- Neato brand CD/DVD Labels (face only), 2 per sheet -->
<!-- ===================================================================-->
</Label-cd>
</Template>
+ <!-- =================================================================== -->
+ <!-- Pressit CD Labels/ -->
+ <!-- =================================================================== -->
+ <Template name="Pressit 50blank" size="A4" _description="CD Labels">
+ <Label-cd id="0" radius="166.5pt" hole="58.5pt" waste="9pt">
+ <Markup-margin size="9pt"/>
+ <Layout nx="1" ny="1" x0="30.096pt" y0="70.416pt" dx="351pt" dy="351pt"/>
+ <Layout nx="1" ny="1" x0="233.208pt" y0="440.712pt" dx="351pt" dy="351pt"/>
+ </Label-cd>
+ </Template>
+
<!-- ******************************************************************** -->
</Label-rectangle>
</Template>
+ <!-- =================================================================== -->
+ <!-- Kingdom L Cassette Labels, 12 per sheet. -->
+ <!-- =================================================================== -->
+ <Template name="Kingdom L" size="US-Letter" _description="Cassette Labels">
+ <Label-rectangle id="0" width="252pt" height="117pt" round="9pt" x_waste="2.376pt" y_waste="2.376pt">
+ <Markup-margin size="9pt"/>
+ <Layout nx="2" ny="6" x0="33.12pt" y0="27pt" dx="261pt" dy="126.144pt"/>
+ </Label-rectangle>
+ </Template>
+
</Glabels-templates>
type="toggle" state="0"
/>
- <cmd name="DrawingToolbarSystem"
- id="DrawingToolbarSystem"
- _label="_Desktop Default"
- _tip="Set drawing toolbar button style according to desktop default"
- type="radio" group="drawing_buttons" state="1"
- />
-
- <cmd name="DrawingToolbarIcon"
- id="DrawingToolbarIcon"
- _label="_Icon"
- _tip="Only show icons in the drawing toolbar"
- type="radio" group="drawing_buttons"
- />
-
- <cmd name="DrawingToolbarIconText"
- id="DrawingToolbarIconText"
- _label="Icon and _Text"
- _tip="Show both icons and texts in the drawing toolbar"
- type="radio" group="drawing_buttons"
- />
-
<cmd name="DrawingToolbarTooltips"
id="DrawingToolbarTooltips"
_label="Show _Tooltips"
behavior="exclusive"
in_new_band="1"
band_num="2"
+ look="icon"
>
<toolitem name="ToolsArrow"
behavior="exclusive,never vertical"
in_new_band="1"
placement="bottom"
+ look="icon"
>
<control name="PropFontName"
%makeinstall
%find_lang %{name}
-desktop-file-install --vendor gnome \
+desktop-file-install --vendor gnome --delete-original \
--add-category X-Red-Hat-Base \
--dir %{buildroot}%{_datadir}/applications \
%{buildroot}%{_datadir}/applications/%{name}.desktop
+++ /dev/null
-#! /bin/sh
-# mkinstalldirs --- make directory hierarchy
-# Author: Noah Friedman <friedman@prep.ai.mit.edu>
-# Created: 1993-05-16
-# Public domain
-
-# $Id$
-
-errstatus=0
-
-for file
-do
- set fnord `echo ":$file" | sed -ne 's/^:\//#/;s/^://;s/\// /g;s/^#/\//;p'`
- shift
-
- pathcomp=
- for d
- do
- pathcomp="$pathcomp$d"
- case "$pathcomp" in
- -* ) pathcomp=./$pathcomp ;;
- esac
-
- if test ! -d "$pathcomp"; then
- echo "mkdir $pathcomp"
-
- mkdir "$pathcomp" || lasterr=$?
-
- if test ! -d "$pathcomp"; then
- errstatus=$lasterr
- fi
- fi
-
- pathcomp="$pathcomp/"
- done
-done
-
-exit $errstatus
-
-# mkinstalldirs ends here
# French translation of glabels.
# Copyright (C) 2001 Jim Evins <evins@snaught.com>
-# Olivier Berger <oberger@gnu.org>, 2001.
+# Olivier Berger <oberger@gnu.org>
+# Florent Morel <florent@taket.org>, 2001, 2004
#
msgid ""
msgstr ""
-"Project-Id-Version: glabels 0.4.4\n"
-"POT-Creation-Date: 2004-08-08 00:43-0400\n"
+"Project-Id-Version: glabels 2.0.1\n"
+"POT-Creation-Date: 2004-08-14 21:09-0400\n"
"PO-Revision-Date: 2001-10-15 15:31+0200\n"
-"Last-Translator: Olivier Berger <oberger@gnu.org>\n"
+"Last-Translator: Florent Morel <florent@taket.org>\n"
"Language-Team: French <gnomefr@traduc.org>\n"
"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=iso-8859-1\n"
+"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
#: src/glabels.c:55
#: src/glabels-batch.c:48
msgid "print this message"
-msgstr "imprimer ce message"
+msgstr "afficher ce message"
#: src/glabels-batch.c:50
msgid "print the version of glabels-batch being used"
-msgstr "imprimer la version de glabels-batch utilisée"
+msgstr "afficher la version de glabels-batch utilisée"
#: src/glabels-batch.c:52
msgid "set output filename (default=\"output.ps\")"
-msgstr "définit le fichier de sortie (défaut=\"output.ps\")"
+msgstr "définit le fichier de sortie (défaut=\"output.ps\")"
#: src/glabels-batch.c:52
msgid "filename"
#: src/glabels-batch.c:54
msgid "number of sheets (default=1)"
-msgstr "nombre de pages (défaut=1)"
+msgstr "nombre de pages (défaut=1)"
# src/print_copies.c:193
# src/print_copies.c:193
#: src/glabels-batch.c:56
msgid "number of copies (default=1)"
-msgstr "nombre de copies (défaut=1)"
+msgstr "nombre de copies (défaut=1)"
# src/print.c:153
# src/print.c:153
# src/print_dialog.c:160
#: src/glabels-batch.c:60 src/print-dialog.c:344
msgid "print in reverse (i.e. a mirror image)"
-msgstr "imprimer à l'envers (i.e. une image miroir)"
+msgstr "imprimer à l'envers (i.e. une image miroir)"
#: src/glabels-batch.c:96
msgid "[OPTION...] GLABELS_FILE..."
#: src/window.c:244
msgid "(none) - gLabels"
-msgstr ""
+msgstr "(vide) - gLabels"
#: src/window.c:414
msgid "(modified)"
-msgstr ""
+msgstr "(modifié)"
# src/display.c:1157 src/display.c:1205
# src/display.c:1160 src/display.c:1208
# src/menu.c:94
# src/menu.c:94
#: src/stock.c:65 data/ui/glabels-ui.xml.h:165
-#, fuzzy
msgid "_Select Mode"
-msgstr "Sélectionner"
+msgstr "_Sélectionner"
# src/item_text.c:442 src/item_text.c:627
# src/item_text.c:442 src/item_text.c:627
# src/item_text.c:460 src/item_text.c:464 src/item_text.c:637 src/menu.c:100
# src/item_text.c:460 src/item_text.c:464 src/item_text.c:637 src/menu.c:100
#: src/stock.c:66 data/ui/glabels-ui.xml.h:166
-#, fuzzy
msgid "_Text"
-msgstr "Texte"
+msgstr "_Texte"
# src/item_line.c:271
# src/item_line.c:271
# src/item_line.c:256 src/menu.c:106
# src/item_line.c:256 src/menu.c:106
#: src/stock.c:67 data/ui/glabels-ui.xml.h:151
-#, fuzzy
msgid "_Line"
-msgstr "Ligne"
+msgstr "_Ligne"
# src/menu.c:103
# src/menu.c:103
#: src/stock.c:68 data/ui/glabels-ui.xml.h:133
-#, fuzzy
msgid "_Box"
-msgstr "Boîte"
+msgstr "_Boîte"
# src/menu.c:109
# src/menu.c:109
#: src/stock.c:69 data/ui/glabels-ui.xml.h:144
-#, fuzzy
msgid "_Ellipse"
-msgstr "Ellipse"
+msgstr "_Ellipse"
# src/item_image.c:283
# src/item_image.c:283
# src/item_image.c:268 src/menu.c:113
# src/item_image.c:268 src/menu.c:113
#: src/stock.c:70 data/ui/glabels-ui.xml.h:149
-#, fuzzy
msgid "_Image"
-msgstr "Image"
+msgstr "_Image"
# src/item_barcode.c:316
# src/item_barcode.c:317
# src/menu.c:116
# src/menu.c:116
#: src/stock.c:71 data/ui/glabels-ui.xml.h:11
-#, fuzzy
msgid "Bar_code"
-msgstr "Code-barre"
+msgstr "_Code-barre"
# src/item_text.c:467
# src/item_text.c:467
# src/menu.c:132 src/menu.c:223
# src/menu.c:132 src/menu.c:223
#: src/stock.c:72
-#, fuzzy
msgid "_Merge Properties"
-msgstr "Propriétés de fusion"
+msgstr "_Propriétés de fusion"
# src/item_text.c:467
# src/item_text.c:467
# src/item_text.c:482
# src/item_text.c:482
#: src/stock.c:73
-#, fuzzy
msgid "Object _Properties"
-msgstr "Propriétés du texte"
+msgstr "_Propriétés de l'objet"
# src/display.c:1167 src/display.c:1215
# src/display.c:1170 src/display.c:1218
# src/display.c:1181 src/display.c:1229
# src/display.c:1196 src/display.c:1244
#: src/stock.c:74 data/ui/glabels-ui.xml.h:13
-#, fuzzy
msgid "Bring to _Front"
-msgstr "Avancer au premier plan"
+msgstr "_Avancer au premier plan"
# src/display.c:1173 src/display.c:1221
# src/display.c:1176 src/display.c:1224
# src/display.c:1187 src/display.c:1235
# src/display.c:1202 src/display.c:1250
#: src/stock.c:75 data/ui/glabels-ui.xml.h:110
-#, fuzzy
msgid "Send to _Back"
-msgstr "Reculer à l'arrière-plan"
+msgstr "_Reculer à l'arrière-plan"
# src/rotate_select.c:187
# src/rotate_select.c:187
# src/rotate_select.c:167
# src/rotate_select.c:169
#: src/stock.c:76 data/ui/glabels-ui.xml.h:97
-#, fuzzy
msgid "Rotate _Left"
-msgstr "Rotation"
+msgstr "Rotation _Gauche"
# src/rotate_select.c:187
# src/rotate_select.c:187
# src/rotate_select.c:167
# src/rotate_select.c:169
#: src/stock.c:77 data/ui/glabels-ui.xml.h:98
-#, fuzzy
msgid "Rotate _Right"
-msgstr "Rotation"
+msgstr "Rotation _Droite"
#: src/stock.c:78 data/ui/glabels-ui.xml.h:52
msgid "Flip _Horizontally"
-msgstr ""
+msgstr "Retourner _Horizontalement"
#: src/stock.c:79 data/ui/glabels-ui.xml.h:53
msgid "Flip _Vertically"
-msgstr ""
+msgstr "Retourner _Verticalement"
#: src/stock.c:80 data/ui/glabels-ui.xml.h:150
msgid "_Lefts"
-msgstr ""
+msgstr "_Gauches"
#: src/stock.c:81 data/ui/glabels-ui.xml.h:162
msgid "_Rights"
-msgstr ""
+msgstr "_Droites"
#: src/stock.c:82 data/ui/glabels-ui.xml.h:134
msgid "_Centers"
-msgstr ""
+msgstr "_Centres"
# src/menu.c:157
# src/menu.c:157
#: src/stock.c:83 data/ui/glabels-ui.xml.h:167
-#, fuzzy
msgid "_Tops"
-msgstr "_Outils"
+msgstr "En _haut"
#: src/stock.c:84
msgid "Bottoms"
-msgstr ""
+msgstr "En _bas"
#: src/stock.c:85
msgid "Centers"
-msgstr ""
+msgstr "_Centré"
#: src/stock.c:86 src/stock.c:87 data/ui/glabels-ui.xml.h:62
msgid "Label Ce_nter"
-msgstr ""
+msgstr "Centre de l'étiquette"
#: src/stock.c:88 data/ui/glabels-ui.xml.h:51
-#, fuzzy
msgid "Fill color"
msgstr "Couleur de remplissage"
#: src/stock.c:89 data/ui/glabels-ui.xml.h:64
-#, fuzzy
msgid "Line color"
msgstr "Couleur de ligne"
# src/display.c:1171 src/display.c:1219
# src/display.c:1186 src/display.c:1234
#: src/ui-property-bar.c:345 src/object-editor.c:499
-#, fuzzy
msgid "Default"
-msgstr "Supprimer"
+msgstr "Défaut"
#: src/ui-property-bar.c:360 src/object-editor.c:512
msgid "No fill"
-msgstr ""
+msgstr "Pas de remplissage"
# src/merge.c:80
# src/merge.c:78
#: src/ui-property-bar.c:375 src/object-editor.c:505
-#, fuzzy
msgid "No line"
-msgstr "Aucun"
+msgstr "Pas de ligne"
# src/item_text.c:467
# src/item_text.c:467
# src/item_text.c:482
# src/item_text.c:482
#: src/ui-sidebar.c:180
-#, fuzzy
msgid "Object properties"
-msgstr "Propriétés du texte"
+msgstr "Propriétés de l'objet"
# src/menu.c:185
# src/menu.c:185
"FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for "
"more details.\n"
msgstr ""
-"Un programme de création d'étiquettes et de cartes de visite pour GNOME.\n"
+"Un programme de création d'étiquettes et de cartes de visite pour GNOME.\n"
" \n"
"Ce programme est un logiciel libre ; vous pouvez le redistribuer et/ou le "
-"modifier conformément aux dispositions de la Licence Publique Générale GNU, "
-"telle que publiée par la Free Software Foundation ; version 2 de la licence, "
-"ou encore (à votre choix) toute version ultérieure.\n"
+"modifier conformément aux dispositions de la Licence Publique Générale GNU, "
+"telle que publiée par la Free Software Foundation ; version 2 de la licence, "
+"ou encore (à votre choix) toute version ultérieure.\n"
" \n"
-"Ce programme est distribué dans l'espoir qu'il sera utile, mais SANS AUCUNE "
-"GARANTIE ; sans même la garantie implicite de COMMERCIALISATION ou "
-"D'ADAPTATION A UN OBJET PARTICULIER. Pour plus de détail, voir la Licence "
-"Publique Générale GNU.\n"
+"Ce programme est distribué dans l'espoir qu'il sera utile, mais SANS AUCUNE "
+"GARANTIE ; sans même la garantie implicite de COMMERCIALISATION ou "
+"D'ADAPTATION A UN OBJET PARTICULIER. Pour plus de détail, voir la Licence "
+"Publique Générale GNU.\n"
#: src/commands.c:399
msgid "See the file AUTHORS for additional credits,"
#: src/commands.c:409
msgid " "
-msgstr ""
+msgstr " "
# src/print_copies.c:210
# src/print_copies.c:210
# src/print_copies.c:188
# src/print_copies.c:187
#: src/commands.c:424
-#, fuzzy
msgid "glabels"
-msgstr "Etiquettes"
+msgstr "glabels"
# src/file.c:59
# src/file.c:59
# src/file.c:72
#: src/file.c:100
msgid "New Label or Card"
-msgstr "Nouvelle étiquette ou carte"
+msgstr "Nouvelle étiquette ou carte"
# src/file.c:87
# src/file.c:87
# src/file.c:98
#: src/file.c:132 src/file.c:304
msgid "Media Type"
-msgstr "Type de média"
+msgstr "Type de média"
# src/file.c:98
# src/file.c:98
# src/file.c:109
#: src/file.c:138 src/file.c:310
msgid "Label orientation"
-msgstr "Orientation de l'étiquette"
+msgstr "Orientation de l'étiquette"
# src/item_text.c:467
# src/item_text.c:467
# src/item_text.c:482
# src/item_text.c:482
#: src/file.c:269
-#, fuzzy
msgid "Label properties"
-msgstr "Propriétés du texte"
+msgstr "Propriétés de l'étiquette"
#: src/file.c:452 src/file.c:870
msgid "All files"
-msgstr ""
+msgstr "Tous les fichiers"
# src/preferences.c:92
# src/prefs.c:101
# src/prefs.c:92
# src/prefs.c:86
#: src/file.c:457 src/file.c:875
-#, fuzzy
msgid "gLabels documents"
-msgstr "Glabels : Préférences"
+msgstr "Documents gLabels"
# src/menu.c:86
# src/menu.c:86
# src/menu.c:86
# src/menu.c:86
#: src/file.c:505 src/file.c:617 src/file.c:934 src/file.c:1130
-#, fuzzy
msgid "Empty file name selection"
-msgstr "Supprime toutes les sélections"
+msgstr "Nom de fichier sélectionné vide"
#: src/file.c:506 src/file.c:520 src/file.c:618 src/file.c:632
msgid "Please select a file or supply a valid file name"
-msgstr ""
+msgstr "Selectionnez un fichier ou donner un nom de fichier valide"
#: src/file.c:519 src/file.c:631
msgid "File does not exist"
-msgstr ""
+msgstr "Ce fichier n'existe pas"
# src/file.c:178
# src/file.c:178
# src/file.c:213
#: src/file.c:565
msgid "Open label"
-msgstr "Ouvrir une étiquette"
+msgstr "Ouvrir une étiquette"
# src/file.c:214
# src/file.c:214
# src/file.c:249
# src/file.c:249
#: src/file.c:707
-#, fuzzy, c-format
+# c-format
msgid "Could not open file \"%s\""
msgstr "Impossible d'ouvrir le fichier"
#: src/file.c:715
msgid "Not a supported file format"
-msgstr ""
+msgstr "Format de fichier non supporté"
# src/file.c:248 src/mdi.c:635
# src/file.c:248 src/mdi.c:641
# src/file.c:288 src/mdi.c:601
# src/file.c:288 src/mdi.c:601
#: src/file.c:797 src/file.c:979 src/file.c:1174
-#, fuzzy, c-format
+#, c-format
msgid "Could not save file \"%s\""
-msgstr "Impossible d'enregistrer le fichier"
+msgstr "Impossible d'enregistrer \"%s\""
#: src/file.c:805 src/file.c:987 src/file.c:1182
msgid "Error encountered during save. The file is still not saved."
-msgstr ""
+msgstr "Erreur rencontrée durant l'enregistrement. Le fichier n'est toujours pas enregistré. "
# src/file.c:278
# src/file.c:278
# src/file.c:316
# src/file.c:316
#: src/file.c:848 src/file.c:1048
-#, fuzzy, c-format
+#, c-format
msgid "Save \"%s\" as"
-msgstr "Enregistrer l'étiquette sous"
+msgstr "Enregistrer \"%s\" sous"
# src/file.c:319 src/mdi.c:729
# src/file.c:319 src/mdi.c:735
# src/file.c:362 src/mdi.c:693
# src/file.c:362 src/mdi.c:693
#: src/file.c:935 src/file.c:1131
-#, fuzzy
msgid "Please supply a valid file name"
-msgstr "Vous devez donner un nom de fichier"
+msgstr "Donnez un nom de fichier valide"
#: src/file.c:952 src/file.c:1147
#, c-format
msgid "Overwrite file \"%s\"?"
-msgstr ""
+msgstr "Ecrasez le fichier \"%s\"?"
#: src/file.c:960 src/file.c:1155
msgid "File already exists."
-msgstr ""
+msgstr "Ce fichier existe déjà ."
#: src/file.c:1271
#, c-format
msgid "Save changes to document \"%s\" before closing?"
-msgstr ""
+msgstr "Enregistrez les changements au document \"%s\" avant de fermer?"
#: src/file.c:1279
msgid "Your changes will be lost if you don't save them."
-msgstr ""
+msgstr "Vos changements seront perdus si vous ne les enregistrez pas."
#: src/file.c:1282
msgid "Close without saving"
-msgstr ""
+msgstr "Fermer sans enregistrer"
# src/print.c:171
# src/prefs.c:463 src/prefs.c:470 src/prop_line.c:202
# src/prefs.c:92
# src/prefs.c:86
#: src/prefs-dialog.c:248 data/glade/prefs-dialog.glade.h:22
-#, fuzzy
msgid "gLabels Preferences"
-msgstr "Glabels : Préférences"
+msgstr "gLabels : Préférences"
#.
#. * Submenu: Order
#.
#: src/view.c:3570 data/ui/glabels-ui.xml.h:157
msgid "_Order"
-msgstr ""
+msgstr "_Ordre"
# src/rotate_select.c:187
# src/rotate_select.c:187
#. * Submenu: Rotate/Flip
#.
#: src/view.c:3591 data/ui/glabels-ui.xml.h:163
-#, fuzzy
msgid "_Rotate/Flip"
-msgstr "Rotation"
+msgstr "_Rotation/Renversement"
#.
#. * Submenu: Align Horizontally
#.
#: src/view.c:3624
msgid "Align _Horizontally"
-msgstr ""
+msgstr "Aligner _Horizontalement"
#.
#. * Submenu: Align Vertically
#.
#: src/view.c:3663
msgid "Align _Vertically"
-msgstr ""
+msgstr "Aligner _Verticalement"
# src/display.c:1157 src/display.c:1205
# src/display.c:1160 src/display.c:1208
# src/display.c:1171 src/display.c:1219
# src/display.c:1186 src/display.c:1234
#: src/view.c:3724 data/ui/glabels-ui.xml.h:140
-#, fuzzy
msgid "_Delete"
-msgstr "Supprimer"
+msgstr "_Supprimer"
# src/item_box.c:251
# src/item_box.c:251
# src/item_box.c:235
#. Build editor.
#: src/view-box.c:223
-#, fuzzy
msgid "Box object properties"
-msgstr "Editer les propriétés de l'objet boîte..."
+msgstr "Propriétés de l'objet boîte"
# src/item_ellipse.c:256
# src/item_ellipse.c:256
# src/item_ellipse.c:237
#. Build editor.
#: src/view-ellipse.c:223
-#, fuzzy
msgid "Ellipse object properties"
-msgstr "Editer les propriétés de l'objet ellipse..."
+msgstr "Propriétés de l'objet ellipse"
# src/item_box.c:251
# src/item_box.c:251
# src/item_box.c:235
#. Build editor.
#: src/view-line.c:223
-#, fuzzy
msgid "Line object properties"
-msgstr "Editer les propriétés de l'objet boîte..."
+msgstr "Propriétés de l'objet boîte"
# src/item_image.c:272
# src/item_image.c:272
# src/item_image.c:257
#. Build editor.
#: src/view-image.c:222
-#, fuzzy
msgid "Image object properties"
-msgstr "Editer les propriétés de l'objet image..."
+msgstr "Propriétés de l'objet image"
# src/item_box.c:251
# src/item_box.c:251
# src/item_box.c:235
#. Build editor.
#: src/view-text.c:250
-#, fuzzy
msgid "Text object properties"
-msgstr "Editer les propriétés de l'objet boîte..."
+msgstr "Propriétés de l'objet texte"
# src/item_text.c:442 src/item_text.c:627
# src/item_text.c:442 src/item_text.c:627
# src/item_barcode.c:287
#. Build editor.
#: src/view-barcode.c:209
-#, fuzzy
msgid "Barcode object properties"
-msgstr "Editer les propriétés de l'objet code-barre..."
+msgstr "Propriétés de l'objet code-barre"
# src/item_barcode.c:564 src/item_barcode.c:588 src/print.c:641
# src/item_barcode.c:570 src/item_barcode.c:594 src/print.c:641
# src/item_barcode.c:549 src/item_barcode.c:572 src/print.c:799
# src/item_barcode.c:549 src/item_barcode.c:572 src/print.c:600
#: src/view-barcode.c:579 src/print.c:1088
-#, fuzzy
msgid "Invalid barcode data"
msgstr "Code-barre invalide"
# src/menu.c:132 src/menu.c:223
# src/menu.c:132 src/menu.c:223
#: src/merge-properties-dialog.c:231
-#, fuzzy
msgid "Merge Properties"
-msgstr "Propriétés de fusion"
+msgstr "Propriétés de fusion"
# src/merge_properties.c:131
# src/merge_properties.c:131
# src/merge_ui_text.c:170
#: src/merge-properties-dialog.c:282 src/merge-properties-dialog.c:393
msgid "Select merge-database source"
-msgstr "Sélection de la base de données source de la fusion"
+msgstr "Sélection du fichier de données pour la fusion"
# src/merge_ui.c:207 src/merge_ui.c:242 src/merge_ui.c:387 src/merge_ui.c:428
# src/merge_ui.c:207 src/merge_ui.c:242 src/merge_ui.c:387 src/merge_ui.c:428
#: src/merge-properties-dialog.c:289 src/merge-properties-dialog.c:404
msgid "N/A"
-msgstr "Non défini"
+msgstr "Non défini"
#. ---- Sample Fields section ----
#: src/merge-properties-dialog.c:300
msgid "Record selection/preview:"
-msgstr ""
+msgstr "Sélection/Prévisualisation des enregistrements :"
# src/display.c:1157 src/display.c:1205
# src/display.c:1160 src/display.c:1208
# src/menu.c:94
#: src/merge-properties-dialog.c:326
msgid "Select"
-msgstr "Sélectionner"
+msgstr "Sélectionner"
#: src/merge-properties-dialog.c:334
msgid "Record/Field"
-msgstr ""
+msgstr "Enregistrements/Champs"
# src/item_barcode.c:309
# src/item_barcode.c:308
# src/item_barcode.c:297
#: src/merge-properties-dialog.c:342 data/glade/object-editor.glade.h:9
msgid "Data"
-msgstr "Données"
+msgstr "Données"
# src/print.c:149
# src/print.c:149
#: src/print-dialog.c:281
msgid "_Job"
-msgstr ""
+msgstr "_Travail"
# src/print.c:149
# src/print.c:149
# src/print.c:141
# src/print_dialog.c:99
#: src/print-dialog.c:286
-#, fuzzy
msgid "P_rinter"
-msgstr "Imprimer"
+msgstr "_Imprimante"
# src/print.c:153
# src/print.c:153
#. ------- Add merge control widget ------------
#: src/print-dialog.c:322
msgid "Document merge control"
-msgstr "Contrôle de la fusion de document"
+msgstr "Contrôle de la fusion de document"
# src/print.c:171
# src/print.c:171
#: src/print-dialog.c:351
msgid "print crop marks"
-msgstr ""
+msgstr "imprimer les guides de coupe"
# src/print.c:235
# src/print.c:235
# src/print_dialog.c:241 src/print_dialog.c:280
#: src/print-dialog.c:553 src/print-dialog.c:592
msgid "Print preview"
-msgstr "Aperçu avant impression"
+msgstr "Aperçu avant impression"
#: src/template-designer.c:409 data/glade/template-designer.glade.h:73
msgid "gLabels Template Designer"
-msgstr ""
+msgstr "Créateur de patrons gLabels"
#: src/bc.c:60
msgid "POSTNET (any)"
#: src/label.c:569
msgid "Untitled"
-msgstr ""
+msgstr "Sans titre"
# src/label.c:186 src/label.c:211
# src/label.c:186 src/label.c:211
#: src/xml-label.c:264
msgid "Importing from glabels 0.1 format"
-msgstr ""
+msgstr "Import depuis le format glabels 0.1"
#: src/xml-label.c:272
msgid "Importing from glabels 0.4 format"
-msgstr ""
+msgstr "Import depuis le format glabels 0.4"
#: src/xml-label.c:279
msgid "Importing from glabels 1.91 format"
-msgstr ""
+msgstr "Import depuis le format glabels 1.91"
# src/label.c:248
# src/label.c:249
# src/label.c:236
# src/label.c:234
#: src/xml-label.c:282
-#, fuzzy
msgid "bad document, unknown glabels Namespace"
-msgstr "document de type erroné, aucun espace de noms glabels trouvé"
+msgstr "document de type erroné, espace de noms glabels inconnu"
# src/label.c:253
# src/label.c:254
# src/label.c:241
# src/label.c:239
#: src/xml-label.c:348 src/xml-label-191.c:165
-#, fuzzy, c-format
+#, c-format
msgid "bad node in Document node = \"%s\""
msgstr "Mauvais noeud racine = \"%s\""
# src/label.c:294
# src/label.c:290
#: src/xml-label.c:796 src/xml-label-191.c:605
-#, fuzzy, c-format
+#, c-format
msgid "bad node in Data node = \"%s\""
-msgstr "mauvais noeud = \"%s\""
+msgstr "mauvais noeud de données = \"%s\""
-#: src/xml-label.c:962 libglabels/xml-template.c:528
+#: src/xml-label.c:962 libglabels/xml-template.c:535
msgid "Utf8 conversion error."
-msgstr ""
+msgstr "Erreur de conversion Utf8"
# src/label.c:487
# src/label.c:493
# src/label.c:589
# src/label.c:587
-#: src/xml-label.c:969 libglabels/xml-template.c:535
+#: src/xml-label.c:969 libglabels/xml-template.c:542
msgid "Problem saving xml file."
-msgstr "Problème de sauvegarde du fichier xml."
+msgstr "Problème de sauvegarde du fichier xml."
#. This should always be an id, but just in case a name
#. slips by!
-#: src/xml-label-191.c:680 libglabels/xml-template.c:192
+#: src/xml-label-191.c:680 libglabels/xml-template.c:199
#, c-format
msgid "Unknown page size id \"%s\", trying as name"
msgstr ""
-#: src/xml-label-191.c:690 libglabels/xml-template.c:202
+#: src/xml-label-191.c:690 libglabels/xml-template.c:209
#, c-format
msgid "Unknown page size id or name \"%s\""
msgstr ""
# src/merge.c:98
# src/merge.c:94
#: src/merge-init.c:53
-#, fuzzy
msgid "Text file with comma delimeters (CSV)"
-msgstr "Texte séparé par des virgules (CSV)"
+msgstr "Texte séparé par des virgules (CSV)"
# src/merge.c:107
# src/merge.c:102
#: src/merge-init.c:60
-#, fuzzy
msgid "Text file with colon delimeters"
-msgstr "Texte séparé par des deux-points"
+msgstr "Texte séparé par des deux-points"
# src/merge.c:89
# src/merge.c:86
#: src/merge-init.c:67
-#, fuzzy
msgid "Text file with tab delimeters"
-msgstr "Texte avec séparateurs de tabulation"
+msgstr "Texte avec séparateurs de tabulation"
# src/item_box.c:274 src/item_ellipse.c:279
# src/item_box.c:274 src/item_ellipse.c:279
# src/item_box.c:258 src/item_ellipse.c:260
# src/item_box.c:258 src/item_ellipse.c:260
#: src/wdgt-image-select.c:201 data/glade/object-editor.glade.h:11
-#, fuzzy
msgid "File:"
-msgstr "Remplissage"
+msgstr "Fichier :"
# src/prop_bc_data.c:196 src/prop_text_entry.c:180
# src/prop_bc_data.c:196 src/prop_text_entry.c:180
#: src/wdgt-image-select.c:245 data/glade/object-editor.glade.h:16
msgid "Key:"
-msgstr "Clé :"
+msgstr "Clé :"
# src/print_copies.c:193
# src/print_copies.c:193
# src/print_copies.c:198
#: src/wdgt-print-copies.c:207
msgid "to:"
-msgstr "Ã :"
+msgstr "Ã :"
# src/print_copies_merge.c:197
# src/print_merge.c:170
#: src/wdgt-print-merge.c:178
msgid "Start on label"
-msgstr "Commencer par l'étiquette"
+msgstr "Commencer par l'étiquette"
# src/print_copies_merge.c:206
# src/print_merge.c:179
#: src/wdgt-print-merge.c:186
msgid "on 1st sheet"
-msgstr "en 1ère page"
+msgstr "en 1ère page"
# src/print.c:153
# src/print.c:153
# src/media_select.c:232
#: src/wdgt-media-select.c:290
msgid "Label size:"
-msgstr "Taille d'étiquette :"
+msgstr "Taille d'étiquette :"
# src/media_select.c:231
# src/media_select.c:257
# src/media_select.c:481
# src/media_select.c:353
#: src/wdgt-media-select.c:582
-#, fuzzy, c-format
+#, c-format
msgid "%d per sheet"
-msgstr "%d x %d (%d par feuille)"
+msgstr "%d par feuille"
# src/media_select.c:522
# src/media_select.c:488
#: src/wdgt-media-select.c:630 src/wdgt-media-select.c:644
#, c-format
msgid "%s %s diameter"
-msgstr ""
+msgstr "%s %s diamètre"
#: src/wdgt-media-select.c:634 src/wdgt-media-select.c:648
#, c-format
msgid "%.5g %s diameter"
-msgstr ""
+msgstr "%.5g %s diamètre"
# src/rotate_select.c:187
# src/rotate_select.c:187
# src/merge_ui_text.c:334
#. This is the default custom color
#: src/mygal/color-palette.c:396
-#, fuzzy
msgid "custom"
-msgstr "Clé de champ spécifique"
+msgstr "Personnalisé"
# src/prop_bc.c:204 src/prop_fill.c:186 src/prop_line.c:203
# src/prop_text.c:263
# src/prop_text.c:234
#. "Custom" color - we'll pop up a GnomeColorPicker
#: src/mygal/color-palette.c:438
-#, fuzzy
msgid "Custom Color:"
-msgstr "Couleur :"
+msgstr "Couleur personnalisée :"
#: src/mygal/color-palette.c:446
msgid "Choose Custom Color"
-msgstr ""
+msgstr "Choisir une couleur personnalisée"
#: src/mygal/color-palette.c:579
msgid "black"
# src/item_image.c:268 src/menu.c:113
# src/item_image.c:268 src/menu.c:113
#: src/mygal/color-palette.c:609 src/mygal/color-palette.c:641
-#, fuzzy
msgid "magenta"
-msgstr "Image"
+msgstr ""
#: src/mygal/color-palette.c:610
msgid "bright orange"
# src/prop_vector.c:224
# src/prop_vector.c:224
#: src/mygal/color-palette.c:612
-#, fuzzy
msgid "green"
-msgstr "degrés"
+msgstr ""
#: src/mygal/color-palette.c:613 src/mygal/color-palette.c:643
msgid "cyan"
# src/template.c:223
#: libglabels/template.c:897
msgid "No template files found!"
-msgstr "Aucun fichier de patron trouvé !"
+msgstr "Aucun fichier de patron trouvé !"
#. Create and append an "Other" entry.
#: libglabels/paper.c:67
msgid "Other"
-msgstr ""
+msgstr "Autre"
# src/template.c:179
# src/template.c:178
# src/template.c:223
#: libglabels/paper.c:361
-#, fuzzy
msgid "No paper files found!"
-msgstr "Aucun fichier de patron trouvé !"
+msgstr "Aucun fichier de papier trouvé !"
#: data/ui/glabels-ui.xml.h:1
msgid "About glabels"
-msgstr ""
+msgstr "A propos de glabels"
#: data/ui/glabels-ui.xml.h:2
msgid "About..."
-msgstr ""
+msgstr "A propos..."
#: data/ui/glabels-ui.xml.h:3
msgid "Align _Horizontal"
-msgstr ""
+msgstr "Aligner _Horizontalement"
#: data/ui/glabels-ui.xml.h:4
msgid "Align _Vertical"
-msgstr ""
+msgstr "Aligner _Verticalement"
#: data/ui/glabels-ui.xml.h:5
msgid "Align objects to bottoms"
-msgstr ""
+msgstr "Aligner le bas des objets"
#: data/ui/glabels-ui.xml.h:6
msgid "Align objects to horizontal centers"
-msgstr ""
+msgstr "Aligner horizontalement le centre des objets"
#: data/ui/glabels-ui.xml.h:7
msgid "Align objects to left edges"
-msgstr ""
+msgstr "Aligner la gauche des objets"
#: data/ui/glabels-ui.xml.h:8
msgid "Align objects to right edges"
-msgstr ""
+msgstr "Aligner la droite des objets"
#: data/ui/glabels-ui.xml.h:9
msgid "Align objects to tops"
-msgstr ""
+msgstr "Aligner le haut des objets"
#: data/ui/glabels-ui.xml.h:10
msgid "Align objects to vertical centers"
-msgstr ""
+msgstr "Aligner verticalement le centre des objets"
#: data/ui/glabels-ui.xml.h:12
msgid "Bold"
-msgstr ""
+msgstr "Gras"
# src/item_barcode.c:337
# src/item_barcode.c:343 src/prefs.c:243
# src/item_barcode.c:320 src/prefs.c:221
# src/item_barcode.c:320 src/prefs.c:215
#: data/ui/glabels-ui.xml.h:14
-#, fuzzy
msgid "Center align"
-msgstr "Général"
+msgstr "Centrer"
#: data/ui/glabels-ui.xml.h:15
msgid "Center objects to horizontal label center"
-msgstr ""
+msgstr "Déplacer les objets horizontalement au centre de l'étiquette"
#: data/ui/glabels-ui.xml.h:16
msgid "Center objects to vertical label center"
-msgstr ""
+msgstr "Déplacer les objets verticalement au centre de l'étiquette"
#: data/ui/glabels-ui.xml.h:17
msgid "Change the visibility of markup lines in the current window"
-msgstr ""
+msgstr "Afficher ou non les lignes de marges dans la fenêtre courante"
#: data/ui/glabels-ui.xml.h:18
msgid "Change the visibility of the drawing toolbar in the current window"
-msgstr ""
+msgstr "Afficher ou non la barre d'outils de dessin dans la fenêtre courante"
#: data/ui/glabels-ui.xml.h:19
msgid "Change the visibility of the grid in the current window"
-msgstr ""
+msgstr "Afficher ou non la grille dans la fenêtre courante"
#: data/ui/glabels-ui.xml.h:20
msgid "Change the visibility of the main toolbar in the current window"
-msgstr ""
+msgstr "Afficher ou non la barre d'outils principale dans la fenêtre courante"
#: data/ui/glabels-ui.xml.h:21
msgid "Change the visibility of the property toolbar in the current window"
-msgstr ""
+msgstr "Afficher ou non la barre d'outils de propriétés dans la fenêtre courante"
#: data/ui/glabels-ui.xml.h:22
msgid "Close"
-msgstr ""
+msgstr "Fermer"
# src/menu.c:142
# src/menu.c:142
# src/menu.c:172
# src/menu.c:172
#: data/ui/glabels-ui.xml.h:23
-#, fuzzy
msgid "Close the current file"
-msgstr "Sauvegarder le fichier en cours"
+msgstr "Clore le fichier en cours"
#: data/ui/glabels-ui.xml.h:24
msgid "Configure the application"
-msgstr ""
+msgstr "Configurer le logiciel"
#: data/ui/glabels-ui.xml.h:25
msgid "Contents"
#: data/ui/glabels-ui.xml.h:26
msgid "Copy"
-msgstr ""
+msgstr "Copier"
# src/menu.c:86
# src/menu.c:86
# src/menu.c:86
# src/menu.c:86
#: data/ui/glabels-ui.xml.h:27
-#, fuzzy
msgid "Copy the selection"
-msgstr "Supprime toutes les sélections"
+msgstr "Copier la sélection"
# src/tools.c:70
# src/tools.c:70
# src/menu.c:106 src/menu.c:197
# src/menu.c:106 src/menu.c:197
#: data/ui/glabels-ui.xml.h:28
-#, fuzzy
msgid "Create a custom template"
-msgstr "Créer un objet ligne"
+msgstr "Créer un patron personnalisé"
# src/tools.c:70
# src/tools.c:70
# src/menu.c:106 src/menu.c:197
# src/menu.c:106 src/menu.c:197
#: data/ui/glabels-ui.xml.h:29
-#, fuzzy
msgid "Create a new document"
-msgstr "Créer un objet ligne"
+msgstr "Créer un nouveau document"
# src/tools.c:79
# src/tools.c:79
# src/menu.c:116 src/menu.c:206
#: data/ui/glabels-ui.xml.h:30
msgid "Create barcode object"
-msgstr "Créer un objet code-barre"
+msgstr "Créer un objet code-barre"
# src/tools.c:67
# src/tools.c:67
# src/menu.c:103 src/menu.c:194
#: data/ui/glabels-ui.xml.h:31
msgid "Create box/rectangle object"
-msgstr "Créer un objet boîte/rectangle"
+msgstr "Créer un objet boîte/rectangle"
# src/tools.c:73
# src/tools.c:73
# src/menu.c:110 src/menu.c:200
#: data/ui/glabels-ui.xml.h:32
msgid "Create ellipse/circle object"
-msgstr "Créer un objet ellipse/cercle"
+msgstr "Créer un objet ellipse/cercle"
# src/tools.c:76
# src/tools.c:76
# src/menu.c:113 src/menu.c:203
#: data/ui/glabels-ui.xml.h:33
msgid "Create image object"
-msgstr "Créer un objet image"
+msgstr "Créer un objet image"
# src/tools.c:70
# src/tools.c:70
# src/menu.c:106 src/menu.c:197
#: data/ui/glabels-ui.xml.h:34
msgid "Create line object"
-msgstr "Créer un objet ligne"
+msgstr "Créer un objet ligne"
# src/tools.c:64
# src/tools.c:64
# src/menu.c:100 src/menu.c:191
#: data/ui/glabels-ui.xml.h:35
msgid "Create text object"
-msgstr "Créer un objet texte"
+msgstr "Créer un objet texte"
#: data/ui/glabels-ui.xml.h:36
msgid "Cu_t"
-msgstr ""
+msgstr "Cou_per"
# src/merge_ui_text.c:334
# src/merge_ui_text.c:334
#: data/ui/glabels-ui.xml.h:37
-#, fuzzy
msgid "Customize"
-msgstr "Clé de champ spécifique"
+msgstr "Personnaliser"
#: data/ui/glabels-ui.xml.h:38
msgid "Customize Drawing Toolbar"
-msgstr ""
+msgstr "Personnaliser la Barre d'Outils Dessin"
#: data/ui/glabels-ui.xml.h:39
msgid "Customize Main Toolbar"
-msgstr ""
+msgstr "Personnaliser le Barre d'Outils Principale"
#: data/ui/glabels-ui.xml.h:40
msgid "Customize Property Toolbar"
-msgstr ""
+msgstr "Personnaliser la Barre d'Outils de Propriétés"
#: data/ui/glabels-ui.xml.h:41
msgid "Customize toolbars"
-msgstr ""
+msgstr "Personnaliser les Barres d'Outils"
#: data/ui/glabels-ui.xml.h:42
msgid "Cut"
-msgstr ""
+msgstr "Couper"
#: data/ui/glabels-ui.xml.h:43
msgid "Cut the selection"
-msgstr ""
+msgstr "Couper la selection"
#: data/ui/glabels-ui.xml.h:44
msgid "Decrease magnification"
-msgstr ""
+msgstr "Réduire le zoom"
# src/display.c:1157 src/display.c:1205
# src/display.c:1160 src/display.c:1208
# src/menu.c:100 src/menu.c:191
# src/menu.c:100 src/menu.c:191
#: data/ui/glabels-ui.xml.h:46
-#, fuzzy
msgid "Delete the selected objects"
-msgstr "Créer un objet texte"
+msgstr "Supprimer les objets sélectionnés"
#: data/ui/glabels-ui.xml.h:47
msgid "Drawing toolbar"
-msgstr ""
+msgstr "Barre d'Outils de dessin"
#: data/ui/glabels-ui.xml.h:48
msgid "Dump XML"
# src/menu.c:133
#: data/ui/glabels-ui.xml.h:50
msgid "Edit merge properties"
-msgstr "Editer les propriétés de fusion"
+msgstr "Editer les propriétés de fusion"
#: data/ui/glabels-ui.xml.h:54
msgid "Flip object horizontally"
-msgstr ""
+msgstr "Retourner l'objet horizontalement"
#: data/ui/glabels-ui.xml.h:55
msgid "Flip object vertically"
-msgstr ""
+msgstr "Retourner l'objet verticalement"
# src/mdi.c:482
# src/mdi.c:488
# src/mdi.c:459
# src/mdi.c:459
#: data/ui/glabels-ui.xml.h:56
-#, fuzzy
msgid "Font name"
-msgstr "Ne pas sauver"
+msgstr "Nom de police"
# src/menu.c:86
# src/menu.c:86
# src/menu.c:86
# src/menu.c:86
#: data/ui/glabels-ui.xml.h:57
-#, fuzzy
msgid "Font selector"
-msgstr "Supprime toutes les sélections"
+msgstr "Sélecteur de polices"
# src/mdi.c:482
# src/mdi.c:488
# src/mdi.c:459
# src/mdi.c:459
#: data/ui/glabels-ui.xml.h:58
-#, fuzzy
msgid "Font size"
-msgstr "Ne pas sauver"
+msgstr "Taille de polices"
#: data/ui/glabels-ui.xml.h:59
msgid "Icon and _Text"
-msgstr ""
+msgstr "Icones et _Textes"
#: data/ui/glabels-ui.xml.h:60
msgid "Increase magnification"
-msgstr ""
+msgstr "Augmenter le zoom"
#: data/ui/glabels-ui.xml.h:61
msgid "Italic"
-msgstr ""
+msgstr "Italique"
#: data/ui/glabels-ui.xml.h:63
msgid "Left align"
-msgstr ""
+msgstr "Aligner à gauche"
#: data/ui/glabels-ui.xml.h:65
msgid "Line width"
-msgstr ""
+msgstr "Largeur de la ligne"
#: data/ui/glabels-ui.xml.h:66
msgid "Lower object to bottom"
-msgstr ""
+msgstr "Descendre l'objet à l'arrière plan"
#: data/ui/glabels-ui.xml.h:67
msgid "M_arkup"
-msgstr ""
+msgstr "_Marges"
#: data/ui/glabels-ui.xml.h:68
msgid "Main toolbar"
-msgstr ""
+msgstr "Barre d'outil principale"
# src/preferences.c:213
#: data/ui/glabels-ui.xml.h:69
-#, fuzzy
msgid "Markup"
-msgstr "Démarrage"
+msgstr "Marges"
# src/item_box.c:251
# src/item_box.c:251
# src/merge_properties.c:82
# src/merge_properties.c:82
#: data/ui/glabels-ui.xml.h:70
-#, fuzzy
msgid "Modify document properties"
-msgstr "Editer les propriétés de fusion de document"
+msgstr "Editer les propriétés du document"
# src/menu.c:50
# src/menu.c:50
# src/menu.c:50
# src/menu.c:50
#: data/ui/glabels-ui.xml.h:71
-#, fuzzy
msgid "New"
-msgstr "_Nouveau"
+msgstr "Nouveau"
# src/item_text.c:467
# src/item_text.c:467
# src/item_text.c:482
# src/item_text.c:482
#: data/ui/glabels-ui.xml.h:72
-#, fuzzy
msgid "Object property editor"
-msgstr "Propriétés du texte"
+msgstr "Editeur de propriétés des objets"
#: data/ui/glabels-ui.xml.h:73
msgid "Only show icons in the drawing toolbar"
-msgstr ""
+msgstr "Ne montrer que les icones dans la barre d'outils de dessin"
#: data/ui/glabels-ui.xml.h:74
msgid "Only show icons in the main toolbar"
-msgstr ""
+msgstr "Ne montrer que les icones dans la barre d'outils principale"
# src/menu.c:140
# src/menu.c:140
# src/file.c:213
# src/file.c:213
#: data/ui/glabels-ui.xml.h:77
-#, fuzzy
msgid "Open the glabels manual"
-msgstr "Ouvrir une étiquette"
+msgstr "Ouvrir le manuel de glabels"
#: data/ui/glabels-ui.xml.h:78
msgid "Paste"
-msgstr ""
+msgstr "Coller"
#: data/ui/glabels-ui.xml.h:79
msgid "Paste the clipboard"
-msgstr ""
+msgstr "Coller le presse-papier"
# src/preferences.c:92
# src/prefs.c:101
# src/prefs.c:92
# src/prefs.c:86
#: data/ui/glabels-ui.xml.h:80
-#, fuzzy
msgid "Pr_eferences..."
-msgstr "Glabels : Préférences"
+msgstr "Pré_férences..."
# src/preferences.c:92
# src/prefs.c:101
# src/prefs.c:92
# src/prefs.c:86
#: data/ui/glabels-ui.xml.h:81
-#, fuzzy
msgid "Preferences"
-msgstr "Glabels : Préférences"
+msgstr "Préférences"
# src/menu.c:145
# src/menu.c:145
# src/menu.c:175
# src/menu.c:175
#: data/ui/glabels-ui.xml.h:83
-#, fuzzy
msgid "Print the current file"
msgstr "Imprimer le fichier en cours"
# src/item_text.c:482
# src/item_text.c:482
#: data/ui/glabels-ui.xml.h:84
-#, fuzzy
msgid "Proper_ties..."
-msgstr "Propriétés du texte"
+msgstr "P_ropriétés..."
# src/item_text.c:467
# src/item_text.c:467
# src/item_text.c:482
# src/item_text.c:482
#: data/ui/glabels-ui.xml.h:85
-#, fuzzy
msgid "Properties"
-msgstr "Propriétés du texte"
+msgstr "Propriétés"
#: data/ui/glabels-ui.xml.h:86
msgid "Property toolbar"
-msgstr ""
+msgstr "Barre d'outil de propriétés"
#: data/ui/glabels-ui.xml.h:87
msgid "Quit"
-msgstr ""
+msgstr "Quitter"
#: data/ui/glabels-ui.xml.h:88
msgid "Quit the program"
-msgstr ""
+msgstr "Quitter le programme"
#: data/ui/glabels-ui.xml.h:89
msgid "Raise object to top"
-msgstr ""
+msgstr "Remonter l'objet au sommet"
#: data/ui/glabels-ui.xml.h:90
msgid "Recent _Files"
-msgstr ""
+msgstr "_Fichiers récents"
#: data/ui/glabels-ui.xml.h:91
msgid "Redo"
-msgstr ""
+msgstr "Refaire"
#: data/ui/glabels-ui.xml.h:92
msgid "Redo the undone action"
-msgstr ""
+msgstr "Refaire l'action annulée"
# src/menu.c:86
# src/menu.c:86
# src/menu.c:86
#: data/ui/glabels-ui.xml.h:93
msgid "Remove all selections"
-msgstr "Supprime toutes les sélections"
+msgstr "Supprimer toutes les sélections"
#: data/ui/glabels-ui.xml.h:95
#, no-c-format
msgid "Restore scale to 100%"
-msgstr ""
+msgstr "Remettre l'échelle à 100%"
#: data/ui/glabels-ui.xml.h:96
msgid "Right align"
-msgstr ""
+msgstr "Aligner à droite"
#: data/ui/glabels-ui.xml.h:99
msgid "Rotate object 90 clockwise"
-msgstr ""
+msgstr "Tourner l'objet de 90 degrés dans le sens des aiguilles d'une montre"
#: data/ui/glabels-ui.xml.h:100
msgid "Rotate object 90 counter-clockwise"
-msgstr ""
+msgstr "Tourner l'objet de 90 degrés dans le sens inverse des aiguilles d'une montre"
# src/file.c:271 src/mdi.c:660
# src/file.c:271 src/mdi.c:666
# src/file.c:311 src/mdi.c:623
# src/file.c:311 src/mdi.c:623
#: data/ui/glabels-ui.xml.h:101
-#, fuzzy
msgid "Save"
-msgstr "Enregistrer sous"
+msgstr "Enregistrer"
# src/file.c:271 src/mdi.c:660
# src/file.c:271 src/mdi.c:666
# src/file.c:311 src/mdi.c:623
# src/file.c:311 src/mdi.c:623
#: data/ui/glabels-ui.xml.h:103
-#, fuzzy
msgid "Save _As..."
-msgstr "Enregistrer sous"
+msgstr "Enregistrer _sous..."
# src/menu.c:142
# src/menu.c:142
# src/menu.c:172
# src/menu.c:172
#: data/ui/glabels-ui.xml.h:104
-#, fuzzy
msgid "Save the current file"
msgstr "Sauvegarder le fichier en cours"
#: data/ui/glabels-ui.xml.h:105
msgid "Save the current file with a different name"
-msgstr ""
+msgstr "Enregistrer le fichier en cours avec un nom différent"
# src/menu.c:86
# src/menu.c:86
# src/menu.c:85
# src/menu.c:85
#: data/ui/glabels-ui.xml.h:106
-#, fuzzy
msgid "Select All"
-msgstr "_Désélectionne tout"
+msgstr "Tout Sélectionner"
# src/menu.c:86
# src/menu.c:86
# src/menu.c:85
# src/menu.c:85
#: data/ui/glabels-ui.xml.h:107
-#, fuzzy
msgid "Select _All"
-msgstr "_Désélectionne tout"
+msgstr "_Tout sélectionner"
# src/tools.c:59
# src/tools.c:59
# src/menu.c:95 src/menu.c:186
# src/menu.c:95 src/menu.c:186
#: data/ui/glabels-ui.xml.h:108
-#, fuzzy
msgid "Select all objects"
-msgstr "Sélectionner, déplacer et modifier les objets"
+msgstr "Sélectionner tous les objets"
# src/tools.c:59
# src/tools.c:59
# src/menu.c:95 src/menu.c:186
#: data/ui/glabels-ui.xml.h:109
msgid "Select, move and modify objects"
-msgstr "Sélectionner, déplacer et modifier les objets"
+msgstr "Sélectionner, déplacer et modifier les objets"
#: data/ui/glabels-ui.xml.h:111
msgid "Set drawing toolbar button style according to desktop default"
-msgstr ""
+msgstr "Utiliser les préférences du bureau pour le style des boutons de la barre d'outils de dessin"
#: data/ui/glabels-ui.xml.h:112
msgid "Set main toolbar button style according to desktop default"
-msgstr ""
+msgstr "Utiliser les préférences du bureau pour le style des boutons de la barre d'outils principale"
#: data/ui/glabels-ui.xml.h:113
msgid "Show _Tooltips"
-msgstr ""
+msgstr "Afficher les infos-bulles"
#: data/ui/glabels-ui.xml.h:114
msgid "Show both icons and texts in the drawing toolbar"
-msgstr ""
+msgstr "Afficher les icones et le texte dans la barre d'outils de dessin"
#: data/ui/glabels-ui.xml.h:115
msgid "Show both icons and texts in the main toolbar"
-msgstr ""
+msgstr "Afficher les icones et le texte dans la barre d'outils principale "
#: data/ui/glabels-ui.xml.h:116
msgid "Show tooltips in the drawing toolbar"
-msgstr ""
+msgstr "Afficher les info-bulles dans la barre d'outils de dessin"
#: data/ui/glabels-ui.xml.h:117
msgid "Show tooltips in the main toolbar"
-msgstr ""
+msgstr "Afficher les info-bulles dans la barre d'outils principale"
#: data/ui/glabels-ui.xml.h:118
msgid "Show tooltips in the property toolbar"
-msgstr ""
+msgstr "Afficher les info-bulles dans la barre d'outils de propriétés"
#: data/ui/glabels-ui.xml.h:119
msgid "Template Designer"
-msgstr ""
+msgstr "Créateur de patrons"
#: data/ui/glabels-ui.xml.h:120
msgid "Template _Designer..."
-msgstr ""
+msgstr "_Créateur de Patrons..."
#: data/ui/glabels-ui.xml.h:121
msgid "Text color"
# src/menu.c:85
# src/menu.c:85
#: data/ui/glabels-ui.xml.h:122
-#, fuzzy
msgid "U_n-select All"
-msgstr "_Désélectionne tout"
+msgstr "Tout _Désélectionner"
# src/menu.c:86
# src/menu.c:86
# src/menu.c:85
# src/menu.c:85
#: data/ui/glabels-ui.xml.h:123
-#, fuzzy
msgid "Un-select All"
-msgstr "_Désélectionne tout"
+msgstr "Désélectionner tout"
#: data/ui/glabels-ui.xml.h:124
msgid "Undo"
-msgstr ""
+msgstr "Annuler"
# src/preferences.c:215
#: data/ui/glabels-ui.xml.h:125
-#, fuzzy
msgid "Undo the last action"
-msgstr "En construction"
+msgstr "Annuler la dernière action"
# src/tools.c:90
# src/tools.c:90
# src/menu.c:127
# src/menu.c:127
#: data/ui/glabels-ui.xml.h:126
-#, fuzzy
msgid "Zoom _1:1"
-msgstr "Zoom 1:1"
+msgstr "Zoom _1:1"
# src/tools.c:84
# src/tools.c:84
# src/menu.c:121 src/menu.c:211
# src/menu.c:121 src/menu.c:211
#: data/ui/glabels-ui.xml.h:127
-#, fuzzy
msgid "Zoom _In"
-msgstr "Zoom supérieur"
+msgstr "Zoom su_périeur"
# src/tools.c:87
# src/tools.c:87
# src/menu.c:124 src/menu.c:214
# src/menu.c:124 src/menu.c:214
#: data/ui/glabels-ui.xml.h:128
-#, fuzzy
msgid "Zoom _Out"
-msgstr "Zoom inférieur"
+msgstr "Zoom in_férieur"
# src/tools.c:90
# src/tools.c:90
# src/menu.c:127 src/menu.c:217
# src/menu.c:127 src/menu.c:217
#: data/ui/glabels-ui.xml.h:129
-#, fuzzy
msgid "Zoom to _fit"
-msgstr "Zoomer à 1:1"
+msgstr "_Adapter le zoom à la taille de la fenètre"
#: data/ui/glabels-ui.xml.h:130
msgid "Zoom to fit window"
-msgstr ""
+msgstr "Adapter le zoom à la taille de la fenètre"
#: data/ui/glabels-ui.xml.h:131
msgid "_About..."
-msgstr ""
+msgstr "_A propos..."
#: data/ui/glabels-ui.xml.h:132
msgid "_Bottoms"
-msgstr ""
+msgstr "En _Bas"
#: data/ui/glabels-ui.xml.h:135
msgid "_Close"
-msgstr ""
+msgstr "_Fermer"
#: data/ui/glabels-ui.xml.h:136
msgid "_Contents"
-msgstr ""
+msgstr "_Contenu de l'aide"
#: data/ui/glabels-ui.xml.h:137
msgid "_Copy"
-msgstr ""
+msgstr "_Copier"
# src/tools.c:64
# src/tools.c:64
# src/menu.c:100 src/menu.c:191
# src/menu.c:100 src/menu.c:191
#: data/ui/glabels-ui.xml.h:138
-#, fuzzy
msgid "_Create Object"
-msgstr "Créer un objet texte"
+msgstr "_Créer un objet"
#: data/ui/glabels-ui.xml.h:139
msgid "_Debug"
#: data/ui/glabels-ui.xml.h:141
msgid "_Desktop Default"
-msgstr ""
+msgstr "Par _Défaut"
#: data/ui/glabels-ui.xml.h:142
msgid "_Drawing Toolbar"
-msgstr ""
+msgstr "Barre d'outils de _Dessin"
#: data/ui/glabels-ui.xml.h:143
msgid "_Edit"
-msgstr ""
+msgstr "_Edition"
# src/item_box.c:274 src/item_ellipse.c:279
# src/item_box.c:274 src/item_ellipse.c:279
# src/item_box.c:258 src/item_ellipse.c:260
# src/item_box.c:258 src/item_ellipse.c:260
#: data/ui/glabels-ui.xml.h:145
-#, fuzzy
msgid "_File"
-msgstr "Remplissage"
+msgstr "_Fichier"
#: data/ui/glabels-ui.xml.h:146
msgid "_Grid"
-msgstr ""
+msgstr "_Grille"
#: data/ui/glabels-ui.xml.h:147
msgid "_Help"
-msgstr ""
+msgstr "_Aide"
#: data/ui/glabels-ui.xml.h:148
msgid "_Icon"
-msgstr ""
+msgstr "_Icones"
#: data/ui/glabels-ui.xml.h:152
msgid "_Main Toolbar"
-msgstr ""
+msgstr "Barre d'outils pr_incipale"
# src/item_text.c:467
# src/item_text.c:467
# src/menu.c:132 src/menu.c:223
# src/menu.c:132 src/menu.c:223
#: data/ui/glabels-ui.xml.h:153
-#, fuzzy
msgid "_Merge Properties..."
-msgstr "Propriétés de fusion"
+msgstr "_Propriétés de fusion..."
# src/menu.c:50
# src/menu.c:50
#: data/ui/glabels-ui.xml.h:155
msgid "_Objects"
-msgstr ""
+msgstr "_Objets"
# src/file.c:178
# src/file.c:178
# src/file.c:211
# src/file.c:211
#: data/ui/glabels-ui.xml.h:156
-#, fuzzy
msgid "_Open..."
-msgstr "Ouvrir"
+msgstr "_Ouvrir..."
#: data/ui/glabels-ui.xml.h:158
msgid "_Paste"
-msgstr ""
+msgstr "Co_ller"
# src/print.c:149
# src/print.c:149
# src/print.c:141
# src/print_dialog.c:99
#: data/ui/glabels-ui.xml.h:159
-#, fuzzy
msgid "_Print..."
-msgstr "Imprimer"
+msgstr "Im_primer..."
#: data/ui/glabels-ui.xml.h:160
msgid "_Property Toolbar"
-msgstr ""
+msgstr "Barre d'outils de pr_opriétés"
#: data/ui/glabels-ui.xml.h:161
msgid "_Quit"
-msgstr ""
+msgstr "_Quitter"
# src/file.c:271 src/mdi.c:660
# src/file.c:271 src/mdi.c:666
# src/file.c:311 src/mdi.c:623
# src/file.c:311 src/mdi.c:623
#: data/ui/glabels-ui.xml.h:164
-#, fuzzy
msgid "_Save"
-msgstr "Enregistrer sous"
+msgstr "_Enregistrer"
# src/menu.c:50
# src/menu.c:50
# src/menu.c:50
# src/menu.c:50
#: data/ui/glabels-ui.xml.h:168
-#, fuzzy
msgid "_View"
-msgstr "_Nouveau"
+msgstr "_Affichage"
#: data/glade/prefs-dialog.glade.h:1
msgid " "
-msgstr ""
+msgstr " "
#: data/glade/prefs-dialog.glade.h:2 data/glade/object-editor.glade.h:1
#: data/glade/template-designer.glade.h:5
msgid "*"
-msgstr ""
+msgstr "*"
#: data/glade/prefs-dialog.glade.h:3
msgid "<span weight=\"bold\">Default page size</span>"
-msgstr ""
+msgstr "<span weight=\"bold\">Taille de page par défaut</span>"
#: data/glade/prefs-dialog.glade.h:4
msgid "<span weight=\"bold\">Fill</span>"
#: data/glade/prefs-dialog.glade.h:5
msgid "<span weight=\"bold\">Line</span>"
-msgstr ""
+msgstr "<span weight=\"bold\">Ligne</span>"
#: data/glade/prefs-dialog.glade.h:6
msgid "<span weight=\"bold\">Text</span>"
-msgstr ""
+msgstr "<span weight=\"bold\">Texte</span>"
#: data/glade/prefs-dialog.glade.h:7
msgid "<span weight=\"bold\">Units</span>"
-msgstr ""
+msgstr "<span weight=\"bold\">Unités</span>"
# src/prop_text.c:277
# src/prop_text.c:264
#: data/glade/prefs-dialog.glade.h:13 data/glade/object-editor.glade.h:19
msgid "Line Spacing:"
-msgstr ""
+msgstr "Espacement :"
# src/prop_bc.c:189
# src/prop_bc.c:187
# src/prop_bc.c:168
# src/prop_bc.c:168
#: data/glade/prefs-dialog.glade.h:14
-#, fuzzy
msgid "Locale"
-msgstr "Echelle :"
+msgstr "Localisation"
# src/prefs.c:271
# src/prefs.c:250
+
# src/prefs.c:244
#: data/glade/prefs-dialog.glade.h:15
msgid "Millimeters"
-msgstr "Milimètres"
+msgstr "Milimètres"
#: data/glade/prefs-dialog.glade.h:16
msgid "Object defaults"
-msgstr ""
+msgstr "Paramètres par défaut pour les objets"
# src/print.c:149
# src/prefs.c:259
#: data/glade/prefs-dialog.glade.h:18
msgid "Select default properties for new objects."
-msgstr ""
+msgstr "Sélectionner les propriétés pas défaut pour les nouveaux objets."
#: data/glade/prefs-dialog.glade.h:19
msgid "Select locale specific behavior."
-msgstr ""
+msgstr "Sélectionnez les paramètres de localisation"
#: data/glade/prefs-dialog.glade.h:20 data/templates/paper-sizes.xml.h:25
msgid "US Letter"
#: data/glade/object-editor.glade.h:3
msgid "<span weight=\"bold\" size=\"larger\">Xxx object properties</span>"
-msgstr ""
+msgstr "<span weight=\"bold\" size=\"larger\">Xxx Propriétés de l'objet</span>"
#: data/glade/object-editor.glade.h:5
msgid "Allow merge to automatically shrink text"
-msgstr ""
+msgstr "Permettre à la fusion de diminuer\n"
+"automatiquement la taille du texte"
# src/prop_vector.c:207
# src/prop_vector.c:228
#: data/glade/object-editor.glade.h:7
msgid "Checksum"
-msgstr ""
+msgstr "Somme de contrôle"
# src/item_box.c:274 src/item_ellipse.c:279
# src/item_box.c:274 src/item_ellipse.c:279
# src/item_box.c:258 src/item_ellipse.c:260
# src/item_box.c:258 src/item_ellipse.c:260
#: data/glade/object-editor.glade.h:10
-#, fuzzy
msgid "Family:"
-msgstr "Remplissage"
+msgstr "Famille :"
# src/item_box.c:274 src/item_ellipse.c:279
# src/item_box.c:274 src/item_ellipse.c:279
# src/prop_text_entry.c:196
#: data/glade/object-editor.glade.h:15
msgid "Insert merge field"
-msgstr "Insérer champ de fusion"
+msgstr "Insérer un champ\nde fusion"
# src/prop_vector.c:196
# src/prop_vector.c:202
# src/prop_bc_data.c:176
#: data/glade/object-editor.glade.h:20
msgid "Literal:"
-msgstr "Littéral :"
+msgstr "Littéral :"
#: data/glade/object-editor.glade.h:21
msgid "Load image"
-msgstr ""
+msgstr "Charger l'image"
# src/item_barcode.c:362 src/item_barcode.c:365 src/item_box.c:291
# src/item_ellipse.c:296 src/item_image.c:315 src/item_line.c:289
# src/item_box.c:286 src/item_ellipse.c:288 src/item_image.c:329
# src/item_line.c:285
#: data/glade/object-editor.glade.h:25
-#, fuzzy
msgid "Size:"
-msgstr "Taille"
+msgstr "Taille :"
# src/item_barcode.c:347
# src/item_barcode.c:353
# src/item_barcode.c:330
# src/item_barcode.c:330
#: data/glade/object-editor.glade.h:26
-#, fuzzy
msgid "Style"
msgstr "Style"
# src/item_barcode.c:330
# src/item_barcode.c:330
#: data/glade/object-editor.glade.h:27
-#, fuzzy
msgid "Style:"
-msgstr "Style"
+msgstr "Style :"
# src/prop_position.c:192
# src/prop_position.c:173
# src/prop_vector.c:224
#: data/glade/object-editor.glade.h:32
msgid "degrees"
-msgstr "degrés"
+msgstr "degrés"
#: data/glade/object-editor.glade.h:33
msgid "dialog1"
# src/merge_properties.c:143
# src/merge_properties.c:143
#: data/glade/object-editor.glade.h:35
-#, fuzzy
msgid "format:"
-msgstr "Format :"
+msgstr "format :"
#: data/glade/template-designer.glade.h:1
msgid " "
-msgstr ""
+msgstr " "
#: data/glade/template-designer.glade.h:2
msgid "(e.g., \"Mailing Labels,\" \"Business Cards,\" ...)"
-msgstr ""
+msgstr "(ex : \"Etiquettes de Publipostage\", \"Cartes de Visites\", ...)"
#: data/glade/template-designer.glade.h:3
msgid "(e.g., 8163A)"
-msgstr ""
+msgstr "(ex : 8163A)"
#: data/glade/template-designer.glade.h:4
msgid "(e.g., Avery, Acme, ...)"
-msgstr ""
+msgstr "(ex : Avery, Acme, ...)"
#: data/glade/template-designer.glade.h:6
msgid "1. Outer radius:"
-msgstr ""
+msgstr "1. Rayon Extérieur :"
#: data/glade/template-designer.glade.h:7
msgid "1. Radius:"
-msgstr ""
+msgstr "1. Rayon :"
# src/prop_line.c:188
# src/prop_line.c:187 src/prop_size.c:202
# src/prop_line.c:169 src/prop_size.c:182
# src/prop_line.c:169 src/prop_size.c:182
#: data/glade/template-designer.glade.h:8
-#, fuzzy
msgid "1. Width:"
-msgstr "Largeur :"
+msgstr "1. Largeur :"
# src/prop_size.c:220
# src/prop_size.c:198
# src/prop_size.c:198
#: data/glade/template-designer.glade.h:9
-#, fuzzy
msgid "2. Height:"
-msgstr "Hauteur :"
+msgstr "2. Hauteur :"
#: data/glade/template-designer.glade.h:10
msgid "2. Inner radius:"
-msgstr ""
+msgstr "2. Rayon Intérieur"
#: data/glade/template-designer.glade.h:11
msgid "2. Waste (overprint allowed):"
-msgstr ""
+msgstr "2. Déchet (impression en surcharge autorisée)"
#: data/glade/template-designer.glade.h:12
msgid "3. Clipping width:"
-msgstr ""
+msgstr "3. Largeur de Rognure :"
#: data/glade/template-designer.glade.h:13
msgid "3. Margin"
-msgstr ""
+msgstr "3. Marge"
#: data/glade/template-designer.glade.h:14
msgid "3. Round (radius of corner):"
-msgstr ""
+msgstr "3. Arrondi (rayon du coin) :"
#: data/glade/template-designer.glade.h:15
msgid "4. Clipping height:"
-msgstr ""
+msgstr "4. Hauteur de Rognure :"
#: data/glade/template-designer.glade.h:16
msgid "4. Horiz. waste (overprint allowed):"
-msgstr ""
+msgstr "4. Déchet horiz. (impression en surcharge autorisée)"
#: data/glade/template-designer.glade.h:17
msgid "5. Vert. waste (overprint allowed):"
-msgstr ""
+msgstr "5. Déchet Vert. (impression en surcharge autorisée)"
#: data/glade/template-designer.glade.h:18
msgid "5. Waste (overprint allowed):"
-msgstr ""
+msgstr "5. Déchet (impression en surcharge autorisée)"
#: data/glade/template-designer.glade.h:19
msgid "6. Margin"
-msgstr ""
+msgstr "6. Marge"
#: data/glade/template-designer.glade.h:20
msgid "Brand/Manufacturer:"
-msgstr ""
+msgstr "Marque/Fabricant"
#: data/glade/template-designer.glade.h:21
msgid "CD/DVD (including credit card CDs)"
-msgstr ""
+msgstr "CD/DVD (y compris CD au format carte de crédit)"
#: data/glade/template-designer.glade.h:22
msgid ""
"Otherwise, you may click \"Cancel\" to abandon your design\n"
"or \"Back\" to continue editing this design."
msgstr ""
+"Félicitations !"
+"\n"
+"Vous avez terminé la création d'un patron gLabels.\n"
+"Si vous voulez accepter et sauver votre création, cliquez sur \"Appliquer\".\n"
+"\n"
+"Dans le cas contraire, vous pouvez cliquer sur \"Annuler\" pour abandonner votre création.\n"
+"ou \"Précédent\" pour continuer d'éditer cette création."
#: data/glade/template-designer.glade.h:30
msgid "Design Completed"
-msgstr ""
+msgstr "Création terminée"
#: data/glade/template-designer.glade.h:31
msgid "Distance from left edge (x0):"
-msgstr ""
+msgstr "Distance par rapport au bord gauche (x0) :"
#: data/glade/template-designer.glade.h:32
msgid "Distance from top edge (y0):"
-msgstr ""
+msgstr "Distance pas rapport au bord haut (y0) :"
#: data/glade/template-designer.glade.h:34
msgid "Horizontal pitch (dx):"
-msgstr ""
+msgstr "Espacement Horizontal (dx) :"
#: data/glade/template-designer.glade.h:35
msgid ""
"Most templates only need one layout, as in the first example.\n"
"The second example illustrates when two layouts are needed."
msgstr ""
+"Combien de dispositions votre patron contiendra-t-il ? \n"
+"\n"
+"Une disposition est un ensemble d'étiquettes ou de cartes qui peuvent être rangés sur une simple grille.\n"
+"La plupart des patrons n'ont besoin que d'une disposition, comme pour le premier exemple.\n"
+"Le deuxième exemple illustre le cas où deux dispositions sont nécessaires."
#: data/glade/template-designer.glade.h:40
msgid "Label Size (CD/DVD)"
-msgstr ""
+msgstr "Taille des étiquettes (CD/DVD)"
# src/media_select.c:226
# src/media_select.c:252
# src/media_select.c:232
# src/media_select.c:232
#: data/glade/template-designer.glade.h:41
-#, fuzzy
msgid "Label Size (Round)"
-msgstr "Taille d'étiquette :"
+msgstr "Taille des étiquettes (rondes) :"
# src/file.c:59
# src/file.c:59
# src/file.c:72
# src/file.c:72
#: data/glade/template-designer.glade.h:42
-#, fuzzy
msgid "Label or Card Shape"
-msgstr "Nouvelle étiquette ou carte"
+msgstr "Forme des cartes ou des étiquettes"
#: data/glade/template-designer.glade.h:43
msgid "Label or Card Size (Rectangular)"
-msgstr ""
+msgstr "Taille des Etiquettes ou Cartes (Rectangulaires)"
# src/media_select.c:231
# src/media_select.c:257
# src/media_select.c:237
# src/media_select.c:237
#: data/glade/template-designer.glade.h:44
-#, fuzzy
msgid "Layout #1"
-msgstr "Disposition :"
+msgstr "Disposition n°1 :"
# src/media_select.c:231
# src/media_select.c:257
# src/media_select.c:237
# src/media_select.c:237
#: data/glade/template-designer.glade.h:45
-#, fuzzy
msgid "Layout #2"
-msgstr "Disposition :"
+msgstr "Disposition n°2 :"
# src/media_select.c:231
# src/media_select.c:257
# src/media_select.c:237
# src/media_select.c:237
#: data/glade/template-designer.glade.h:46
-#, fuzzy
msgid "Layout(s)"
-msgstr "Disposition :"
+msgstr "Disposition(s) :"
# src/media_select.c:216
# src/media_select.c:242
# src/media_select.c:222
# src/media_select.c:222
#: data/glade/template-designer.glade.h:47
-#, fuzzy
msgid "Name and Description"
-msgstr "Description :"
+msgstr "Nom et Description"
#: data/glade/template-designer.glade.h:48
msgid "Number across (nx):"
-msgstr ""
+msgstr "Nombre horizontalement (nx)"
#: data/glade/template-designer.glade.h:49
msgid "Number down (ny):"
-msgstr ""
+msgstr "Nombre verticalement (ny)"
#: data/glade/template-designer.glade.h:50
msgid "Number of Layouts"
-msgstr ""
+msgstr "Nombre de Dispositions"
#: data/glade/template-designer.glade.h:51
msgid "Number of layouts:"
-msgstr ""
+msgstr "Nombre de dispositions :"
# src/media_select.c:221
# src/media_select.c:247
# src/media_select.c:227
# src/media_select.c:227
#: data/glade/template-designer.glade.h:52
-#, fuzzy
msgid "Page Size"
-msgstr "Taille de page :"
+msgstr "Taille de page"
#: data/glade/template-designer.glade.h:54
msgid "Part #:"
-msgstr ""
+msgstr "Ref :"
#: data/glade/template-designer.glade.h:55
msgid ""
"Please enter the following identifying information about the template "
"stationery."
-msgstr ""
+msgstr "Entrez les informations suivantes à propos du fabricant de papier."
#: data/glade/template-designer.glade.h:56
msgid "Please enter the following layout information."
-msgstr ""
+msgstr "Entrez les informations suivantes sur la disposition"
#: data/glade/template-designer.glade.h:57
msgid ""
"Please enter the following size parameters of a single label in your "
"template."
msgstr ""
+"Entrez les paramètres de taille suivants pour une étiquette."
#: data/glade/template-designer.glade.h:58
msgid ""
"Please enter the following size parameters of a single label or card in your "
"template."
msgstr ""
+"Entrez les paramètres de taille suivant pour une carte ou une étiquette."
#: data/glade/template-designer.glade.h:59
msgid "Please select the basic shape of the labels or cards."
-msgstr ""
+msgstr "Sélectionnez la forme de base des cartes ou des étiquettes"
#: data/glade/template-designer.glade.h:60
msgid "Please select the page size of the template stationery."
-msgstr ""
+msgstr "Sélectionnez la taille du papier."
# src/print_copies_merge.c:206
# src/print_merge.c:179
#: data/glade/template-designer.glade.h:61
-#, fuzzy
msgid "Print test sheet"
-msgstr "en 1ère page"
+msgstr "Imprimer une page de tests"
#: data/glade/template-designer.glade.h:62
msgid "Rectangular or square (can have rounded corners)"
-msgstr ""
+msgstr "Rectangulaire ou carré (éventuellement à bords arrondis)"
#: data/glade/template-designer.glade.h:63
msgid "Round"
-msgstr ""
+msgstr "Rond"
#: data/glade/template-designer.glade.h:64
msgid ""
"Templates needing\n"
"two layouts."
msgstr ""
+"Patron nécessitant\n"
+"deux dispositions."
#: data/glade/template-designer.glade.h:66
msgid ""
"Templates needing only\n"
"one layout."
+
msgstr ""
+"Patron nécessitant\n"
+"une disposition"
#: data/glade/template-designer.glade.h:68
msgid "Vertical pitch (dy):"
-msgstr ""
+msgstr "Espacement vertical (dy) :"
#: data/glade/template-designer.glade.h:69
msgid ""
"\n"
"This dialog will assist you in the creation of a custom gLabels template."
msgstr ""
-
+"Bienvenue dans le Créateur de Patrons de gLabels."
+"\n"
+"Ce questionnaire va vous aider à créer un patron personnalisé pour glabels."
#: data/templates/paper-sizes.xml.h:1
msgid "A0"
msgstr ""
# src/print_copies.c:188
# src/print_copies.c:187
#: data/templates/avery-us-templates.xml.h:5
-#, fuzzy
msgid "Filing Labels"
-msgstr "Etiquettes"
+msgstr ""
#: data/templates/avery-us-templates.xml.h:6
msgid "Full Sheet Labels"
# src/print_copies_merge.c:197
# src/print_merge.c:170
#: data/templates/avery-us-templates.xml.h:7
-#, fuzzy
msgid "Large Round Labels"
-msgstr "Commencer par l'étiquette"
+msgstr ""
#: data/templates/avery-us-templates.xml.h:8
msgid "Name Badge Labels"
# src/print_copies_merge.c:197
# src/print_merge.c:170
#: data/templates/avery-us-templates.xml.h:11
-#, fuzzy
msgid "Small Round Labels"
-msgstr "Commencer par l'étiquette"
+msgstr ""
# src/print_copies.c:210
# src/print_copies.c:210
# src/print_copies.c:188
# src/print_copies.c:187
#: data/templates/avery-us-templates.xml.h:12
-#, fuzzy
msgid "Square Labels"
-msgstr "Etiquettes"
+msgstr ""
#: data/templates/avery-us-templates.xml.h:13
msgid "Video Tape Face Labels"
#: data/templates/zweckform-iso-templates.xml.h:4
#: data/templates/misc-us-templates.xml.h:4
#: data/templates/misc-iso-templates.xml.h:10
-#, fuzzy
msgid "CD/DVD Labels"
-msgstr "Etiquettes"
+msgstr ""
#: data/templates/avery-iso-templates.xml.h:6
msgid "Diskette labels"
# src/print_copies.c:188
# src/print_copies.c:187
#: data/templates/avery-iso-templates.xml.h:8
-#, fuzzy
msgid "Mailing labels"
-msgstr "Etiquettes"
+msgstr ""
#: data/templates/avery-iso-templates.xml.h:9
msgid "Mini Address Labels"
# src/file.c:213
# src/file.c:213
#: data/templates/avery-iso-templates.xml.h:10
-#, fuzzy
msgid "Shipping labels"
-msgstr "Ouvrir une étiquette"
+msgstr ""
#: data/templates/zweckform-iso-templates.xml.h:2
msgid "Allround Labels"
# src/print_copies.c:188
# src/print_copies.c:187
#: data/templates/misc-us-templates.xml.h:7
-#, fuzzy
msgid "DLT Labels"
-msgstr "Etiquettes"
+msgstr ""
#: data/templates/misc-us-templates.xml.h:8
msgid "Microtube labels"
# src/item_text.c:482
# src/item_text.c:482
#: data/mime/glabels.keys.in.h:1 data/mime/glabels.xml.in.h:1
-#, fuzzy
msgid "gLabels Project File"
-msgstr "Propriétés du texte"
+msgstr "Fichier de projet glabels"
# src/item_text.c:467
# src/item_text.c:467
# src/item_text.c:482
#, fuzzy
#~ msgid "Object _Properties..."
-#~ msgstr "Propriétés du texte"
+#~ msgstr "Propriétés du texte"
# src/prefs.c:248
# src/prefs.c:226
# src/prefs.c:220
#~ msgid "Display units"
-#~ msgstr "Unités d'affichage"
+#~ msgstr "Unités d'affichage"
# src/item_image.c:341
# src/prefs.c:278
# src/prefs.c:255
# src/prefs.c:249
#~ msgid "Default page size"
-#~ msgstr "Taille de page par défaut"
+#~ msgstr "Taille de page par défaut"
# src/item_box.c:264 src/item_ellipse.c:269
# src/item_box.c:264 src/item_ellipse.c:269
# src/item_line.c:243
# src/item_line.c:243
#~ msgid "Edit line object properties"
-#~ msgstr "Editer les propriétés de l'objet ligne..."
+#~ msgstr "Editer les propriétés de l'objet ligne..."
# src/item_text.c:432
# src/item_text.c:432
# src/item_text.c:450
# src/item_text.c:450
#~ msgid "Edit text object properties"
-#~ msgstr "Editer les propriétés de l'objet texte..."
+#~ msgstr "Editer les propriétés de l'objet texte..."
# src/prop_size.c:215
# src/prop_size.c:247
# src/prop_size.c:222
# src/prop_size.c:222
#~ msgid "Maintain current aspect ratio"
-#~ msgstr "Conserver le rapport d'échelle actuel"
+#~ msgstr "Conserver le rapport d'échelle actuel"
# src/print_copies.c:210
# src/print_copies.c:210
# src/mdi.c:169
# src/mdi.c:169
#~ msgid "Revert to saved copy of %s?"
-#~ msgstr "Rétablir la version sauvegardée de %s ?"
+#~ msgstr "Rétablir la version sauvegardée de %s ?"
# src/mdi.c:219
# src/mdi.c:207
# src/mdi.c:207
#~ msgid "Unknown media type. Using default."
-#~ msgstr "Type de media inconnu. Utilisation de celui par défaut."
+#~ msgstr "Type de media inconnu. Utilisation de celui par défaut."
# src/mdi.c:477
# src/mdi.c:483
#~ "\n"
#~ "Do you wish to save it?"
#~ msgstr ""
-#~ "``%s'' a été modifié \n"
+#~ "``%s'' a été modifié \n"
#~ "\n"
#~ "Voulez-vous l'enregistrer ?"
# src/mdi.c:626
# src/mdi.c:626
#~ msgid "Close / Save label as"
-#~ msgstr "Fermer / Enregistrer l'étiquette sous"
+#~ msgstr "Fermer / Enregistrer l'étiquette sous"
# src/file.c:309 src/mdi.c:716
# src/file.c:309 src/mdi.c:722
# src/file.c:374 src/mdi.c:705
# src/file.c:374 src/mdi.c:705
#~ msgid "Error writing file"
-#~ msgstr "Erreur d'écriture du fichier"
+#~ msgstr "Erreur d'écriture du fichier"
# src/display.c:1194
# src/display.c:1197
# src/display.c:1208
# src/display.c:1223
#~ msgid "Edit properties..."
-#~ msgstr "Editer les propriétés..."
+#~ msgstr "Editer les propriétés..."
# src/item_barcode.c:334 src/item_box.c:261 src/item_ellipse.c:266
# src/item_line.c:268 src/item_text.c:464
# src/item_image.c:389 src/item_image.c:454
# src/item_image.c:389 src/item_image.c:454
#~ msgid "Image format not currently supported"
-#~ msgstr "Format d'image non supporté actuellement"
+#~ msgstr "Format d'image non supporté actuellement"
# src/item_barcode.c:316
# src/item_barcode.c:317
# src/item_barcode.c:299
# src/item_barcode.c:299
#~ msgid "Barcode data"
-#~ msgstr "Données de code-barre"
+#~ msgstr "Données de code-barre"
# src/prop_bc.c:202
# src/prop_bc.c:182
# src/merge_ui_text.c:338
# src/merge_ui_text.c:338
#~ msgid "Sample data"
-#~ msgstr "Exemple de données"
+#~ msgstr "Exemple de données"
# src/menu.c:51
# src/menu.c:51
# src/menu.c:51
# src/menu.c:51
#~ msgid "Make a new, empty label"
-#~ msgstr "Créer une nouvelle étiquette vide"
+#~ msgstr "Créer une nouvelle étiquette vide"
# src/menu.c:138
# src/menu.c:138
# src/menu.c:168
# src/menu.c:168
#~ msgid "New Label/Card"
-#~ msgstr "Nouvelle étiquette/carte"
+#~ msgstr "Nouvelle étiquette/carte"
# src/menu.c:140
# src/menu.c:140
# src/menu.c:326
# src/menu.c:326
#~ msgid "Function is not implemented!"
-#~ msgstr "Cette fonction n'est pas implémentée !"
+#~ msgstr "Cette fonction n'est pas implémentée !"
# src/tools.c:297
# src/tools.c:297
#~ msgid "Function is not yet implemented!"
-#~ msgstr "Cette fonction n'est pas encore implémentée !"
+#~ msgstr "Cette fonction n'est pas encore implémentée !"
# src/prop_size.c:194
#~ msgid "w"
#, fuzzy
#~ msgid "Maintain original aspect ratio"
-#~ msgstr "Conserver le rapport d'échelle d'origine"
+#~ msgstr "Conserver le rapport d'échelle d'origine"
prefs-model.h \
util.c \
util.h \
+ color.c \
+ color.h \
debug.c \
debug.h \
$(BUILT_SOURCES)
return color;
}
+/****************************************************************************/
+/* Create a single color node with default color. */
+/****************************************************************************/
+glColorNode *
+gl_color_node_new_default ()
+{
+ glColorNode* color_node;
+
+ color_node = g_new0(glColorNode,1);
+
+ color_node->field_flag = FALSE;
+ color_node->color = GL_COLOR_NONE;
+ color_node->key = NULL;
+
+ return color_node;
+}
+
+/****************************************************************************/
+/* Copy a single color node. */
+/****************************************************************************/
+glColorNode *
+gl_color_node_dup (glColorNode *src)
+{
+ glColorNode *dst;
+
+ if ( src == NULL ) return NULL;
+
+ dst = g_new0 (glColorNode, 1);
+
+ dst->field_flag = src->field_flag;
+ if (src->key != NULL)
+ {
+ dst->key = g_strdup (src->key);
+ }
+ else
+ {
+ dst->key = NULL;
+ }
+ dst->color = src->color;
+
+ return dst;
+}
+
+/****************************************************************************/
+/* Compare 2 color nodes for equality. */
+/****************************************************************************/
+gboolean
+gl_color_node_equal (glColorNode *color_node1,
+ glColorNode *color_node2)
+{
+ /* First take care of the case of either or both being NULL. */
+ if ( color_node1 == NULL ) {
+ return ( color_node2 == NULL );
+ } else {
+ if ( color_node2 == NULL ) {
+ return FALSE;
+ }
+ }
+
+ /* Bail if field flags differ. */
+ if ( color_node1->field_flag != color_node2->field_flag ) {
+ return FALSE;
+ }
+
+ /* Now take care of the case of either or both color fields being different. */
+ if ( color_node1->color != color_node2->color ){
+ return FALSE;
+ }
+
+ /* Then take care of the case of either or both key fields being NULL. */
+ if ( color_node1->key == NULL ) {
+ return ( color_node2->key == NULL );
+ } else {
+ if ( color_node2->key == NULL ) {
+ return FALSE;
+ }
+ }
+
+ /* Field flags are identical, so now compare the keys. */
+ return (strcmp (color_node1->key, color_node2->key) == 0);
+}
+
+/****************************************************************************/
+/* Expand single node into representative color. */
+/****************************************************************************/
+guint
+gl_color_node_expand (glColorNode *color_node,
+ glMergeRecord *record)
+{
+ gchar* text;
+ GdkColor *gdk_color;
+ guint color;
+
+ if (color_node->field_flag) {
+ if (record == NULL) {
+ return GL_COLOR_NONE;
+ } else {
+ text = gl_merge_eval_key (record, color_node->key);
+ if (text != NULL) {
+ gdk_color = g_new0 (GdkColor, 1);
+ if (gdk_color_parse (text, gdk_color))
+ {
+ color = gl_color_from_gdk_color (gdk_color);
+ g_free (gdk_color);
+ return color;
+ }
+ else
+ {
+ g_free (gdk_color);
+ return GL_COLOR_NONE;
+ }
+ } else {
+ return GL_COLOR_NONE;
+ }
+ }
+ } else {
+ return color_node->color;
+ }
+}
+
+/****************************************************************************/
+/* Free a single color node. */
+/****************************************************************************/
+void
+gl_color_node_free (glColorNode **color_node)
+{
+ if ( *color_node == NULL ) return;
+
+ g_free ((*color_node)->key);
+ (*color_node)->key = NULL;
+ g_free (*color_node);
+ *color_node = NULL;
+}
#define __COLOR_H__
#include <libgnomecanvas/gnome-canvas.h>
+#include "merge.h"
G_BEGIN_DECLS
+typedef struct {
+ gboolean field_flag;
+ guint color;
+ gchar *key;
+} glColorNode;
+
#define GL_COLOR(r,g,b) GNOME_CANVAS_COLOR(r,g,b)
#define GL_COLOR_A(r,g,b,a) GNOME_CANVAS_COLOR_A(r,g,b,a)
#define GL_COLOR_NONE GL_COLOR_A(0,0,0,0)
+#define GL_COLOR_FILL_MERGE_DEFAULT GL_COLOR_A(255,255,255,128)
+#define GL_COLOR_MERGE_DEFAULT GL_COLOR_A(0,0,0,128)
#define GL_COLOR_I_RED(x) (((x)>>24) & 0xff)
#define GL_COLOR_I_GREEN(x) (((x)>>16) & 0xff)
GdkColor *gl_color_to_gdk_color (guint color);
guint gl_color_from_gdk_color (GdkColor *gdk_color);
+glColorNode *gl_color_node_new_default ();
+
+glColorNode *gl_color_node_dup (glColorNode *color_node);
+gboolean gl_color_node_equal (glColorNode *color_node1,
+ glColorNode *color_node2);
+guint gl_color_node_expand (glColorNode *color_node,
+ glMergeRecord *record);
+void gl_color_node_free (glColorNode **color_node);
+
+
G_END_DECLS
#endif /* __COLOR_H__ */
* Copyright (C) 2000, 2001 Chema Celorio, Paolo Maggi
*
*/
-#include <glib.h>
#include "debug.h"
-/* External debug options, used here and in glabels.c */
-gint gl_debug_all = 0;
-gint gl_debug_view = 0;
-gint gl_debug_item = 0;
-gint gl_debug_prefs = 0;
-gint gl_debug_print = 0;
-gint gl_debug_file = 0;
-gint gl_debug_label = 0;
-gint gl_debug_template = 0;
-gint gl_debug_paper = 0;
-gint gl_debug_xml = 0;
-gint gl_debug_merge = 0;
-gint gl_debug_commands = 0;
-gint gl_debug_undo = 0;
-gint gl_debug_recent = 0;
-gint gl_debug_window = 0;
-gint gl_debug_ui = 0;
-gint gl_debug_property_bar = 0;
-gint gl_debug_media_select = 0;
-gint gl_debug_mini_preview = 0;
-gint gl_debug_pixbuf_cache = 0;
-gint gl_debug_editor = 0;
-gint gl_debug_wdgt = 0;
+glDebugSection debug_flags = GLABELS_DEBUG_NONE;
+
+/****************************************************************************/
+/* Initialize debug flags, based on environmental variables. */
+/****************************************************************************/
+void
+gl_debug_init (void)
+{
+ if (g_getenv ("GLABELS_DEBUG") != NULL)
+ {
+ /* enable all debugging */
+ debug_flags = ~GLABELS_DEBUG_NONE;
+ return;
+ }
+
+ if (g_getenv ("GLABELS_DEBUG_VIEW") != NULL)
+ debug_flags |= GLABELS_DEBUG_VIEW;
+ if (g_getenv ("GLABELS_DEBUG_ITEM") != NULL)
+ debug_flags |= GLABELS_DEBUG_ITEM;
+ if (g_getenv ("GLABELS_DEBUG_PRINT") != NULL)
+ debug_flags |= GLABELS_DEBUG_PRINT;
+ if (g_getenv ("GLABELS_DEBUG_PREFS") != NULL)
+ debug_flags |= GLABELS_DEBUG_PREFS;
+ if (g_getenv ("GLABELS_DEBUG_FILE") != NULL)
+ debug_flags |= GLABELS_DEBUG_FILE;
+ if (g_getenv ("GLABELS_DEBUG_LABEL") != NULL)
+ debug_flags |= GLABELS_DEBUG_LABEL;
+ if (g_getenv ("GLABELS_DEBUG_TEMPLATE") != NULL)
+ debug_flags |= GLABELS_DEBUG_TEMPLATE;
+ if (g_getenv ("GLABELS_DEBUG_PAPER") != NULL)
+ debug_flags |= GLABELS_DEBUG_PAPER;
+ if (g_getenv ("GLABELS_DEBUG_XML") != NULL)
+ debug_flags |= GLABELS_DEBUG_XML;
+ if (g_getenv ("GLABELS_DEBUG_MERGE") != NULL)
+ debug_flags |= GLABELS_DEBUG_MERGE;
+ if (g_getenv ("GLABELS_DEBUG_UNDO") != NULL)
+ debug_flags |= GLABELS_DEBUG_UNDO;
+ if (g_getenv ("GLABELS_DEBUG_RECENT") != NULL)
+ debug_flags |= GLABELS_DEBUG_RECENT;
+ if (g_getenv ("GLABELS_DEBUG_COMMANDS") != NULL)
+ debug_flags |= GLABELS_DEBUG_COMMANDS;
+ if (g_getenv ("GLABELS_DEBUG_WINDOW") != NULL)
+ debug_flags |= GLABELS_DEBUG_WINDOW;
+ if (g_getenv ("GLABELS_DEBUG_UI") != NULL)
+ debug_flags |= GLABELS_DEBUG_UI;
+ if (g_getenv ("GLABELS_DEBUG_PROPERTY_BAR") != NULL)
+ debug_flags |= GLABELS_DEBUG_PROPERTY_BAR;
+ if (g_getenv ("GLABELS_DEBUG_MEDIA_SELECT") != NULL)
+ debug_flags |= GLABELS_DEBUG_MEDIA_SELECT;
+ if (g_getenv ("GLABELS_DEBUG_MINI_PREVIEW") != NULL)
+ debug_flags |= GLABELS_DEBUG_MINI_PREVIEW;
+ if (g_getenv ("GLABELS_DEBUG_PIXBUF_CACHE") != NULL)
+ debug_flags |= GLABELS_DEBUG_PIXBUF_CACHE;
+ if (g_getenv ("GLABELS_DEBUG_EDITOR") != NULL)
+ debug_flags |= GLABELS_DEBUG_EDITOR;
+ if (g_getenv ("GLABELS_DEBUG_WDGT") != NULL)
+ debug_flags |= GLABELS_DEBUG_WDGT;
+}
+
/****************************************************************************/
/* Print debugging information. */
/****************************************************************************/
void
-gl_debug (gint section,
- gchar *file,
- gint line,
- gchar *function,
- gchar *format,
+gl_debug (glDebugSection section,
+ const gchar *file,
+ gint line,
+ const gchar *function,
+ const gchar *format,
...)
{
- va_list args;
- gchar *msg;
+ if (debug_flags & section)
+ {
+ va_list args;
+ gchar *msg;
- g_return_if_fail (format != NULL);
+ g_return_if_fail (format != NULL);
- va_start (args, format);
- msg = g_strdup_vprintf (format, args);
- va_end (args);
+ va_start (args, format);
+ msg = g_strdup_vprintf (format, args);
+ va_end (args);
- if (gl_debug_all ||
- (gl_debug_view && section == GL_DEBUG_VIEW) ||
- (gl_debug_item && section == GL_DEBUG_ITEM) ||
- (gl_debug_print && section == GL_DEBUG_PRINT) ||
- (gl_debug_prefs && section == GL_DEBUG_PREFS) ||
- (gl_debug_file && section == GL_DEBUG_FILE) ||
- (gl_debug_label && section == GL_DEBUG_LABEL) ||
- (gl_debug_template && section == GL_DEBUG_TEMPLATE) ||
- (gl_debug_paper && section == GL_DEBUG_PAPER) ||
- (gl_debug_xml && section == GL_DEBUG_XML) ||
- (gl_debug_merge && section == GL_DEBUG_MERGE) ||
- (gl_debug_commands && section == GL_DEBUG_COMMANDS) ||
- (gl_debug_undo && section == GL_DEBUG_UNDO) ||
- (gl_debug_recent && section == GL_DEBUG_RECENT) ||
- (gl_debug_window && section == GL_DEBUG_WINDOW) ||
- (gl_debug_ui && section == GL_DEBUG_UI) ||
- (gl_debug_property_bar && section == GL_DEBUG_PROPERTY_BAR) ||
- (gl_debug_media_select && section == GL_DEBUG_MEDIA_SELECT) ||
- (gl_debug_mini_preview && section == GL_DEBUG_MINI_PREVIEW) ||
- (gl_debug_pixbuf_cache && section == GL_DEBUG_PIXBUF_CACHE) ||
- (gl_debug_editor && section == GL_DEBUG_EDITOR) ||
- (gl_debug_wdgt && section == GL_DEBUG_WDGT) )
g_print ("%s:%d (%s) %s\n", file, line, function, msg);
+
+ g_free (msg);
+ }
- g_free (msg);
}
#ifndef __DEBUG_H__
#define __DEBUG_H__
+#include <glib.h>
+
G_BEGIN_DECLS
+/*
+ * Set an environmental var of the same name to turn on
+ * debugging output. Setting GLABELS_DEBUG will turn on all
+ * sections.
+ */
+
typedef enum {
- GL_DEBUG_VIEW,
- GL_DEBUG_ITEM,
- GL_DEBUG_PRINT,
- GL_DEBUG_PREFS,
- GL_DEBUG_FILE,
- GL_DEBUG_LABEL,
- GL_DEBUG_TEMPLATE,
- GL_DEBUG_PAPER,
- GL_DEBUG_XML,
- GL_DEBUG_MERGE,
- GL_DEBUG_UNDO,
- GL_DEBUG_RECENT,
- GL_DEBUG_COMMANDS,
- GL_DEBUG_WINDOW,
- GL_DEBUG_UI,
- GL_DEBUG_PROPERTY_BAR,
- GL_DEBUG_MEDIA_SELECT,
- GL_DEBUG_MINI_PREVIEW,
- GL_DEBUG_PIXBUF_CACHE,
- GL_DEBUG_EDITOR,
- GL_DEBUG_WDGT,
+ GLABELS_DEBUG_NONE = 0,
+ GLABELS_DEBUG_VIEW = 1 << 0,
+ GLABELS_DEBUG_ITEM = 1 << 1,
+ GLABELS_DEBUG_PRINT = 1 << 2,
+ GLABELS_DEBUG_PREFS = 1 << 3,
+ GLABELS_DEBUG_FILE = 1 << 4,
+ GLABELS_DEBUG_LABEL = 1 << 5,
+ GLABELS_DEBUG_TEMPLATE = 1 << 6,
+ GLABELS_DEBUG_PAPER = 1 << 7,
+ GLABELS_DEBUG_XML = 1 << 8,
+ GLABELS_DEBUG_MERGE = 1 << 9,
+ GLABELS_DEBUG_UNDO = 1 << 10,
+ GLABELS_DEBUG_RECENT = 1 << 11,
+ GLABELS_DEBUG_COMMANDS = 1 << 12,
+ GLABELS_DEBUG_WINDOW = 1 << 13,
+ GLABELS_DEBUG_UI = 1 << 14,
+ GLABELS_DEBUG_PROPERTY_BAR = 1 << 15,
+ GLABELS_DEBUG_MEDIA_SELECT = 1 << 16,
+ GLABELS_DEBUG_MINI_PREVIEW = 1 << 17,
+ GLABELS_DEBUG_PIXBUF_CACHE = 1 << 18,
+ GLABELS_DEBUG_EDITOR = 1 << 19,
+ GLABELS_DEBUG_WDGT = 1 << 20,
} glDebugSection;
-extern gint gl_debug_all;
-extern gint gl_debug_view;
-extern gint gl_debug_item;
-extern gint gl_debug_print;
-extern gint gl_debug_prefs;
-extern gint gl_debug_file;
-extern gint gl_debug_label;
-extern gint gl_debug_template;
-extern gint gl_debug_paper;
-extern gint gl_debug_xml;
-extern gint gl_debug_merge;
-extern gint gl_debug_commands;
-extern gint gl_debug_undo;
-extern gint gl_debug_recent;
-extern gint gl_debug_window;
-extern gint gl_debug_ui;
-extern gint gl_debug_property_bar;
-extern gint gl_debug_media_select;
-extern gint gl_debug_mini_preview;
-extern gint gl_debug_pixbuf_cache;
-extern gint gl_debug_editor;
-extern gint gl_debug_wdgt;
#ifndef __GNUC__
#define __FUNCTION__ ""
#endif
-#define DEBUG_VIEW GL_DEBUG_VIEW, __FILE__, __LINE__, __FUNCTION__
-#define DEBUG_ITEM GL_DEBUG_ITEM, __FILE__, __LINE__, __FUNCTION__
-#define DEBUG_PRINT GL_DEBUG_PRINT, __FILE__, __LINE__, __FUNCTION__
-#define DEBUG_PREFS GL_DEBUG_PREFS, __FILE__, __LINE__, __FUNCTION__
-#define DEBUG_FILE GL_DEBUG_FILE, __FILE__, __LINE__, __FUNCTION__
-#define DEBUG_LABEL GL_DEBUG_LABEL, __FILE__, __LINE__, __FUNCTION__
-#define DEBUG_TEMPLATE GL_DEBUG_TEMPLATE,__FILE__, __LINE__, __FUNCTION__
-#define DEBUG_PAPER GL_DEBUG_PAPER, __FILE__, __LINE__, __FUNCTION__
-#define DEBUG_XML GL_DEBUG_XML, __FILE__, __LINE__, __FUNCTION__
-#define DEBUG_MERGE GL_DEBUG_MERGE, __FILE__, __LINE__, __FUNCTION__
-#define DEBUG_UNDO GL_DEBUG_UNDO, __FILE__, __LINE__, __FUNCTION__
-#define DEBUG_RECENT GL_DEBUG_RECENT, __FILE__, __LINE__, __FUNCTION__
-#define DEBUG_COMMANDS GL_DEBUG_COMMANDS,__FILE__, __LINE__, __FUNCTION__
-#define DEBUG_WINDOW GL_DEBUG_WINDOW, __FILE__, __LINE__, __FUNCTION__
-#define DEBUG_UI GL_DEBUG_UI, __FILE__, __LINE__, __FUNCTION__
-#define DEBUG_PROPERTY_BAR GL_DEBUG_PROPERTY_BAR, __FILE__, __LINE__, __FUNCTION__
-#define DEBUG_MEDIA_SELECT GL_DEBUG_MEDIA_SELECT, __FILE__, __LINE__, __FUNCTION__
-#define DEBUG_MINI_PREVIEW GL_DEBUG_MINI_PREVIEW, __FILE__, __LINE__, __FUNCTION__
-#define DEBUG_PIXBUF_CACHE GL_DEBUG_PIXBUF_CACHE, __FILE__, __LINE__, __FUNCTION__
-#define DEBUG_EDITOR GL_DEBUG_EDITOR, __FILE__, __LINE__, __FUNCTION__
-#define DEBUG_WDGT GL_DEBUG_WDGT, __FILE__, __LINE__, __FUNCTION__
+#define DEBUG_VIEW GLABELS_DEBUG_VIEW, __FILE__, __LINE__, __FUNCTION__
+#define DEBUG_ITEM GLABELS_DEBUG_ITEM, __FILE__, __LINE__, __FUNCTION__
+#define DEBUG_PRINT GLABELS_DEBUG_PRINT, __FILE__, __LINE__, __FUNCTION__
+#define DEBUG_PREFS GLABELS_DEBUG_PREFS, __FILE__, __LINE__, __FUNCTION__
+#define DEBUG_FILE GLABELS_DEBUG_FILE, __FILE__, __LINE__, __FUNCTION__
+#define DEBUG_LABEL GLABELS_DEBUG_LABEL, __FILE__, __LINE__, __FUNCTION__
+#define DEBUG_TEMPLATE GLABELS_DEBUG_TEMPLATE,__FILE__, __LINE__, __FUNCTION__
+#define DEBUG_PAPER GLABELS_DEBUG_PAPER, __FILE__, __LINE__, __FUNCTION__
+#define DEBUG_XML GLABELS_DEBUG_XML, __FILE__, __LINE__, __FUNCTION__
+#define DEBUG_MERGE GLABELS_DEBUG_MERGE, __FILE__, __LINE__, __FUNCTION__
+#define DEBUG_UNDO GLABELS_DEBUG_UNDO, __FILE__, __LINE__, __FUNCTION__
+#define DEBUG_RECENT GLABELS_DEBUG_RECENT, __FILE__, __LINE__, __FUNCTION__
+#define DEBUG_COMMANDS GLABELS_DEBUG_COMMANDS,__FILE__, __LINE__, __FUNCTION__
+#define DEBUG_WINDOW GLABELS_DEBUG_WINDOW, __FILE__, __LINE__, __FUNCTION__
+#define DEBUG_UI GLABELS_DEBUG_UI, __FILE__, __LINE__, __FUNCTION__
+#define DEBUG_PROPERTY_BAR GLABELS_DEBUG_PROPERTY_BAR, __FILE__, __LINE__, __FUNCTION__
+#define DEBUG_MEDIA_SELECT GLABELS_DEBUG_MEDIA_SELECT, __FILE__, __LINE__, __FUNCTION__
+#define DEBUG_MINI_PREVIEW GLABELS_DEBUG_MINI_PREVIEW, __FILE__, __LINE__, __FUNCTION__
+#define DEBUG_PIXBUF_CACHE GLABELS_DEBUG_PIXBUF_CACHE, __FILE__, __LINE__, __FUNCTION__
+#define DEBUG_EDITOR GLABELS_DEBUG_EDITOR, __FILE__, __LINE__, __FUNCTION__
+#define DEBUG_WDGT GLABELS_DEBUG_WDGT, __FILE__, __LINE__, __FUNCTION__
+
+void gl_debug_init (void);
-void gl_debug (gint section, gchar *file,
- gint line, gchar* function, gchar* format, ...);
+void gl_debug (glDebugSection section,
+ const gchar *file,
+ gint line,
+ const gchar *function,
+ const gchar *format,
+ ...);
G_END_DECLS
#include <libglabels/paper.h>
#include <libglabels/template.h>
#include "util.h"
+#include "debug.h"
/*============================================*/
/* Private globals */
static gchar *output = "output.ps";
static gint n_copies = 1;
static gint n_sheets = 1;
+static gint first = 1;
static gboolean outline_flag = FALSE;
static gboolean reverse_flag = FALSE;
static gboolean crop_marks_flag = FALSE;
N_("number of sheets (default=1)"), N_("sheets")},
{"copies", 'c', POPT_ARG_INT, &n_copies, 0,
N_("number of copies (default=1)"), N_("copies")},
+ {"first", 'f', POPT_ARG_INT, &first, 0,
+ N_("first label on first sheet (default=1)"), N_("first")},
{"outline", 'l', POPT_ARG_NONE, &outline_flag, 0,
N_("print outlines (to test printer alignment)"), NULL},
{"reverse", 'r', POPT_ARG_NONE, &reverse_flag, 0,
flags.crop_marks = crop_marks_flag;
/* initialize components */
+ gl_debug_init ();
gl_merge_init ();
gl_paper_init ();
gl_template_init ();
g_free( abs_fn );
}
- gl_print_batch (job, label, n_sheets, n_copies, &flags);
+ gl_print_batch (job, label, n_sheets, n_copies, first, &flags);
g_object_unref (label);
}
else {
/*========================================================*/
#define ICON_PIXMAP gnome_program_locate_file (NULL,\
GNOME_FILE_DOMAIN_APP_PIXMAP,\
- "glabels/glabels-icon.png",\
+ "glabels.png",\
FALSE, NULL)
/*========================================================*/
/* Private globals */
/*========================================================*/
-static const struct poptOption options [] =
-{
- { "debug-view", '\0', POPT_ARG_NONE, &gl_debug_view, 0,
- N_("Show view debugging messages."), NULL },
-
- { "debug-item", '\0', POPT_ARG_NONE, &gl_debug_item, 0,
- N_("Show item debugging messages."), NULL },
-
- { "debug-print", '\0', POPT_ARG_NONE, &gl_debug_print, 0,
- N_("Show printing debugging messages."), NULL },
-
- { "debug-prefs", '\0', POPT_ARG_NONE, &gl_debug_prefs, 0,
- N_("Show prefs debugging messages."), NULL },
-
- { "debug-file", '\0', POPT_ARG_NONE, &gl_debug_file, 0,
- N_("Show file debugging messages."), NULL },
-
- { "debug-label", '\0', POPT_ARG_NONE, &gl_debug_label, 0,
- N_("Show document debugging messages."), NULL },
-
- { "debug-template", '\0', POPT_ARG_NONE, &gl_debug_template, 0,
- N_("Show template debugging messages."), NULL },
-
- { "debug-paper", '\0', POPT_ARG_NONE, &gl_debug_paper, 0,
- N_("Show paper debugging messages."), NULL },
-
- { "debug-xml", '\0', POPT_ARG_NONE, &gl_debug_xml, 0,
- N_("Show xml debugging messages."), NULL },
-
- { "debug-merge", '\0', POPT_ARG_NONE, &gl_debug_merge, 0,
- N_("Show document merge debugging messages."), NULL },
-
- { "debug-commands", '\0', POPT_ARG_NONE, &gl_debug_commands, 0,
- N_("Show commands debugging messages."), NULL },
-
- { "debug-undo", '\0', POPT_ARG_NONE, &gl_debug_undo, 0,
- N_("Show undo debugging messages."), NULL },
-
- { "debug-recent", '\0', POPT_ARG_NONE, &gl_debug_recent, 0,
- N_("Show recent debugging messages."), NULL },
-
- { "debug-window", '\0', POPT_ARG_NONE, &gl_debug_window, 0,
- N_("Show window debugging messages."), NULL },
-
- { "debug-ui", '\0', POPT_ARG_NONE, &gl_debug_ui, 0,
- N_("Show ui debugging messages."), NULL },
-
- { "debug-property-bar", '\0', POPT_ARG_NONE, &gl_debug_property_bar, 0,
- N_("Show property_bar debugging messages."), NULL },
-
- { "debug-media-select", '\0', POPT_ARG_NONE, &gl_debug_media_select, 0,
- N_("Show media select widget debugging messages."), NULL },
-
- { "debug-mini-preview", '\0', POPT_ARG_NONE, &gl_debug_mini_preview, 0,
- N_("Show mini preview widget debugging messages."), NULL },
-
- { "debug-pixbuf-cache", '\0', POPT_ARG_NONE, &gl_debug_pixbuf_cache, 0,
- N_("Show pixbuf cache debugging messages."), NULL },
-
- { "debug-editor", '\0', POPT_ARG_NONE, &gl_debug_editor, 0,
- N_("Show widget debugging messages."), NULL },
-
- { "debug-wdgt", '\0', POPT_ARG_NONE, &gl_debug_wdgt, 0,
- N_("Show object editor debugging messages."), NULL },
-
- { "debug", '\0', POPT_ARG_NONE, &gl_debug_all, 0,
- N_("Turn on all debugging messages."), NULL },
-
- {NULL, '\0', 0, NULL, 0}
-};
/*========================================================*/
/* Local function prototypes */
program = gnome_program_init ("glabels", VERSION,
LIBGNOMEUI_MODULE, argc, argv,
GNOME_PROGRAM_STANDARD_PROPERTIES,
- GNOME_PARAM_POPT_TABLE, options,
NULL);
/* Splash screen */
gl_splash ();
- gl_stock_init();
-
/* Set default icon */
if (!g_file_test (ICON_PIXMAP, G_FILE_TEST_EXISTS))
{
}
/* Initialize subsystems */
+ gl_debug_init ();
+ gl_stock_init ();
gl_paper_init ();
gl_prefs_init ();
gl_template_init ();
struct _glLabelBarcodePrivate {
glTextNode *text_node;
gchar *id;
- guint color;
+ glColorNode *color_node;
gboolean text_flag;
gboolean checksum_flag;
guint format_digits;
gdouble *h);
static void set_line_color (glLabelObject *object,
- guint line_color);
+ glColorNode *line_color);
-static guint get_line_color (glLabelObject *object);
+static glColorNode *get_line_color (glLabelObject *object);
\f
gl_label_barcode_instance_init (glLabelBarcode *lbc)
{
lbc->private = g_new0 (glLabelBarcodePrivate, 1);
+ lbc->private->color_node = gl_color_node_new_default ();
}
static void
lbc = GL_LABEL_BARCODE (object);
+ gl_color_node_free (&(lbc->private->color_node));
gl_text_node_free (&lbc->private->text_node);
g_free (lbc->private);
gchar *id;
gboolean text_flag;
gboolean checksum_flag;
- guint color;
+ glColorNode *color_node;
guint format_digits;
gl_debug (DEBUG_LABEL, "START");
text_node = gl_label_barcode_get_data (lbc);
gl_label_barcode_get_props (lbc, &id, &text_flag, &checksum_flag, &format_digits);
- color = get_line_color (src_object);
+ color_node = get_line_color (src_object);
gl_label_barcode_set_data (new_lbc, text_node);
gl_label_barcode_set_props (new_lbc, id, text_flag, checksum_flag, format_digits);
- set_line_color (dst_object, color);
+ set_line_color (dst_object, color_node);
+ gl_color_node_free (&color_node);
gl_text_node_free (&text_node);
g_free (id);
/*---------------------------------------------------------------------------*/
static void
set_line_color (glLabelObject *object,
- guint line_color)
+ glColorNode *line_color_node)
{
glLabelBarcode *lbarcode = (glLabelBarcode *)object;
g_return_if_fail (lbarcode && GL_IS_LABEL_BARCODE (lbarcode));
- if ( lbarcode->private->color != line_color ) {
- lbarcode->private->color = line_color;
+ if ( !gl_color_node_equal(lbarcode->private->color_node, line_color_node) ) {
+
+ gl_color_node_free (&(lbarcode->private->color_node));
+ lbarcode->private->color_node = gl_color_node_dup (line_color_node);
gl_label_object_emit_changed (GL_LABEL_OBJECT(lbarcode));
}
}
/*---------------------------------------------------------------------------*/
/* PRIVATE. Get line color method. */
/*---------------------------------------------------------------------------*/
-static guint
+static glColorNode*
get_line_color (glLabelObject *object)
{
glLabelBarcode *lbarcode = (glLabelBarcode *)object;
g_return_if_fail (lbarcode && GL_IS_LABEL_BARCODE (lbarcode));
- return lbarcode->private->color;
+ return gl_color_node_dup (lbarcode->private->color_node);
}
-
struct _glLabelBoxPrivate {
gdouble line_width;
- guint line_color;
- guint fill_color;
+ glColorNode *line_color_node;
+ glColorNode *fill_color_node;
};
/*========================================================*/
static void copy (glLabelObject *dst_object,
glLabelObject *src_object);
-static void set_fill_color (glLabelObject *object,
- guint fill_color);
+static void set_fill_color (glLabelObject *object,
+ glColorNode *fill_color_node);
-static void set_line_color (glLabelObject *object,
- guint line_color);
+static void set_line_color (glLabelObject *object,
+ glColorNode *line_color_node);
-static void set_line_width (glLabelObject *object,
- gdouble line_width);
+static void set_line_width (glLabelObject *object,
+ gdouble line_width);
-static guint get_fill_color (glLabelObject *object);
+static glColorNode* get_fill_color (glLabelObject *object);
-static guint get_line_color (glLabelObject *object);
+static glColorNode* get_line_color (glLabelObject *object);
-static gdouble get_line_width (glLabelObject *object);
+static gdouble get_line_width (glLabelObject *object);
\f
gl_label_box_instance_init (glLabelBox *lbox)
{
lbox->private = g_new0 (glLabelBoxPrivate, 1);
+ lbox->private->line_color_node = gl_color_node_new_default ();
+ lbox->private->fill_color_node = gl_color_node_new_default ();
}
static void
lbox = GL_LABEL_BOX (object);
+ gl_color_node_free (&(lbox->private->fill_color_node));
+ gl_color_node_free (&(lbox->private->line_color_node));
g_free (lbox->private);
G_OBJECT_CLASS (parent_class)->finalize (object);
copy (glLabelObject *dst_object,
glLabelObject *src_object)
{
- glLabelBox *lbox = (glLabelBox *)src_object;
- glLabelBox *new_lbox = (glLabelBox *)dst_object;
- gdouble line_width;
- guint line_color, fill_color;
+ glLabelBox *lbox = (glLabelBox *)src_object;
+ glLabelBox *new_lbox = (glLabelBox *)dst_object;
+ gdouble line_width;
+ glColorNode *line_color_node;
+ glColorNode *fill_color_node;
gl_debug (DEBUG_LABEL, "START");
g_return_if_fail (new_lbox && GL_IS_LABEL_BOX (new_lbox));
line_width = get_line_width (src_object);
- line_color = get_line_color (src_object);
- fill_color = get_fill_color (src_object);
+ line_color_node = get_line_color (src_object);
+ fill_color_node = get_fill_color (src_object);
set_line_width (dst_object, line_width);
- set_line_color (dst_object, line_color);
- set_fill_color (dst_object, fill_color);
+ set_line_color (dst_object, line_color_node);
+ set_fill_color (dst_object, fill_color_node);
+
+ gl_color_node_free (&line_color_node);
+ gl_color_node_free (&fill_color_node);
gl_debug (DEBUG_LABEL, "END");
}
/*---------------------------------------------------------------------------*/
static void
set_fill_color (glLabelObject *object,
- guint fill_color)
+ glColorNode *fill_color_node)
{
glLabelBox *lbox = (glLabelBox *)object;
+
+ gl_debug (DEBUG_LABEL, "START");
g_return_if_fail (lbox && GL_IS_LABEL_BOX (lbox));
- if ( lbox->private->fill_color != fill_color ) {
- lbox->private->fill_color = fill_color;
+ if (!gl_color_node_equal (lbox->private->fill_color_node, fill_color_node)) {
+
+ gl_color_node_free (&(lbox->private->fill_color_node));
+ lbox->private->fill_color_node = gl_color_node_dup (fill_color_node);
+
gl_label_object_emit_changed (GL_LABEL_OBJECT(lbox));
}
+ gl_debug (DEBUG_LABEL, "END");
}
/*---------------------------------------------------------------------------*/
/*---------------------------------------------------------------------------*/
static void
set_line_color (glLabelObject *object,
- guint line_color)
+ glColorNode *line_color_node)
{
glLabelBox *lbox = (glLabelBox *)object;
g_return_if_fail (lbox && GL_IS_LABEL_BOX (lbox));
- if ( lbox->private->line_color != line_color ) {
- lbox->private->line_color = line_color;
+ if ( !gl_color_node_equal (lbox->private->line_color_node, line_color_node )) {
+ gl_color_node_free (&(lbox->private->line_color_node));
+ lbox->private->line_color_node = gl_color_node_dup (line_color_node);
gl_label_object_emit_changed (GL_LABEL_OBJECT(lbox));
}
}
/*---------------------------------------------------------------------------*/
/* PRIVATE. Get line color method. */
/*---------------------------------------------------------------------------*/
-static guint
+static glColorNode*
get_line_color (glLabelObject *object)
{
glLabelBox *lbox = (glLabelBox *)object;
g_return_val_if_fail (lbox && GL_IS_LABEL_BOX (lbox), 0);
- return lbox->private->line_color;
+ return gl_color_node_dup (lbox->private->line_color_node);
}
/*---------------------------------------------------------------------------*/
/* PRIVATE. Get line width method. */
/*---------------------------------------------------------------------------*/
-static guint
+static glColorNode*
get_fill_color (glLabelObject *object)
{
glLabelBox *lbox = (glLabelBox *)object;
g_return_val_if_fail (lbox && GL_IS_LABEL_BOX (lbox), 0);
- return lbox->private->fill_color;
+ return gl_color_node_dup (lbox->private->fill_color_node);
}
-
struct _glLabelEllipsePrivate {
gdouble line_width;
- guint line_color;
- guint fill_color;
+ glColorNode *line_color_node;
+ glColorNode *fill_color_node;
};
/*========================================================*/
glLabelObject *src_object);
static void set_fill_color (glLabelObject *object,
- guint fill_color);
+ glColorNode *fill_color_node);
static void set_line_color (glLabelObject *object,
- guint line_color);
+ glColorNode *line_color_node);
static void set_line_width (glLabelObject *object,
gdouble line_width);
-static guint get_fill_color (glLabelObject *object);
+static glColorNode* get_fill_color (glLabelObject *object);
-static guint get_line_color (glLabelObject *object);
+static glColorNode* get_line_color (glLabelObject *object);
static gdouble get_line_width (glLabelObject *object);
gl_label_ellipse_instance_init (glLabelEllipse *lellipse)
{
lellipse->private = g_new0 (glLabelEllipsePrivate, 1);
+ lellipse->private->fill_color_node = gl_color_node_new_default ();
+ lellipse->private->fill_color_node = gl_color_node_new_default ();
}
static void
lellipse = GL_LABEL_ELLIPSE (object);
+ gl_color_node_free (&(lellipse->private->line_color_node));
+ gl_color_node_free (&(lellipse->private->fill_color_node));
g_free (lellipse->private);
G_OBJECT_CLASS (parent_class)->finalize (object);
glLabelEllipse *lellipse = (glLabelEllipse *)src_object;
glLabelEllipse *new_lellipse = (glLabelEllipse *)dst_object;
gdouble line_width;
- guint line_color, fill_color;
+ glColorNode *line_color_node;
+ glColorNode *fill_color_node;
gl_debug (DEBUG_LABEL, "START");
g_return_if_fail (new_lellipse && GL_IS_LABEL_ELLIPSE (new_lellipse));
line_width = get_line_width (src_object);
- line_color = get_line_color (src_object);
- fill_color = get_fill_color (src_object);
+ line_color_node = get_line_color (src_object);
+ fill_color_node = get_fill_color (src_object);
set_line_width (dst_object, line_width);
- set_line_color (dst_object, line_color);
- set_fill_color (dst_object, fill_color);
+ set_line_color (dst_object, line_color_node);
+ set_fill_color (dst_object, fill_color_node);
+ gl_color_node_free (&line_color_node);
+ gl_color_node_free (&fill_color_node);
+
gl_debug (DEBUG_LABEL, "END");
}
/*---------------------------------------------------------------------------*/
static void
set_fill_color (glLabelObject *object,
- guint fill_color)
+ glColorNode *fill_color_node)
{
glLabelEllipse *lellipse = (glLabelEllipse *)object;
g_return_if_fail (lellipse && GL_IS_LABEL_ELLIPSE (lellipse));
- if ( lellipse->private->fill_color != fill_color ) {
- lellipse->private->fill_color = fill_color;
+ if (!gl_color_node_equal (lellipse->private->fill_color_node, fill_color_node)) {
+
+ gl_color_node_free (&(lellipse->private->fill_color_node));
+ lellipse->private->fill_color_node = gl_color_node_dup (fill_color_node);
+
gl_label_object_emit_changed (GL_LABEL_OBJECT(lellipse));
- }
+ }
}
/*---------------------------------------------------------------------------*/
/*---------------------------------------------------------------------------*/
static void
set_line_color (glLabelObject *object,
- guint line_color)
+ glColorNode *line_color_node)
{
glLabelEllipse *lellipse = (glLabelEllipse *)object;
g_return_if_fail (lellipse && GL_IS_LABEL_ELLIPSE (lellipse));
- if ( lellipse->private->line_color != line_color ) {
- lellipse->private->line_color = line_color;
+ if ( !gl_color_node_equal (lellipse->private->line_color_node, line_color_node) ) {
+
+ gl_color_node_free (&(lellipse->private->line_color_node));
+ lellipse->private->line_color_node = gl_color_node_dup (line_color_node);
+
gl_label_object_emit_changed (GL_LABEL_OBJECT(lellipse));
}
}
/*---------------------------------------------------------------------------*/
/* PRIVATE. Get line color method. */
/*---------------------------------------------------------------------------*/
-static guint
+static glColorNode*
get_line_color (glLabelObject *object)
{
glLabelEllipse *lellipse = (glLabelEllipse *)object;
g_return_val_if_fail (lellipse && GL_IS_LABEL_ELLIPSE (lellipse), 0);
- return lellipse->private->line_color;
+ return gl_color_node_dup (lellipse->private->line_color_node);
}
/*---------------------------------------------------------------------------*/
/* PRIVATE. Get line width method. */
/*---------------------------------------------------------------------------*/
-static guint
+static glColorNode*
get_fill_color (glLabelObject *object)
{
glLabelEllipse *lellipse = (glLabelEllipse *)object;
g_return_val_if_fail (lellipse && GL_IS_LABEL_ELLIPSE (lellipse), 0);
- return lellipse->private->fill_color;
+ return gl_color_node_dup (lellipse->private->fill_color_node);
}
-
-
struct _glLabelLinePrivate {
gdouble line_width;
- guint line_color;
+ glColorNode *line_color_node;
};
/*========================================================*/
glLabelObject *src_object);
static void set_line_color (glLabelObject *object,
- guint line_color);
+ glColorNode *line_color_node);
static void set_line_width (glLabelObject *object,
gdouble line_width);
-static guint get_line_color (glLabelObject *object);
+static glColorNode *get_line_color (glLabelObject *object);
static gdouble get_line_width (glLabelObject *object);
gl_label_line_instance_init (glLabelLine *lline)
{
lline->private = g_new0 (glLabelLinePrivate, 1);
+ lline->private->line_color_node = gl_color_node_new_default ();
}
static void
lline = GL_LABEL_LINE (object);
+ gl_color_node_free (&(lline->private->line_color_node));
g_free (lline->private);
G_OBJECT_CLASS (parent_class)->finalize (object);
glLabelLine *lline = (glLabelLine *)src_object;
glLabelLine *new_lline = (glLabelLine *)dst_object;
gdouble line_width;
- guint line_color;
+ glColorNode *line_color_node;
gl_debug (DEBUG_LABEL, "START");
g_return_if_fail (new_lline && GL_IS_LABEL_LINE (new_lline));
line_width = get_line_width (src_object);
- line_color = get_line_color (src_object);
+ line_color_node = get_line_color (src_object);
set_line_width (dst_object, line_width);
- set_line_color (dst_object, line_color);
+ set_line_color (dst_object, line_color_node);
+ gl_color_node_free (&line_color_node);
+
gl_debug (DEBUG_LABEL, "END");
}
/*---------------------------------------------------------------------------*/
static void
set_line_color (glLabelObject *object,
- guint line_color)
+ glColorNode *line_color_node)
{
glLabelLine *lline = (glLabelLine *)object;
g_return_if_fail (lline && GL_IS_LABEL_LINE (lline));
- if ( lline->private->line_color != line_color ) {
- lline->private->line_color = line_color;
+ if ( !gl_color_node_equal (lline->private->line_color_node, line_color_node)) {
+
+ gl_color_node_free (&(lline->private->line_color_node ));
+ lline->private->line_color_node = gl_color_node_dup (line_color_node);
+
gl_label_object_emit_changed (GL_LABEL_OBJECT(lline));
}
}
/*---------------------------------------------------------------------------*/
/* PRIVATE. Get line width method. */
/*---------------------------------------------------------------------------*/
-static guint
+static glColorNode*
get_line_color (glLabelObject *object)
{
glLabelLine *lline = (glLabelLine *)object;
g_return_val_if_fail (lline && GL_IS_LABEL_LINE (lline), 0);
- return lline->private->line_color;
+ return gl_color_node_dup (lline->private->line_color_node);
}
-
/****************************************************************************/
void
gl_label_object_set_text_color (glLabelObject *object,
- guint text_color)
+ glColorNode *text_color_node)
{
gl_debug (DEBUG_LABEL, "START");
if ( GL_LABEL_OBJECT_GET_CLASS(object)->set_text_color != NULL ) {
/* We have an object specific method, use it */
- GL_LABEL_OBJECT_GET_CLASS(object)->set_text_color (object, text_color);
+ GL_LABEL_OBJECT_GET_CLASS(object)->set_text_color (object, text_color_node);
}
/****************************************************************************/
/* Get text color for all text contained in object. */
/****************************************************************************/
-guint
+glColorNode*
gl_label_object_get_text_color (glLabelObject *object)
{
- guint ret = 0;
+ glColorNode *ret = NULL;
gl_debug (DEBUG_LABEL, "START");
/****************************************************************************/
void
gl_label_object_set_fill_color (glLabelObject *object,
- guint fill_color)
+ glColorNode *fill_color_node)
{
gl_debug (DEBUG_LABEL, "START");
if ( GL_LABEL_OBJECT_GET_CLASS(object)->set_fill_color != NULL ) {
/* We have an object specific method, use it */
- GL_LABEL_OBJECT_GET_CLASS(object)->set_fill_color (object, fill_color);
+ GL_LABEL_OBJECT_GET_CLASS(object)->set_fill_color (object, fill_color_node);
}
/****************************************************************************/
/* Get fill color for object. */
/****************************************************************************/
-guint
+glColorNode*
gl_label_object_get_fill_color (glLabelObject *object)
{
- guint ret = 0;
+ glColorNode *ret = NULL;
gl_debug (DEBUG_LABEL, "START");
/****************************************************************************/
void
gl_label_object_set_line_color (glLabelObject *object,
- guint line_color)
+ glColorNode *line_color_node)
{
gl_debug (DEBUG_LABEL, "START");
if ( GL_LABEL_OBJECT_GET_CLASS(object)->set_line_color != NULL ) {
/* We have an object specific method, use it */
- GL_LABEL_OBJECT_GET_CLASS(object)->set_line_color (object, line_color);
+ GL_LABEL_OBJECT_GET_CLASS(object)->set_line_color (object, line_color_node);
}
/****************************************************************************/
/* Get line color for object. */
/****************************************************************************/
-guint
+glColorNode*
gl_label_object_get_line_color (glLabelObject *object)
{
- guint ret = 0;
+ glColorNode *ret = NULL;
gl_debug (DEBUG_LABEL, "START");
{
gl_label_object_emit_changed (object);
}
-
typedef struct _glLabelObjectPrivate glLabelObjectPrivate;
#include "label.h"
+#include "color.h"
struct _glLabelObject {
GObject object;
gdouble text_line_spacing);
void (*set_text_color) (glLabelObject *object,
- guint text_color);
+ glColorNode *text_color_node);
void (*set_fill_color) (glLabelObject *object,
- guint fill_color);
+ glColorNode *fill_color_node);
void (*set_line_color) (glLabelObject *object,
- guint line_color);
+ glColorNode *line_color_node);
void (*set_line_width) (glLabelObject *object,
gdouble line_width);
gdouble (*get_text_line_spacing) (glLabelObject *object);
- guint (*get_text_color) (glLabelObject *object);
+ glColorNode* (*get_text_color) (glLabelObject *object);
- guint (*get_fill_color) (glLabelObject *object);
+ glColorNode* (*get_fill_color) (glLabelObject *object);
- guint (*get_line_color) (glLabelObject *object);
+ glColorNode* (*get_line_color) (glLabelObject *object);
gdouble (*get_line_width) (glLabelObject *object);
GtkJustification text_alignment);
void gl_label_object_set_text_color (glLabelObject *object,
- guint text_color);
+ glColorNode *text_color_node);
void gl_label_object_set_text_line_spacing (glLabelObject *object,
gdouble text_line_spacing);
gdouble gl_label_object_get_text_line_spacing (glLabelObject *object);
-guint gl_label_object_get_text_color (glLabelObject *object);
+glColorNode *gl_label_object_get_text_color (glLabelObject *object);
gboolean gl_label_object_can_fill (glLabelObject *object);
void gl_label_object_set_fill_color (glLabelObject *object,
- guint fill_color);
+ glColorNode *fill_color_node);
-guint gl_label_object_get_fill_color (glLabelObject *object);
+glColorNode* gl_label_object_get_fill_color (glLabelObject *object);
gboolean gl_label_object_can_line_color (glLabelObject *object);
void gl_label_object_set_line_color (glLabelObject *object,
- guint line_color);
+ glColorNode *line_color_node);
-guint gl_label_object_get_line_color (glLabelObject *object);
+glColorNode *gl_label_object_get_line_color (glLabelObject *object);
gboolean gl_label_object_can_line_width (glLabelObject *object);
GnomeFontWeight font_weight;
gboolean font_italic_flag;
GtkJustification just;
- guint color;
+ glColorNode *color_node;
gdouble line_spacing;
gboolean auto_shrink;
};
gdouble text_line_spacing);
static void set_text_color (glLabelObject *object,
- guint text_color);
+ glColorNode *text_color_node);
static gchar *get_font_family (glLabelObject *object);
static GnomeFontWeight get_font_weight (glLabelObject *object);
-static gboolean get_font_italic_flag (glLabelObject *object);
+static gboolean get_font_italic_flag (glLabelObject *object);
-static GtkJustification get_text_alignment (glLabelObject *object);
+static GtkJustification get_text_alignment (glLabelObject *object);
-static gdouble get_text_line_spacing (glLabelObject *object);
+static gdouble get_text_line_spacing (glLabelObject *object);
-static guint get_text_color (glLabelObject *object);
+static glColorNode* get_text_color (glLabelObject *object);
\f
/*****************************************************************************/
{
ltext->private = g_new0 (glLabelTextPrivate, 1);
- ltext->private->tag_table = gtk_text_tag_table_new ();
- ltext->private->buffer = gtk_text_buffer_new (ltext->private->tag_table);
+ ltext->private->tag_table = gtk_text_tag_table_new ();
+ ltext->private->buffer = gtk_text_buffer_new (ltext->private->tag_table);
- ltext->private->font_family = g_strdup(DEFAULT_FONT_FAMILY);
- ltext->private->font_size = DEFAULT_FONT_SIZE;
- ltext->private->font_weight = DEFAULT_FONT_WEIGHT;
- ltext->private->font_italic_flag = DEFAULT_FONT_ITALIC_FLAG;
- ltext->private->just = DEFAULT_JUST;
- ltext->private->color = DEFAULT_COLOR;
- ltext->private->line_spacing = DEFAULT_TEXT_LINE_SPACING;
- ltext->private->auto_shrink = DEFAULT_AUTO_SHRINK;
+ ltext->private->font_family = g_strdup(DEFAULT_FONT_FAMILY);
+ ltext->private->font_size = DEFAULT_FONT_SIZE;
+ ltext->private->font_weight = DEFAULT_FONT_WEIGHT;
+ ltext->private->font_italic_flag = DEFAULT_FONT_ITALIC_FLAG;
+ ltext->private->just = DEFAULT_JUST;
+ ltext->private->color_node = gl_color_node_new_default ();
+ ltext->private->color_node->color = DEFAULT_COLOR;
+ ltext->private->line_spacing = DEFAULT_TEXT_LINE_SPACING;
+ ltext->private->auto_shrink = DEFAULT_AUTO_SHRINK;
g_signal_connect (G_OBJECT(ltext->private->buffer), "changed",
G_CALLBACK(buffer_changed_cb), ltext);
ltext = GL_LABEL_TEXT (object);
+ gl_color_node_free (&(ltext->private->color_node));
g_object_unref (ltext->private->tag_table);
g_object_unref (ltext->private->buffer);
g_free (ltext->private);
glLabelText *ltext = (glLabelText *)src_object;
glLabelText *new_ltext = (glLabelText *)dst_object;
GList *lines;
+ glColorNode *text_color_node;
gl_debug (DEBUG_LABEL, "START");
g_return_if_fail (new_ltext && GL_IS_LABEL_TEXT (new_ltext));
lines = gl_label_text_get_lines (ltext);
+ text_color_node = get_text_color (src_object);
gl_label_text_set_lines (new_ltext, lines);
new_ltext->private->font_family = g_strdup (ltext->private->font_family);
new_ltext->private->font_size = ltext->private->font_size;
new_ltext->private->font_weight = ltext->private->font_weight;
new_ltext->private->font_italic_flag = ltext->private->font_italic_flag;
- new_ltext->private->color = ltext->private->color;
+ set_text_color (dst_object, text_color_node);
new_ltext->private->just = ltext->private->just;
new_ltext->private->line_spacing = ltext->private->line_spacing;
new_ltext->private->auto_shrink = ltext->private->auto_shrink;
+ gl_color_node_free (&text_color_node);
gl_text_node_lines_free (&lines);
gl_debug (DEBUG_LABEL, "END");
/*---------------------------------------------------------------------------*/
static void
set_text_color (glLabelObject *object,
- guint text_color)
+ glColorNode *text_color_node)
{
glLabelText *ltext = (glLabelText *)object;
g_return_if_fail (ltext && GL_IS_LABEL_TEXT (ltext));
- if (ltext->private->color != text_color) {
+ if (!gl_color_node_equal (ltext->private->color_node, text_color_node)) {
- ltext->private->color = text_color;
+ gl_color_node_free (&(ltext->private->color_node));
+ ltext->private->color_node = gl_color_node_dup (text_color_node);
+
gl_label_object_emit_changed (GL_LABEL_OBJECT(ltext));
}
/*---------------------------------------------------------------------------*/
/* PRIVATE. get text color method. */
/*---------------------------------------------------------------------------*/
-static guint
+static glColorNode*
get_text_color (glLabelObject *object)
{
glLabelText *ltext = (glLabelText *)object;
g_return_val_if_fail (ltext && GL_IS_LABEL_TEXT (ltext), 0);
- return ltext->private->color;
+ return gl_color_node_dup (ltext->private->color_node);
}
/*****************************************************************************/
return ltext->private->auto_shrink;
}
-
/* Local function prototypes */
/*===========================================*/
-static void style_changed_cb (glObjectEditor *editor);
+static void style_changed_cb (glObjectEditor *editor);
+static void bc_radio_toggled_cb (glObjectEditor *editor);
/*--------------------------------------------------------------------------*/
glade_xml_get_widget (editor->priv->gui, "bc_cs_check");
editor->priv->bc_color_combo =
glade_xml_get_widget (editor->priv->gui, "bc_color_combo");
+ editor->priv->bc_key_combo =
+ glade_xml_get_widget (editor->priv->gui, "bc_key_combo");
+ editor->priv->bc_key_entry =
+ glade_xml_get_widget (editor->priv->gui, "bc_key_entry");
+ editor->priv->bc_key_radio =
+ glade_xml_get_widget (editor->priv->gui, "bc_key_radio");
+ editor->priv->bc_color_radio =
+ glade_xml_get_widget (editor->priv->gui, "bc_color_radio");
editor->priv->data_format_label =
glade_xml_get_widget (editor->priv->gui, "data_format_label");
editor->priv->data_ex_label =
gtk_combo_set_popdown_strings (GTK_COMBO(editor->priv->bc_style_combo), styles);
gl_barcode_free_styles_list (styles);
+ /* Modify widgets */
+ gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (editor->priv->bc_color_radio), TRUE);
+ gtk_widget_set_sensitive (editor->priv->bc_color_combo, TRUE);
+ gtk_widget_set_sensitive (editor->priv->bc_key_combo, FALSE);
+
/* Un-hide */
gtk_widget_show_all (editor->priv->bc_page_vbox);
"color_changed",
G_CALLBACK (gl_object_editor_changed_cb),
G_OBJECT (editor));
+ g_signal_connect_swapped (G_OBJECT (editor->priv->bc_key_entry),
+ "changed",
+ G_CALLBACK (gl_object_editor_changed_cb),
+ G_OBJECT (editor));
+ g_signal_connect_swapped (G_OBJECT (editor->priv->bc_color_radio),
+ "toggled",
+ G_CALLBACK (bc_radio_toggled_cb),
+ G_OBJECT (editor));
+ g_signal_connect_swapped (G_OBJECT (editor->priv->bc_key_radio),
+ "toggled",
+ G_CALLBACK (bc_radio_toggled_cb),
+ G_OBJECT (editor));
g_signal_connect_swapped (G_OBJECT (editor->priv->data_digits_spin),
"changed",
G_CALLBACK (gl_object_editor_changed_cb),
/*****************************************************************************/
void
gl_object_editor_set_bc_color (glObjectEditor *editor,
- guint bc_color)
+ gboolean merge_flag,
+ glColorNode *color_node)
{
GdkColor *gdk_color;
+ gint pos;
gl_debug (DEBUG_EDITOR, "START");
g_signal_handlers_block_by_func (G_OBJECT(editor->priv->bc_color_combo),
gl_object_editor_changed_cb,
editor);
+ g_signal_handlers_block_by_func (G_OBJECT(editor->priv->bc_key_entry),
+ gl_object_editor_changed_cb,
+ editor);
- gdk_color = gl_color_to_gdk_color (bc_color);
- color_combo_set_color (COLOR_COMBO(editor->priv->bc_color_combo), gdk_color);
- g_free (gdk_color);
+ gtk_widget_set_sensitive (editor->priv->bc_key_radio, merge_flag);
+ if ( color_node->color == GL_COLOR_NONE ) {
+
+ color_combo_set_color_to_default (COLOR_COMBO(editor->priv->bc_color_combo));
+
+ } else {
+
+ gdk_color = gl_color_to_gdk_color (color_node->color);
+ color_combo_set_color (COLOR_COMBO(editor->priv->bc_color_combo),
+ gdk_color);
+ g_free (gdk_color);
+ }
+
+ if (!color_node->field_flag) {
+ gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON
+ (editor->priv->bc_color_radio), TRUE);
+ gtk_widget_set_sensitive (editor->priv->bc_color_combo, TRUE);
+ gtk_widget_set_sensitive (editor->priv->bc_key_combo, FALSE);
+
+ } else {
+ gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON
+ (editor->priv->bc_key_radio), TRUE);
+ gtk_widget_set_sensitive (editor->priv->bc_color_combo, FALSE);
+ gtk_widget_set_sensitive (editor->priv->bc_key_combo, TRUE);
+
+ gtk_editable_delete_text (GTK_EDITABLE (editor->priv->bc_key_entry), 0, -1);
+ pos = 0;
+ if (color_node->key != NULL ) {
+ gtk_editable_insert_text (GTK_EDITABLE (editor->priv->bc_key_entry),
+ color_node->key,
+ strlen (color_node->key),
+ &pos);
+ }
+ }
+
g_signal_handlers_unblock_by_func (G_OBJECT(editor->priv->bc_color_combo),
gl_object_editor_changed_cb,
editor);
-
+ g_signal_handlers_unblock_by_func (G_OBJECT(editor->priv->bc_key_entry),
+ gl_object_editor_changed_cb,
+ editor);
+
gl_debug (DEBUG_EDITOR, "END");
}
/*****************************************************************************/
/* Query bc color. */
/*****************************************************************************/
-guint
+glColorNode*
gl_object_editor_get_bc_color (glObjectEditor *editor)
{
- GdkColor *gdk_color;
- guint color;
- gboolean is_default;
+ GdkColor *gdk_color;
+ glColorNode *color_node;
+ gboolean is_default;
gl_debug (DEBUG_EDITOR, "START");
- gdk_color = color_combo_get_color (COLOR_COMBO(editor->priv->bc_color_combo),
+ color_node = gl_color_node_new_default ();
+
+ if (gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (editor->priv->bc_key_radio))) {
+ color_node->field_flag = TRUE;
+ color_node->color = gl_prefs->default_line_color;
+ color_node->key =
+ gtk_editable_get_chars (GTK_EDITABLE (editor->priv->bc_key_entry), 0, -1);
+ } else {
+ color_node->field_flag = FALSE;
+ color_node->key = NULL;
+ gdk_color = color_combo_get_color (COLOR_COMBO(editor->priv->bc_color_combo),
&is_default);
-
- if (is_default) {
- color = gl_prefs->default_line_color;
- } else {
- color = gl_color_from_gdk_color (gdk_color);
- }
-
+ if (is_default) {
+ color_node->color = gl_prefs->default_line_color;
+ } else {
+ color_node->color = gl_color_from_gdk_color (gdk_color);
+ }
+ }
+
gl_debug (DEBUG_EDITOR, "END");
- return color;
+ return color_node;
}
-
+/*--------------------------------------------------------------------------*/
+/* PRIVATE. barcode color radio callback. */
+/*--------------------------------------------------------------------------*/
+static void
+bc_radio_toggled_cb (glObjectEditor *editor)
+{
+ gl_debug (DEBUG_EDITOR, "START");
+
+ if (gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (editor->priv->bc_color_radio))) {
+ gtk_widget_set_sensitive (editor->priv->bc_color_combo, TRUE);
+ gtk_widget_set_sensitive (editor->priv->bc_key_combo, FALSE);
+ } else {
+ gtk_widget_set_sensitive (editor->priv->bc_color_combo, FALSE);
+ gtk_widget_set_sensitive (editor->priv->bc_key_combo, TRUE);
+
+ }
+
+ /* Emit our "changed" signal */
+ g_signal_emit (G_OBJECT (editor), gl_object_editor_signals[CHANGED], 0);
+
+ gl_debug (DEBUG_EDITOR, "END");
+}
/* Local function prototypes */
/*===========================================*/
+static void fill_radio_toggled_cb (glObjectEditor *editor);
+
\f
/*--------------------------------------------------------------------------*/
/* PRIVATE. Prepare fill page. */
"fill_page_vbox");
editor->priv->fill_color_combo = glade_xml_get_widget (editor->priv->gui,
"fill_color_combo");
-
+ editor->priv->fill_key_combo = glade_xml_get_widget (editor->priv->gui,
+ "fill_key_combo");
+ editor->priv->fill_key_entry = glade_xml_get_widget (editor->priv->gui,
+ "fill_key_entry");
+ editor->priv->fill_key_radio = glade_xml_get_widget (editor->priv->gui,
+ "fill_key_radio");
+ editor->priv->fill_color_radio = glade_xml_get_widget (editor->priv->gui,
+ "fill_color_radio");
+
+
/* Modify widgets based on configuration */
+ gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (editor->priv->fill_color_radio), TRUE);
+ gtk_widget_set_sensitive (editor->priv->fill_color_combo, TRUE);
+ gtk_widget_set_sensitive (editor->priv->fill_key_combo, FALSE);
gdk_color = gl_color_to_gdk_color (gl_prefs->default_fill_color);
color_combo_set_color (COLOR_COMBO(editor->priv->fill_color_combo), gdk_color);
g_free (gdk_color);
"color_changed",
G_CALLBACK (gl_object_editor_changed_cb),
G_OBJECT (editor));
-
+ g_signal_connect_swapped (G_OBJECT (editor->priv->fill_key_entry),
+ "changed",
+ G_CALLBACK (gl_object_editor_changed_cb),
+ G_OBJECT (editor));
+ g_signal_connect_swapped (G_OBJECT (editor->priv->fill_color_radio),
+ "toggled",
+ G_CALLBACK (fill_radio_toggled_cb),
+ G_OBJECT (editor));
+ g_signal_connect_swapped (G_OBJECT (editor->priv->fill_key_radio),
+ "toggled",
+ G_CALLBACK (fill_radio_toggled_cb),
+ G_OBJECT (editor));
gl_debug (DEBUG_EDITOR, "END");
}
/*****************************************************************************/
void
gl_object_editor_set_fill_color (glObjectEditor *editor,
- guint color)
+ gboolean merge_flag,
+ glColorNode *color_node)
{
GdkColor *gdk_color;
+ gint pos;
gl_debug (DEBUG_EDITOR, "START");
g_signal_handlers_block_by_func (G_OBJECT(editor->priv->fill_color_combo),
- gl_object_editor_changed_cb,
+ G_CALLBACK (gl_object_editor_changed_cb),
+ editor);
+ g_signal_handlers_block_by_func (G_OBJECT(editor->priv->fill_key_entry),
+ G_CALLBACK (gl_object_editor_changed_cb),
editor);
- if ( color == GL_COLOR_NONE ) {
+ gtk_widget_set_sensitive (editor->priv->fill_key_radio, merge_flag);
+
+ if ( color_node->color == GL_COLOR_NONE ) {
color_combo_set_color_to_default (COLOR_COMBO(editor->priv->fill_color_combo));
} else {
- gdk_color = gl_color_to_gdk_color (color);
+ gdk_color = gl_color_to_gdk_color (color_node->color);
color_combo_set_color (COLOR_COMBO(editor->priv->fill_color_combo),
- gdk_color);
+ gdk_color);
g_free (gdk_color);
}
-
+
+ if (!color_node->field_flag) {
+ gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON
+ (editor->priv->fill_color_radio), TRUE);
+ gtk_widget_set_sensitive (editor->priv->fill_color_combo, TRUE);
+ gtk_widget_set_sensitive (editor->priv->fill_key_combo, FALSE);
+
+ } else {
+ gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON
+ (editor->priv->fill_key_radio), TRUE);
+ gtk_widget_set_sensitive (editor->priv->fill_color_combo, FALSE);
+ gtk_widget_set_sensitive (editor->priv->fill_key_combo, TRUE);
+
+ gtk_editable_delete_text (GTK_EDITABLE (editor->priv->fill_key_entry), 0, -1);
+ pos = 0;
+ if (color_node->key != NULL ) {
+ gtk_editable_insert_text (GTK_EDITABLE (editor->priv->fill_key_entry),
+ color_node->key,
+ strlen (color_node->key),
+ &pos);
+ }
+ }
+
g_signal_handlers_unblock_by_func (G_OBJECT(editor->priv->fill_color_combo),
- gl_object_editor_changed_cb,
+ G_CALLBACK (gl_object_editor_changed_cb),
+ editor);
+ g_signal_handlers_unblock_by_func (G_OBJECT(editor->priv->fill_key_entry),
+ G_CALLBACK (gl_object_editor_changed_cb),
editor);
gl_debug (DEBUG_EDITOR, "END");
/*****************************************************************************/
/* Query fill color. */
/*****************************************************************************/
-guint
+glColorNode*
gl_object_editor_get_fill_color (glObjectEditor *editor)
{
- GdkColor *gdk_color;
- gboolean is_default;
- guint color;
+ GdkColor *gdk_color;
+ gboolean is_default;
+ glColorNode *color_node;
gl_debug (DEBUG_EDITOR, "START");
- gdk_color = color_combo_get_color (COLOR_COMBO(editor->priv->fill_color_combo),
+ color_node = gl_color_node_new_default ();
+
+ if (gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (editor->priv->fill_key_radio))) {
+ color_node->field_flag = TRUE;
+ color_node->key =
+ gtk_editable_get_chars (GTK_EDITABLE (editor->priv->fill_key_entry), 0, -1);
+ } else {
+ color_node->field_flag = FALSE;
+ color_node->key = NULL;
+ gdk_color = color_combo_get_color (COLOR_COMBO(editor->priv->fill_color_combo),
&is_default);
-
- if (is_default) {
- color = GL_COLOR_NONE;
- } else {
- color = gl_color_from_gdk_color (gdk_color);
+
+ if (!is_default) {
+ color_node->color = gl_color_from_gdk_color (gdk_color);
}
+ }
gl_debug (DEBUG_EDITOR, "END");
- return color;
+ return color_node;
}
+/*--------------------------------------------------------------------------*/
+/* PRIVATE. fill radio callback. */
+/*--------------------------------------------------------------------------*/
+static void
+fill_radio_toggled_cb (glObjectEditor *editor)
+{
+ gl_debug (DEBUG_EDITOR, "START");
+
+ if (gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (editor->priv->fill_color_radio))) {
+ gtk_widget_set_sensitive (editor->priv->fill_color_combo, TRUE);
+ gtk_widget_set_sensitive (editor->priv->fill_key_combo, FALSE);
+ } else {
+ gtk_widget_set_sensitive (editor->priv->fill_color_combo, FALSE);
+ gtk_widget_set_sensitive (editor->priv->fill_key_combo, TRUE);
+
+ }
+
+ /* Emit our "changed" signal */
+ g_signal_emit (G_OBJECT (editor), gl_object_editor_signals[CHANGED], 0);
+
+ gl_debug (DEBUG_EDITOR, "END");
+}
/*===========================================*/
/* Local function prototypes */
/*===========================================*/
+static void line_radio_toggled_cb (glObjectEditor *editor);
\f
/*--------------------------------------------------------------------------*/
"line_width_spin");
editor->priv->line_color_combo = glade_xml_get_widget (editor->priv->gui,
"line_color_combo");
+ editor->priv->line_key_combo = glade_xml_get_widget (editor->priv->gui,
+ "line_key_combo");
+ editor->priv->line_key_entry = glade_xml_get_widget (editor->priv->gui,
+ "line_key_entry");
+ editor->priv->line_key_radio = glade_xml_get_widget (editor->priv->gui,
+ "line_key_radio");
+ editor->priv->line_color_radio = glade_xml_get_widget (editor->priv->gui,
+ "line_color_radio");
/* Modify widgets based on configuration */
+ gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (editor->priv->line_color_radio), TRUE);
+ gtk_widget_set_sensitive (editor->priv->line_color_combo, TRUE);
+ gtk_widget_set_sensitive (editor->priv->line_key_combo, FALSE);
gtk_spin_button_set_value (GTK_SPIN_BUTTON (editor->priv->line_width_spin),
gl_prefs->default_line_width);
gdk_color = gl_color_to_gdk_color (gl_prefs->default_line_color);
"color_changed",
G_CALLBACK (gl_object_editor_changed_cb),
G_OBJECT (editor));
+ g_signal_connect_swapped (G_OBJECT (editor->priv->line_key_entry),
+ "changed",
+ G_CALLBACK (gl_object_editor_changed_cb),
+ G_OBJECT (editor));
+ g_signal_connect_swapped (G_OBJECT (editor->priv->line_color_radio),
+ "toggled",
+ G_CALLBACK (line_radio_toggled_cb),
+ G_OBJECT (editor));
+ g_signal_connect_swapped (G_OBJECT (editor->priv->line_key_radio),
+ "toggled",
+ G_CALLBACK (line_radio_toggled_cb),
+ G_OBJECT (editor));
gl_debug (DEBUG_EDITOR, "END");
}
/*****************************************************************************/
void
gl_object_editor_set_line_color (glObjectEditor *editor,
- guint color)
+ gboolean merge_flag,
+ glColorNode *color_node)
{
GdkColor *gdk_color;
+ gint pos;
gl_debug (DEBUG_EDITOR, "START");
gl_object_editor_changed_cb,
editor);
- if ( color == GL_COLOR_NONE ) {
+ g_signal_handlers_block_by_func (G_OBJECT(editor->priv->line_key_entry),
+ G_CALLBACK (gl_object_editor_changed_cb),
+ editor);
+
+ gl_debug (DEBUG_EDITOR, "color field %s(%d) / %X", color_node->key, color_node->field_flag, color_node->color);
+ gtk_widget_set_sensitive (editor->priv->line_key_radio, merge_flag);
+
+ if ( color_node->color == GL_COLOR_NONE ) {
color_combo_set_color_to_default (COLOR_COMBO(editor->priv->line_color_combo));
} else {
- gdk_color = gl_color_to_gdk_color (color);
+ gdk_color = gl_color_to_gdk_color (color_node->color);
color_combo_set_color (COLOR_COMBO(editor->priv->line_color_combo),
- gdk_color);
+ gdk_color);
g_free (gdk_color);
+ }
+
+ if (!color_node->field_flag) {
+ gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON
+ (editor->priv->line_color_radio), TRUE);
+ gtk_widget_set_sensitive (editor->priv->line_color_combo, TRUE);
+ gtk_widget_set_sensitive (editor->priv->line_key_combo, FALSE);
+
+ } else {
+ gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON
+ (editor->priv->line_key_radio), TRUE);
+ gtk_widget_set_sensitive (editor->priv->line_color_combo, FALSE);
+ gtk_widget_set_sensitive (editor->priv->line_key_combo, TRUE);
+
+ gtk_editable_delete_text (GTK_EDITABLE (editor->priv->line_key_entry), 0, -1);
+ pos = 0;
+ if (color_node->key != NULL ) {
+ gtk_editable_insert_text (GTK_EDITABLE (editor->priv->line_key_entry),
+ color_node->key,
+ strlen (color_node->key),
+ &pos);
+ }
}
g_signal_handlers_unblock_by_func (G_OBJECT(editor->priv->line_color_combo),
gl_object_editor_changed_cb,
editor);
+ g_signal_handlers_unblock_by_func (G_OBJECT(editor->priv->line_key_entry),
+ gl_object_editor_changed_cb,
+ editor);
gl_debug (DEBUG_EDITOR, "END");
}
/*****************************************************************************/
/* Query line color. */
/*****************************************************************************/
-guint
+glColorNode*
gl_object_editor_get_line_color (glObjectEditor *editor)
{
- GdkColor *gdk_color;
- gboolean is_default;
- guint color;
+ GdkColor *gdk_color;
+ gboolean is_default;
+ glColorNode *color_node;
gl_debug (DEBUG_EDITOR, "START");
- gdk_color = color_combo_get_color (COLOR_COMBO(editor->priv->line_color_combo),
+ color_node = gl_color_node_new_default ();
+
+ if (gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (editor->priv->line_key_radio))) {
+ color_node->field_flag = TRUE;
+ color_node->key =
+ gtk_editable_get_chars (GTK_EDITABLE (editor->priv->line_key_entry), 0, -1);
+ } else {
+ color_node->field_flag = FALSE;
+ color_node->key = NULL;
+ gdk_color = color_combo_get_color (COLOR_COMBO(editor->priv->line_color_combo),
&is_default);
-
- if (is_default) {
- color = GL_COLOR_NONE;
- } else {
- color = gl_color_from_gdk_color (gdk_color);
- }
+ if (!is_default) {
+ color_node->color = gl_color_from_gdk_color (gdk_color);
+ }
+ }
+
gl_debug (DEBUG_EDITOR, "END");
- return color;
+ return color_node;
}
+/*--------------------------------------------------------------------------*/
+/* PRIVATE. line color radio callback. */
+/*--------------------------------------------------------------------------*/
+static void
+line_radio_toggled_cb (glObjectEditor *editor)
+{
+ gl_debug (DEBUG_EDITOR, "START");
+
+ if (gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (editor->priv->line_color_radio))) {
+ gtk_widget_set_sensitive (editor->priv->line_color_combo, TRUE);
+ gtk_widget_set_sensitive (editor->priv->line_key_combo, FALSE);
+ } else {
+ gtk_widget_set_sensitive (editor->priv->line_color_combo, FALSE);
+ gtk_widget_set_sensitive (editor->priv->line_key_combo, TRUE);
+
+ }
+
+ /* Emit our "changed" signal */
+ g_signal_emit (G_OBJECT (editor), gl_object_editor_signals[CHANGED], 0);
+
+ gl_debug (DEBUG_EDITOR, "END");
+}
GtkWidget *fill_page_vbox;
GtkWidget *fill_color_combo;
+ GtkWidget *fill_key_combo;
+ GtkWidget *fill_key_entry;
+ GtkWidget *fill_key_radio;
+ GtkWidget *fill_color_radio;
GtkWidget *line_page_vbox;
GtkWidget *line_width_spin;
+ GtkWidget *line_color_radio;
GtkWidget *line_color_combo;
+ GtkWidget *line_key_radio;
+ GtkWidget *line_key_combo;
+ GtkWidget *line_key_entry;
GtkWidget *img_page_vbox;
GtkWidget *img_file_radio;
GtkWidget *text_size_spin;
GtkWidget *text_bold_toggle;
GtkWidget *text_italic_toggle;
+ GtkWidget *text_color_radio;
GtkWidget *text_color_combo;
+ GtkWidget *text_color_key_radio;
+ GtkWidget *text_color_key_combo;
+ GtkWidget *text_color_key_entry;
GtkWidget *text_left_toggle;
GtkWidget *text_center_toggle;
GtkWidget *text_right_toggle;
GtkWidget *bc_style_combo;
GtkWidget *bc_text_check;
GtkWidget *bc_cs_check;
+ GtkWidget *bc_color_radio;
GtkWidget *bc_color_combo;
+ GtkWidget *bc_key_radio;
+ GtkWidget *bc_key_combo;
+ GtkWidget *bc_key_entry;
GtkWidget *data_page_vbox;
GtkWidget *data_literal_radio;
static void align_toggle_cb (GtkToggleButton *toggle,
glObjectEditor *editor);
+static void text_radio_toggled_cb (glObjectEditor *editor);
/*--------------------------------------------------------------------------*/
glade_xml_get_widget (editor->priv->gui, "text_italic_toggle");
editor->priv->text_color_combo =
glade_xml_get_widget (editor->priv->gui, "text_color_combo");
+ editor->priv->text_color_radio =
+ glade_xml_get_widget (editor->priv->gui, "text_color_radio");
+ editor->priv->text_color_key_radio =
+ glade_xml_get_widget (editor->priv->gui, "text_color_key_radio");
+ editor->priv->text_color_key_combo =
+ glade_xml_get_widget (editor->priv->gui, "text_color_key_combo");
+ editor->priv->text_color_key_entry =
+ glade_xml_get_widget (editor->priv->gui, "text_color_key_entry");
editor->priv->text_left_toggle =
glade_xml_get_widget (editor->priv->gui, "text_left_toggle");
editor->priv->text_center_toggle =
family_names);
gnome_font_family_list_free (family_names);
+ /* Modify widgets */
+ gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (editor->priv->text_color_radio), TRUE);
+ gtk_widget_set_sensitive (editor->priv->text_color_combo, TRUE);
+ gtk_widget_set_sensitive (editor->priv->text_color_key_combo, FALSE);
+
/* Un-hide */
gtk_widget_show_all (editor->priv->text_page_vbox);
"color_changed",
G_CALLBACK (gl_object_editor_changed_cb),
G_OBJECT (editor));
+ g_signal_connect_swapped (G_OBJECT (editor->priv->text_color_key_entry),
+ "changed",
+ G_CALLBACK (gl_object_editor_changed_cb),
+ G_OBJECT (editor));
+ g_signal_connect_swapped (G_OBJECT (editor->priv->text_color_radio),
+ "toggled",
+ G_CALLBACK (text_radio_toggled_cb),
+ G_OBJECT (editor));
+ g_signal_connect_swapped (G_OBJECT (editor->priv->text_color_key_radio),
+ "toggled",
+ G_CALLBACK (text_radio_toggled_cb),
+ G_OBJECT (editor));
g_signal_connect (G_OBJECT (editor->priv->text_left_toggle),
"toggled",
/*****************************************************************************/
void
gl_object_editor_set_text_color (glObjectEditor *editor,
- guint text_color)
+ gboolean merge_flag,
+ glColorNode *text_color_node)
{
GdkColor *gdk_color;
+ gint pos;
gl_debug (DEBUG_EDITOR, "START");
g_signal_handlers_block_by_func (G_OBJECT(editor->priv->text_color_combo),
gl_object_editor_changed_cb,
editor);
+ g_signal_handlers_block_by_func (G_OBJECT(editor->priv->text_color_key_entry),
+ gl_object_editor_changed_cb,
+ editor);
+
+ gl_debug (DEBUG_EDITOR, "color field %s(%d) / %X", text_color_node->key, text_color_node->field_flag, text_color_node->color);
+
+ gtk_widget_set_sensitive (editor->priv->text_color_key_radio, merge_flag);
+
+ if ( text_color_node->color == GL_COLOR_NONE ) {
- gdk_color = gl_color_to_gdk_color (text_color);
+ color_combo_set_color_to_default (COLOR_COMBO(editor->priv->text_color_combo));
+
+ } else {
+
+ gdk_color = gl_color_to_gdk_color (text_color_node->color);
color_combo_set_color (COLOR_COMBO(editor->priv->text_color_combo), gdk_color);
g_free (gdk_color);
+ }
+
+ if (!text_color_node->field_flag) {
+ gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON
+ (editor->priv->text_color_radio), TRUE);
+ gtk_widget_set_sensitive (editor->priv->text_color_combo, TRUE);
+ gl_debug (DEBUG_EDITOR, "color field false 0");
+ gtk_widget_set_sensitive (editor->priv->text_color_key_combo, FALSE);
+
+ } else {
+ gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON
+ (editor->priv->text_color_key_radio), TRUE);
+ gtk_widget_set_sensitive (editor->priv->text_color_combo, FALSE);
+ gtk_widget_set_sensitive (editor->priv->text_color_key_combo, TRUE);
+
+ gtk_editable_delete_text (GTK_EDITABLE (editor->priv->text_color_key_entry), 0, -1);
+ pos = 0;
+ gl_debug (DEBUG_EDITOR, "color field true 1");
+ if (text_color_node->key != NULL ) {
+ gtk_editable_insert_text (GTK_EDITABLE (editor->priv->text_color_key_entry),
+ text_color_node->key,
+ strlen (text_color_node->key),
+ &pos);
+ }
+ gl_debug (DEBUG_EDITOR, "color field true 2");
+ }
g_signal_handlers_unblock_by_func (G_OBJECT(editor->priv->text_color_combo),
gl_object_editor_changed_cb,
editor);
+ g_signal_handlers_unblock_by_func (G_OBJECT(editor->priv->text_color_key_entry),
+ gl_object_editor_changed_cb,
+ editor);
gl_debug (DEBUG_EDITOR, "END");
}
/*****************************************************************************/
/* Query text color. */
/*****************************************************************************/
-guint
+glColorNode*
gl_object_editor_get_text_color (glObjectEditor *editor)
{
- GdkColor *gdk_color;
- guint color;
- gboolean is_default;
+ GdkColor *gdk_color;
+ glColorNode *color_node;
+ gboolean is_default;
gl_debug (DEBUG_EDITOR, "START");
- gdk_color = color_combo_get_color (COLOR_COMBO(editor->priv->text_color_combo),
+ color_node = gl_color_node_new_default ();
+
+ if (gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (editor->priv->text_color_key_radio))) {
+ color_node->field_flag = TRUE;
+ color_node->color = gl_prefs->default_text_color;
+ color_node->key =
+ gtk_editable_get_chars (GTK_EDITABLE (editor->priv->text_color_key_entry), 0, -1);
+ } else {
+ color_node->field_flag = FALSE;
+ color_node->key = NULL;
+ gdk_color = color_combo_get_color (COLOR_COMBO(editor->priv->text_color_combo),
&is_default);
-
+
if (is_default) {
- color = gl_prefs->default_text_color;
+ color_node->color = gl_prefs->default_text_color;
} else {
- color = gl_color_from_gdk_color (gdk_color);
+ color_node->color = gl_color_from_gdk_color (gdk_color);
}
-
+ }
gl_debug (DEBUG_EDITOR, "END");
- return color;
+ return color_node;
}
return auto_shrink;
}
+/*--------------------------------------------------------------------------*/
+/* PRIVATE. color radio callback. */
+/*--------------------------------------------------------------------------*/
+static void
+text_radio_toggled_cb (glObjectEditor *editor)
+{
+ gl_debug (DEBUG_EDITOR, "START");
+
+ if (gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (editor->priv->text_color_radio))) {
+ gtk_widget_set_sensitive (editor->priv->text_color_combo, TRUE);
+ gtk_widget_set_sensitive (editor->priv->text_color_key_combo, FALSE);
+ } else {
+ gtk_widget_set_sensitive (editor->priv->text_color_combo, FALSE);
+ gtk_widget_set_sensitive (editor->priv->text_color_key_combo, TRUE);
+
+ }
+
+ /* Emit our "changed" signal */
+ g_signal_emit (G_OBJECT (editor), gl_object_editor_signals[CHANGED], 0);
+
+ gl_debug (DEBUG_EDITOR, "END");
+}
merge != NULL);
}
+ if (editor->priv->text_color_key_combo) {
+ gtk_widget_set_sensitive (editor->priv->text_color_key_combo, merge != NULL);
+ }
+
+ if (editor->priv->text_color_key_radio) {
+ gtk_widget_set_sensitive (editor->priv->text_color_key_radio, merge != NULL);
+ if (merge == NULL) {
+ gtk_toggle_button_set_active (
+ GTK_TOGGLE_BUTTON(editor->priv->text_color_radio), TRUE);
+ }
+ }
+
if (editor->priv->edit_insert_field_button) {
gtk_widget_set_sensitive (editor->priv->edit_insert_field_button,
merge != NULL);
GTK_TOGGLE_BUTTON(editor->priv->data_literal_radio), TRUE);
}
}
-
+
fixed_flag = editor->priv->data_format_fixed_flag;
if (editor->priv->data_format_label) {
gtk_widget_set_sensitive (editor->priv->data_format_label,
gtk_widget_set_sensitive (editor->priv->data_digits_spin,
(merge != NULL) && !fixed_flag);
}
+
+ if (editor->priv->fill_key_combo) {
+ gtk_widget_set_sensitive (editor->priv->fill_key_combo, merge != NULL);
+ }
+
+ if (editor->priv->fill_key_radio) {
+ gtk_widget_set_sensitive (editor->priv->fill_key_radio, merge != NULL);
+ if (merge == NULL) {
+ gtk_toggle_button_set_active (
+ GTK_TOGGLE_BUTTON(editor->priv->fill_color_radio), TRUE);
+ }
+ }
+
+ if (editor->priv->line_key_combo) {
+ gtk_widget_set_sensitive (editor->priv->line_key_combo, merge != NULL);
+ }
+
+ if (editor->priv->line_key_radio) {
+ gtk_widget_set_sensitive (editor->priv->line_key_radio, merge != NULL);
+ if (merge == NULL) {
+ gtk_toggle_button_set_active (
+ GTK_TOGGLE_BUTTON(editor->priv->line_color_radio), TRUE);
+ }
+ }
+
+ if (editor->priv->bc_key_combo) {
+ gtk_widget_set_sensitive (editor->priv->bc_key_combo, merge != NULL);
+ }
+ if (editor->priv->bc_key_radio) {
+ gtk_widget_set_sensitive (editor->priv->bc_key_radio, merge != NULL);
+ if (merge == NULL) {
+ gtk_toggle_button_set_active (
+ GTK_TOGGLE_BUTTON(editor->priv->bc_color_radio), TRUE);
+ }
+ }
+
keys = gl_merge_get_key_list (merge);
if ( keys != NULL ) {
if (combo) {
gtk_combo_set_popdown_strings (GTK_COMBO (combo), keys);
}
+
+ combo = editor->priv->fill_key_combo;
+ if (combo) {
+ gtk_combo_set_popdown_strings (GTK_COMBO (combo), keys);
+ }
+ combo = editor->priv->text_color_key_combo;
+ if (combo) {
+ gtk_combo_set_popdown_strings (GTK_COMBO (combo), keys);
+ }
+
+ combo = editor->priv->line_key_combo;
+ if (combo) {
+ gtk_combo_set_popdown_strings (GTK_COMBO (combo), keys);
+ }
+
+ combo = editor->priv->bc_key_combo;
+ if (combo) {
+ gtk_combo_set_popdown_strings (GTK_COMBO (combo), keys);
+ }
+
gl_merge_free_key_list (&keys);
} else {
if (combo) {
gtk_combo_set_popdown_strings (GTK_COMBO (combo), keys);
}
-
+
combo = editor->priv->data_key_combo;
if (combo) {
gtk_combo_set_popdown_strings (GTK_COMBO (combo), keys);
}
+
+ combo = editor->priv->fill_key_combo;
+ if (combo) {
+ gtk_combo_set_popdown_strings (GTK_COMBO (combo), keys);
+ }
+
+ combo = editor->priv->text_color_key_combo;
+ if (combo) {
+ gtk_combo_set_popdown_strings (GTK_COMBO (combo), keys);
+ }
+ combo = editor->priv->line_key_combo;
+ if (combo) {
+ gtk_combo_set_popdown_strings (GTK_COMBO (combo), keys);
+ }
+
+ combo = editor->priv->bc_key_combo;
+ if (combo) {
+ gtk_combo_set_popdown_strings (GTK_COMBO (combo), keys);
+ }
+
g_list_free (keys);
}
gl_debug (DEBUG_EDITOR, "END");
}
-
#include "text-node.h"
#include "merge.h"
#include "bc.h"
+#include "color.h"
#include <gtk/gtkenums.h>
#include <libgnomeprint/gnome-font.h>
* Fill Page
*/
void gl_object_editor_set_fill_color (glObjectEditor *editor,
- guint color);
+ gboolean merge_flag,
+ glColorNode *color_node);
-guint gl_object_editor_get_fill_color (glObjectEditor *editor);
+glColorNode* gl_object_editor_get_fill_color (glObjectEditor *editor);
/*
* Line/Outline Page
*/
void gl_object_editor_set_line_color (glObjectEditor *editor,
- guint color);
+ gboolean merge_flag,
+ glColorNode *color_node);
-guint gl_object_editor_get_line_color (glObjectEditor *editor);
+glColorNode* gl_object_editor_get_line_color (glObjectEditor *editor);
void gl_object_editor_set_line_width (glObjectEditor *editor,
gdouble width);
GtkJustification gl_object_editor_get_text_alignment (glObjectEditor *editor);
void gl_object_editor_set_text_line_spacing (glObjectEditor *editor,
- gdouble text_line_spacing);
+ gdouble text_line_spacing);
gdouble gl_object_editor_get_text_line_spacing (glObjectEditor *editor);
-void gl_object_editor_set_text_color (glObjectEditor *editor,
- guint text_color);
+void gl_object_editor_set_text_color (glObjectEditor *editor,
+ gboolean merge_flag,
+ glColorNode *text_color_node);
-guint gl_object_editor_get_text_color (glObjectEditor *editor);
+glColorNode* gl_object_editor_get_text_color (glObjectEditor *editor);
void gl_object_editor_set_text_auto_shrink (glObjectEditor *editor,
gboolean auto_shrink);
guint *format_digits);
void gl_object_editor_set_bc_color (glObjectEditor *editor,
- guint text_color);
+ gboolean merge_flag,
+ glColorNode *color_node);
-guint gl_object_editor_get_bc_color (glObjectEditor *editor);
+glColorNode* gl_object_editor_get_bc_color (glObjectEditor *editor);
/*
#define PREF_MAIN_TOOLBAR_VIEW_TOOLTIPS "/main-toolbar-view-tooltips"
#define PREF_DRAWING_TOOLBAR_VISIBLE "/drawing-toolbar-visible"
-#define PREF_DRAWING_TOOLBAR_BUTTONS_STYLE "/drawing-toolbar-buttons-style"
#define PREF_DRAWING_TOOLBAR_VIEW_TOOLTIPS "/drawing-toolbar-view-tooltips"
#define PREF_PROPERTY_TOOLBAR_VISIBLE "/property-toolbar-visible"
prefs_model->drawing_toolbar_visible,
NULL);
- gconf_client_set_int (prefs_model->gconf_client,
- BASE_KEY PREF_DRAWING_TOOLBAR_BUTTONS_STYLE,
- prefs_model->drawing_toolbar_buttons_style,
- NULL);
-
gconf_client_set_bool (prefs_model->gconf_client,
BASE_KEY PREF_DRAWING_TOOLBAR_VIEW_TOOLTIPS,
prefs_model->drawing_toolbar_view_tooltips,
BASE_KEY PREF_DRAWING_TOOLBAR_VISIBLE,
TRUE);
- prefs_model->drawing_toolbar_buttons_style =
- get_int (prefs_model->gconf_client,
- BASE_KEY PREF_DRAWING_TOOLBAR_BUTTONS_STYLE,
- GL_TOOLBAR_SYSTEM);
-
prefs_model->drawing_toolbar_view_tooltips =
get_bool (prefs_model->gconf_client,
BASE_KEY PREF_DRAWING_TOOLBAR_VIEW_TOOLTIPS,
/* User Interface/Drawing Toolbar */
gboolean drawing_toolbar_visible;
- glToolbarSetting drawing_toolbar_buttons_style;
gboolean drawing_toolbar_view_tooltips;
/* User Interface/Property Toolbar */
glMergeRecord *record);
static void draw_box_object (PrintInfo *pi,
- glLabelBox *object);
+ glLabelBox *object,
+ glMergeRecord *record);
static void draw_line_object (PrintInfo *pi,
- glLabelLine *object);
+ glLabelLine *object,
+ glMergeRecord *record);
static void draw_ellipse_object (PrintInfo *pi,
- glLabelEllipse *object);
+ glLabelEllipse *object,
+ glMergeRecord *record);
static void draw_image_object (PrintInfo *pi,
glLabelImage *object,
glLabel *label,
gint n_sheets,
gint n_copies,
+ gint first,
glPrintFlags *flags)
{
glMerge *merge;
if ( merge == NULL ) {
n_per_page = gl_template_get_n_labels(label_type);
- gl_print_simple (job, label, n_sheets, 1, n_per_page, flags);
+ gl_print_simple (job, label, n_sheets, first, n_per_page, flags);
} else {
- gl_print_merge_collated (job, label, n_copies, 1, flags);
+ gl_print_merge_collated (job, label, n_copies, first, flags);
}
gl_template_free (template);
if (GL_IS_LABEL_TEXT(object)) {
draw_text_object (pi, GL_LABEL_TEXT(object), record);
} else if (GL_IS_LABEL_BOX(object)) {
- draw_box_object (pi, GL_LABEL_BOX(object));
+ draw_box_object (pi, GL_LABEL_BOX(object), record);
} else if (GL_IS_LABEL_LINE(object)) {
- draw_line_object (pi, GL_LABEL_LINE(object));
+ draw_line_object (pi, GL_LABEL_LINE(object), record);
} else if (GL_IS_LABEL_ELLIPSE(object)) {
- draw_ellipse_object (pi, GL_LABEL_ELLIPSE(object));
+ draw_ellipse_object (pi, GL_LABEL_ELLIPSE(object), record);
} else if (GL_IS_LABEL_IMAGE(object)) {
draw_image_object (pi, GL_LABEL_IMAGE(object), record);
} else if (GL_IS_LABEL_BARCODE(object)) {
GnomeFontWeight font_weight;
gboolean font_italic_flag;
guint color;
+ glColorNode *color_node;
GtkJustification just;
gboolean auto_shrink;
GnomeGlyphList *glyphlist;
font_size = gl_label_object_get_font_size (GL_LABEL_OBJECT(object));
font_weight = gl_label_object_get_font_weight (GL_LABEL_OBJECT(object));
font_italic_flag = gl_label_object_get_font_italic_flag (GL_LABEL_OBJECT(object));
- color = gl_label_object_get_text_color (GL_LABEL_OBJECT(object));
+
+ color_node = gl_label_object_get_text_color (GL_LABEL_OBJECT(object));
+ color = gl_color_node_expand (color_node, record);
+ gl_color_node_free (&color_node);
+
just = gl_label_object_get_text_alignment (GL_LABEL_OBJECT(object));
text_line_spacing =
gl_label_object_get_text_line_spacing (GL_LABEL_OBJECT(object));
/*---------------------------------------------------------------------------*/
static void
draw_box_object (PrintInfo *pi,
- glLabelBox *object)
+ glLabelBox *object,
+ glMergeRecord *record)
{
- gdouble w, h;
- gdouble line_width;
- guint line_color, fill_color;
+ gdouble w, h;
+ gdouble line_width;
+ guint line_color;
+ glColorNode *line_color_node;
+ glColorNode *fill_color_node;
+ guint fill_color;
gl_debug (DEBUG_PRINT, "START");
gl_label_object_get_size (GL_LABEL_OBJECT(object), &w, &h);
line_width = gl_label_object_get_line_width (GL_LABEL_OBJECT(object));
- line_color = gl_label_object_get_line_color (GL_LABEL_OBJECT(object));
- fill_color = gl_label_object_get_fill_color (GL_LABEL_OBJECT(object));
-
+
+ line_color_node = gl_label_object_get_line_color (GL_LABEL_OBJECT(object));
+ fill_color_node = gl_label_object_get_fill_color (GL_LABEL_OBJECT(object));
+ line_color = gl_color_node_expand (line_color_node, record);
+ fill_color = gl_color_node_expand (fill_color_node, record);
+ gl_color_node_free (&line_color_node);
+ gl_color_node_free (&fill_color_node);
+
/* Paint fill color */
create_rectangle_path (pi->pc, 0.0, 0.0, w, h);
gnome_print_setrgbcolor (pi->pc,
/*---------------------------------------------------------------------------*/
static void
draw_line_object (PrintInfo *pi,
- glLabelLine *object)
+ glLabelLine *object,
+ glMergeRecord *record)
{
- gdouble w, h;
- gdouble line_width;
- guint line_color;
+ gdouble w, h;
+ gdouble line_width;
+ guint line_color;
+ glColorNode *line_color_node;
gl_debug (DEBUG_PRINT, "START");
gl_label_object_get_size (GL_LABEL_OBJECT(object), &w, &h);
line_width = gl_label_object_get_line_width (GL_LABEL_OBJECT(object));
- line_color = gl_label_object_get_line_color (GL_LABEL_OBJECT(object));
+
+ line_color_node = gl_label_object_get_line_color (GL_LABEL_OBJECT(object));
+ line_color = gl_color_node_expand (line_color_node, record);
+ gl_color_node_free (&line_color_node);
gnome_print_moveto (pi->pc, 0.0, 0.0);
gnome_print_lineto (pi->pc, w, h);
/*---------------------------------------------------------------------------*/
static void
draw_ellipse_object (PrintInfo *pi,
- glLabelEllipse *object)
+ glLabelEllipse *object,
+ glMergeRecord *record)
{
- gdouble x0, y0, rx, ry, w, h;
- gdouble line_width;
- guint line_color, fill_color;
+ gdouble x0, y0, rx, ry, w, h;
+ gdouble line_width;
+ glColorNode *line_color_node;
+ glColorNode *fill_color_node;
+ guint line_color;
+ guint fill_color;
gl_debug (DEBUG_PRINT, "START");
gl_label_object_get_size (GL_LABEL_OBJECT(object), &w, &h);
line_width = gl_label_object_get_line_width (GL_LABEL_OBJECT(object));
- line_color = gl_label_object_get_line_color (GL_LABEL_OBJECT(object));
- fill_color = gl_label_object_get_fill_color (GL_LABEL_OBJECT(object));
+
+ line_color_node = gl_label_object_get_line_color (GL_LABEL_OBJECT(object));
+ fill_color_node = gl_label_object_get_fill_color (GL_LABEL_OBJECT(object));
+ line_color = gl_color_node_expand (line_color_node, record);
+ fill_color = gl_color_node_expand (fill_color_node, record);
+ gl_color_node_free (&line_color_node);
+ gl_color_node_free (&fill_color_node);
rx = w / 2.0;
ry = h / 2.0;
gboolean text_flag;
gboolean checksum_flag;
guint color;
+ glColorNode *color_node;
guint format_digits;
gdouble w, h;
text_node = gl_label_barcode_get_data (object);
gl_label_barcode_get_props (object,
&id, &text_flag, &checksum_flag, &format_digits);
- color = gl_label_object_get_line_color (GL_LABEL_OBJECT(object));
+
+ color_node = gl_label_object_get_line_color (GL_LABEL_OBJECT(object));
+ color = gl_color_node_expand (color_node, record);
+ gl_color_node_free (&color_node);
+
gl_label_object_get_size (GL_LABEL_OBJECT(object), &w, &h);
text = gl_text_node_expand (text_node, record);
void gl_print_batch (GnomePrintJob *job,
glLabel *label,
gint n_sheets,
- gint n_bcopies,
+ gint n_copies,
+ gint first,
glPrintFlags *flags);
G_END_DECLS
#include "splash.h"
-#include "debug.h"
-
#define SPLASH_PIXMAP gnome_program_locate_file (NULL,\
GNOME_FILE_DOMAIN_APP_PIXMAP,\
- "glabels/glabels-logo.png",\
+ "glabels/glabels-splash.png",\
FALSE, NULL)
#define SPLASH_TIMEOUT 2000
/*========================================================*/
#define ICON_PIXMAP gnome_program_locate_file (NULL,\
GNOME_FILE_DOMAIN_APP_PIXMAP,\
- "glabels/glabels-icon.png",\
+ "glabels.png",\
FALSE, NULL)
#define EX_RECT_IMAGE gnome_program_locate_file (NULL,\
gchar *selection_font_family, *font_family;
gdouble selection_font_size, font_size;
guint selection_text_color, text_color;
+ glColorNode *text_color_node;
gboolean selection_is_italic, is_italic;
gboolean selection_is_bold, is_bold;
GtkJustification selection_justification, justification;
}
font_size = gl_label_object_get_font_size (object);
- text_color = gl_label_object_get_text_color (object);
+
+ text_color_node = gl_label_object_get_text_color (object);
+ if (text_color_node->field_flag) {
+ /* If a merge field is set we use the default color for merged color*/
+ text_color = GL_COLOR_MERGE_DEFAULT;
+
+ } else {
+ text_color = text_color_node->color;
+ }
+ gl_color_node_free (&text_color_node);
+
is_italic = gl_label_object_get_font_italic_flag (object);
is_bold = gl_label_object_get_font_weight (object) == GNOME_FONT_BOLD;
justification = gl_label_object_get_text_alignment (object);
glLabelObject *object;
guint selection_fill_color, fill_color;
GdkColor *gdk_color;
+ glColorNode *fill_color_node;
can = gl_view_can_selection_fill (view);
gl_ui_util_set_verb_list_sensitive (property_bar->ui_component,
if (!gl_label_object_can_fill (object))
continue;
- fill_color = gl_label_object_get_fill_color (object);
+ fill_color_node = gl_label_object_get_fill_color (object);
+ if (fill_color_node->field_flag) {
+ /* If a merge field is set we use the default color for merged color*/
+ fill_color = GL_COLOR_FILL_MERGE_DEFAULT;
+
+ } else {
+ fill_color = fill_color_node->color;
+ }
+ gl_color_node_free (&fill_color_node);
if (is_first_object) {
selection_fill_color = fill_color;
GList *p;
glLabelObject *object;
guint selection_line_color, line_color;
+ glColorNode *line_color_node;
GdkColor *gdk_color;
can = gl_view_can_selection_line_color (view);
if (!gl_label_object_can_line_color (object))
continue;
- line_color = gl_label_object_get_line_color (object);
+ line_color_node = gl_label_object_get_line_color (object);
+ if (line_color_node->field_flag) {
+ /* If a merge field is set we use the default color for merged color*/
+ line_color = GL_COLOR_MERGE_DEFAULT;
+
+ } else {
+ line_color = line_color_node->color;
+ }
+ gl_color_node_free (&line_color_node);
if (is_first_object) {
selection_line_color = line_color;
gboolean is_default,
glUIPropertyBar *property_bar)
{
- guint text_color;
+ glColorNode *text_color_node;
if (property_bar->stop_signals)
return;
selection_changed_cb,
property_bar);
- text_color = gl_color_from_gdk_color (gdk_color);
-
+ text_color_node = gl_color_node_new_default ();
+ text_color_node->color = gl_color_from_gdk_color (gdk_color);
+
gl_debug (DEBUG_PROPERTY_BAR, "Color=%08x, Custom=%d, By_User=%d, Is_default=%d",
- text_color, custom, by_user, is_default);
+ text_color_node->color, custom, by_user, is_default);
if (is_default) {
-
+ text_color_node->color = gl_prefs->default_text_color;
gl_view_set_selection_text_color (property_bar->view,
- gl_prefs->default_text_color);
+ text_color_node);
gl_view_set_default_text_color (property_bar->view,
gl_prefs->default_text_color);
} else {
gl_view_set_selection_text_color (property_bar->view,
- text_color);
+ text_color_node);
gl_view_set_default_text_color (property_bar->view,
- text_color);
+ text_color_node->color);
}
+ gl_color_node_free (&text_color_node);
+
g_signal_handlers_unblock_by_func (G_OBJECT(property_bar->view->label),
selection_changed_cb,
property_bar);
gboolean is_default,
glUIPropertyBar *property_bar)
{
- guint fill_color;
+ glColorNode *fill_color_node;
if (property_bar->stop_signals)
return;
selection_changed_cb,
property_bar);
- fill_color = gl_color_from_gdk_color (gdk_color);
+ fill_color_node = gl_color_node_new_default ();
+
+ fill_color_node->color = gl_color_from_gdk_color (gdk_color);
gl_debug (DEBUG_PROPERTY_BAR, "Color=%08x, Custom=%d, By_User=%d, Is_default=%d",
- fill_color, custom, by_user, is_default);
+ fill_color_node->color, custom, by_user, is_default);
if (is_default) {
+ fill_color_node->color = GL_COLOR_NONE;
gl_view_set_selection_fill_color (property_bar->view,
- GL_COLOR_NONE);
+ fill_color_node);
gl_view_set_default_fill_color (property_bar->view,
- GL_COLOR_NONE);
+ fill_color_node->color);
} else {
gl_view_set_selection_fill_color (property_bar->view,
- fill_color);
+ fill_color_node);
gl_view_set_default_fill_color (property_bar->view,
- fill_color);
+ fill_color_node->color);
}
-
+ gl_color_node_free (&fill_color_node);
+
g_signal_handlers_unblock_by_func (G_OBJECT(property_bar->view->label),
selection_changed_cb,
property_bar);
gboolean is_default,
glUIPropertyBar *property_bar)
{
- guint line_color;
+ glColorNode *line_color_node;
if (property_bar->stop_signals)
return;
selection_changed_cb,
property_bar);
- line_color = gl_color_from_gdk_color (gdk_color);
+ line_color_node = gl_color_node_new_default ();
+ line_color_node->color = gl_color_from_gdk_color (gdk_color);
gl_debug (DEBUG_PROPERTY_BAR, "Color=%08x, Custom=%d, By_User=%d, Is_default=%d",
- line_color, custom, by_user, is_default);
+ line_color_node->color, custom, by_user, is_default);
if (is_default) {
-
+ line_color_node->color = GL_COLOR_NONE;
gl_view_set_selection_line_color (property_bar->view,
- GL_COLOR_NONE);
+ line_color_node);
gl_view_set_default_line_color (property_bar->view,
- GL_COLOR_NONE);
+ line_color_node->color);
} else {
gl_view_set_selection_line_color (property_bar->view,
- line_color);
+ line_color_node);
gl_view_set_default_line_color (property_bar->view,
- line_color);
+ line_color_node->color);
}
+ gl_color_node_free (&line_color_node);
g_signal_handlers_unblock_by_func (G_OBJECT(property_bar->view->label),
selection_changed_cb,
const gchar *verbname)
{
}
-
return;
}
- if (s && (strcmp (path, "DrawingToolbarSystem") == 0))
- {
- gl_prefs->drawing_toolbar_buttons_style = GL_TOOLBAR_SYSTEM;
- set_app_drawing_toolbar_style (ui_component);
- gl_prefs_model_save_settings (gl_prefs);
-
- return;
- }
-
- if (s && (strcmp (path, "DrawingToolbarIcon") == 0))
- {
- gl_prefs->drawing_toolbar_buttons_style = GL_TOOLBAR_ICONS;
- set_app_drawing_toolbar_style (ui_component);
- gl_prefs_model_save_settings (gl_prefs);
-
- return;
- }
-
- if (s && (strcmp (path, "DrawingToolbarIconText") == 0))
- {
- gl_prefs->drawing_toolbar_buttons_style = GL_TOOLBAR_ICONS_AND_TEXT;
- set_app_drawing_toolbar_style (ui_component);
- gl_prefs_model_save_settings (gl_prefs);
-
- return;
- }
-
if (strcmp (path, "DrawingToolbarTooltips") == 0)
{
gl_prefs->drawing_toolbar_view_tooltips = s;
"/commands/DrawingToolbarTooltips",
gl_prefs->drawing_toolbar_visible);
- gl_ui_util_set_verb_state (
- ui_component,
- "/commands/DrawingToolbarSystem",
- gl_prefs->drawing_toolbar_buttons_style == GL_TOOLBAR_SYSTEM);
-
- gl_ui_util_set_verb_state (
- ui_component,
- "/commands/DrawingToolbarIcon",
- gl_prefs->drawing_toolbar_buttons_style == GL_TOOLBAR_ICONS);
-
- gl_ui_util_set_verb_state (
- ui_component,
- "/commands/DrawingToolbarIconText",
- gl_prefs->drawing_toolbar_buttons_style == GL_TOOLBAR_ICONS_AND_TEXT);
-
gl_ui_util_set_verb_state (ui_component,
"/commands/DrawingToolbarTooltips",
gl_prefs->drawing_toolbar_view_tooltips);
"tips", gl_prefs->drawing_toolbar_view_tooltips ? "1" : "0",
NULL);
- switch (gl_prefs->drawing_toolbar_buttons_style)
- {
- case GL_TOOLBAR_SYSTEM:
-
- client = gconf_client_get_default ();
- if (client == NULL)
- goto error;
-
- labels = gconf_client_get_bool (client,
- "/desktop/gnome/interface/toolbar-labels", NULL);
-
- g_object_unref (G_OBJECT (client));
-
- if (labels)
- {
- bonobo_ui_component_set_prop (
- ui_component, "/DrawingToolbar", "look", "both", NULL);
-
- }
- else
- {
- bonobo_ui_component_set_prop (
- ui_component, "/DrawingToolbar", "look", "icons", NULL);
- }
-
- break;
-
- case GL_TOOLBAR_ICONS:
- bonobo_ui_component_set_prop (
- ui_component, "/DrawingToolbar", "look", "icon", NULL);
-
- break;
-
- case GL_TOOLBAR_ICONS_AND_TEXT:
- bonobo_ui_component_set_prop (
- ui_component, "/DrawingToolbar", "look", "both", NULL);
-
- break;
- default:
- goto error;
- break;
- }
-
bonobo_ui_component_set_prop (
ui_component, "/DrawingToolbar",
"hidden", gl_prefs->drawing_toolbar_visible ? "0":"1", NULL);
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*/
+#include <config.h>
#include <glib.h>
glTextNode *text_node;
gchar *id;
gboolean text_flag, cs_flag;
- guint color;
+ glColorNode *color_node;
guint format_digits;
gl_debug (DEBUG_VIEW, "START");
gl_text_node_free (&text_node);
gl_object_editor_get_bc_style (editor, &id, &text_flag, &cs_flag, &format_digits);
- color = gl_object_editor_get_bc_color (editor);
+ color_node = gl_object_editor_get_bc_color (editor);
gl_label_barcode_set_props (GL_LABEL_BARCODE(object),
id, text_flag, cs_flag, format_digits);
- gl_label_object_set_line_color (object, color);
+ gl_label_object_set_line_color (object, color_node);
+ gl_color_node_free (&color_node);
g_free (id);
g_signal_handlers_unblock_by_func (G_OBJECT(object),
glTextNode *text_node;
gchar *id;
gboolean text_flag, cs_flag;
- guint color;
+ glColorNode *color_node;
glMerge *merge;
guint format_digits;
gl_label_object_get_size (object, &w, &h);
gl_object_editor_set_size (editor, w, h);
+
+ merge = gl_label_get_merge (GL_LABEL(object->parent));
gl_label_barcode_get_props (GL_LABEL_BARCODE(object),
&id, &text_flag, &cs_flag, &format_digits);
- color = gl_label_object_get_line_color (object);
+ color_node = gl_label_object_get_line_color (object);
gl_object_editor_set_bc_style (editor, id, text_flag, cs_flag, format_digits);
- gl_object_editor_set_bc_color (editor, color);
+ gl_object_editor_set_bc_color (editor, (merge != NULL), color_node);
+ gl_color_node_free (&color_node);
g_free (id);
text_node = gl_label_barcode_get_data (GL_LABEL_BARCODE(object));
- merge = gl_label_get_merge (GL_LABEL(object->parent));
gl_object_editor_set_data (editor, (merge != NULL), text_node);
gl_text_node_free (&text_node);
static GObject *object;
gdouble x, y;
glTextNode *text_node;
+ glColorNode *color_node;
gl_debug (DEBUG_VIEW, "");
gl_debug (DEBUG_VIEW, "BUTTON_PRESS");
switch (event->button.button) {
case 1:
+ color_node = gl_color_node_new_default ();
dragging = TRUE;
gnome_canvas_item_grab (canvas->root,
GDK_POINTER_MOTION_MASK |
FALSE,
TRUE,
0);
- gl_label_object_set_line_color (GL_LABEL_OBJECT(object),
- gl_color_set_opacity (
+ color_node->color = gl_color_set_opacity (
gl_view_get_default_line_color(view),
- 0.5));
+ 0.5);
+ gl_label_object_set_line_color (GL_LABEL_OBJECT(object),
+ color_node);
view_barcode = gl_view_barcode_new (GL_LABEL_BARCODE(object),
view);
x0 = x;
y0 = y;
+ gl_color_node_free (&color_node);
return TRUE;
default:
gl_debug (DEBUG_VIEW, "BUTTON_RELEASE");
switch (event->button.button) {
case 1:
+ color_node = gl_color_node_new_default ();
dragging = FALSE;
gnome_canvas_item_ungrab (canvas->root, event->button.time);
gnome_canvas_window_to_world (canvas,
FALSE,
TRUE,
0);
+ color_node->color = gl_view_get_default_line_color(view);
gl_label_object_set_line_color (GL_LABEL_OBJECT(object),
- gl_view_get_default_line_color(view));
+ color_node);
gl_view_unselect_all (view);
gl_view_object_select (GL_VIEW_OBJECT(view_barcode));
gl_view_arrow_mode (view);
+ gl_color_node_free (&color_node);
return TRUE;
default:
gchar *id;
gboolean text_flag;
gboolean checksum_flag;
- guint color;
+ glColorNode *color_node;
gdouble w, h;
glBarcodeLine *line;
glBarcodeChar *bchar;
object = gl_view_object_get_object (GL_VIEW_OBJECT(view_barcode));
gl_label_barcode_get_props (GL_LABEL_BARCODE(object),
&id, &text_flag, &checksum_flag, &format_digits);
- color = gl_label_object_get_line_color (object);
+ color_node = gl_label_object_get_line_color (object);
+ if (color_node->field_flag)
+ {
+ color_node->color = GL_COLOR_MERGE_DEFAULT;
+ }
gl_label_object_get_size (object, &w, &h);
text_node = gl_label_barcode_get_data(GL_LABEL_BARCODE(object));
if (text_node->field_flag) {
cstring = _("Invalid barcode data");
glyphlist = gnome_glyphlist_from_text_sized_dumb (font,
- color,
+ color_node->color,
0.0, 0.0,
cstring,
strlen
gnome_canvas_line_get_type (),
"points", points,
"width_units", line->width,
- "fill_color_rgba", color,
+ "fill_color_rgba", color_node->color,
NULL);
view_barcode->private->item_list =
g_list_prepend (view_barcode->private->item_list, item);
GL_BARCODE_FONT_WEIGHT,
FALSE, bchar->fsize);
glyphlist = gnome_glyphlist_from_text_sized_dumb (font,
- color,
+ color_node->color,
0.0,
0.0,
&
}
/* clean up */
+ gl_color_node_free (&color_node);
gl_barcode_free (&gbc);
g_free (digits);
g_free (id);
gl_debug (DEBUG_VIEW, "END");
}
-
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*/
+#include <config.h>
#include <glib.h>
gl_view_box_new (glLabelBox *object,
glView *view)
{
- glViewBox *view_box;
+ glViewBox *view_box;
gdouble line_width;
- guint line_color, fill_color;
+ glColorNode *line_color_node;
gdouble w, h;
+ glColorNode *fill_color_node;
gl_debug (DEBUG_VIEW, "START");
g_return_if_fail (object && GL_IS_LABEL_BOX (object));
/* Query properties of object. */
gl_label_object_get_size (GL_LABEL_OBJECT(object), &w, &h);
line_width = gl_label_object_get_line_width(GL_LABEL_OBJECT(object));
- line_color = gl_label_object_get_line_color(GL_LABEL_OBJECT(object));
- fill_color = gl_label_object_get_fill_color(GL_LABEL_OBJECT(object));
+ line_color_node = gl_label_object_get_line_color(GL_LABEL_OBJECT(object));
+ if (line_color_node->field_flag)
+ {
+ line_color_node->color = GL_COLOR_MERGE_DEFAULT;
+ }
+ fill_color_node = gl_label_object_get_fill_color(GL_LABEL_OBJECT(object));
+ if (fill_color_node->field_flag)
+ {
+ fill_color_node->color = GL_COLOR_FILL_MERGE_DEFAULT;
+ }
/* Create analogous canvas item. */
view_box->private->item =
"x2", w + DELTA,
"y2", h + DELTA,
"width_units", line_width,
- "outline_color_rgba", line_color,
- "fill_color_rgba", fill_color,
+ "outline_color_rgba", line_color_node->color,
+ "fill_color_rgba", fill_color_node->color,
NULL);
+ gl_color_node_free (&line_color_node);
+ gl_color_node_free (&fill_color_node);
+
g_signal_connect (G_OBJECT (object), "changed",
G_CALLBACK (update_canvas_item_from_object_cb), view_box);
G_CALLBACK (update_editor_from_move_cb), editor);
g_signal_connect (G_OBJECT (object->parent), "size_changed",
G_CALLBACK (update_editor_from_label_cb), editor);
+ g_signal_connect (G_OBJECT (object->parent), "merge_changed",
+ G_CALLBACK (update_editor_from_label_cb), editor);
gl_debug (DEBUG_VIEW, "END");
glViewBox *view_box)
{
gdouble line_width;
- guint line_color, fill_color;
+ glColorNode *line_color_node;
gdouble w, h;
+ glColorNode *fill_color_node;
gl_debug (DEBUG_VIEW, "START");
/* Query properties of object. */
gl_label_object_get_size (GL_LABEL_OBJECT(object), &w, &h);
line_width = gl_label_object_get_line_width(GL_LABEL_OBJECT(object));
- line_color = gl_label_object_get_line_color(GL_LABEL_OBJECT(object));
- fill_color = gl_label_object_get_fill_color(GL_LABEL_OBJECT(object));
+ line_color_node = gl_label_object_get_line_color(GL_LABEL_OBJECT(object));
+ if (line_color_node->field_flag)
+ {
+ line_color_node->color = GL_COLOR_MERGE_DEFAULT;
+ }
+ fill_color_node = gl_label_object_get_fill_color(GL_LABEL_OBJECT(object));
+ if (fill_color_node->field_flag)
+ {
+ fill_color_node->color = GL_COLOR_FILL_MERGE_DEFAULT;
+ }
/* Adjust appearance of analogous canvas item. */
gnome_canvas_item_set (view_box->private->item,
"x2", w + DELTA,
"y2", h + DELTA,
"width_units", line_width,
- "outline_color_rgba", line_color,
- "fill_color_rgba", fill_color,
+ "outline_color_rgba", line_color_node->color,
+ "fill_color_rgba", fill_color_node->color,
NULL);
+
+ gl_color_node_free (&line_color_node);
+ gl_color_node_free (&fill_color_node);
gl_debug (DEBUG_VIEW, "END");
}
glLabelObject *object)
{
gdouble x, y, w, h;
- guint line_color, fill_color;
+ glColorNode *line_color_node;
gdouble line_width;
+ glColorNode *fill_color_node;
gl_debug (DEBUG_VIEW, "START");
gl_object_editor_get_size (editor, &w, &h);
gl_label_object_set_size (object, w, h);
- fill_color = gl_object_editor_get_fill_color (editor);
- gl_label_object_set_fill_color (object, fill_color);
+ fill_color_node = gl_object_editor_get_fill_color (editor);
+ gl_label_object_set_fill_color (object, fill_color_node);
+ gl_color_node_free (&fill_color_node);
- line_color = gl_object_editor_get_line_color (editor);
- gl_label_object_set_line_color (object, line_color);
+ line_color_node = gl_object_editor_get_line_color (editor);
+ gl_label_object_set_line_color (object, line_color_node);
+ gl_color_node_free (&line_color_node);
line_width = gl_object_editor_get_line_width (editor);
gl_label_object_set_line_width (object, line_width);
glObjectEditor *editor)
{
gdouble w, h;
- guint line_color, fill_color;
+ glColorNode *line_color_node;
gdouble line_width;
+ glColorNode *fill_color_node;
+ glMerge *merge;
gl_debug (DEBUG_VIEW, "START");
gl_label_object_get_size (object, &w, &h);
gl_object_editor_set_size (editor, w, h);
+ merge = gl_label_get_merge (GL_LABEL(object->parent));
+
+ fill_color_node = gl_label_object_get_fill_color (GL_LABEL_OBJECT(object));
+ gl_object_editor_set_fill_color (editor, (merge != NULL), fill_color_node);
+ gl_color_node_free (&fill_color_node);
- fill_color = gl_label_object_get_fill_color (GL_LABEL_OBJECT(object));
- gl_object_editor_set_fill_color (editor, fill_color);
-
- line_color = gl_label_object_get_line_color (GL_LABEL_OBJECT(object));
- gl_object_editor_set_line_color (editor, line_color);
+ line_color_node = gl_label_object_get_line_color (GL_LABEL_OBJECT(object));
+ gl_object_editor_set_line_color (editor, (merge != NULL), line_color_node);
+ gl_color_node_free (&line_color_node);
line_width = gl_label_object_get_line_width (GL_LABEL_OBJECT(object));
gl_object_editor_set_line_width (editor, line_width);
glObjectEditor *editor)
{
gdouble label_width, label_height;
+ glMerge *merge;
gl_debug (DEBUG_VIEW, "START");
label_width, label_height);
gl_object_editor_set_max_size (GL_OBJECT_EDITOR (editor),
label_width, label_height);
+
+ merge = gl_label_get_merge (label);
+ gl_object_editor_set_key_names (editor, merge);
gl_debug (DEBUG_VIEW, "END");
}
static gboolean dragging = FALSE;
static glViewObject *view_box;
static GObject *object;
- guint line_color, fill_color;
+ glColorNode *line_color_node;
gdouble x, y, w, h;
+ glColorNode *fill_color_node;
gl_debug (DEBUG_VIEW, "");
case GDK_BUTTON_PRESS:
switch (event->button.button) {
case 1:
+ fill_color_node = gl_color_node_new_default ();
+ line_color_node = gl_color_node_new_default ();
+
dragging = TRUE;
gnome_canvas_item_grab ( canvas->root,
GDK_POINTER_MOTION_MASK |
x, y);
gl_label_object_set_size (GL_LABEL_OBJECT(object),
0.0, 0.0);
- line_color = gl_color_set_opacity (gl_view_get_default_line_color(view), 0.5);
- fill_color = gl_color_set_opacity (gl_view_get_default_fill_color(view), 0.5);
+ line_color_node->color = gl_color_set_opacity (gl_view_get_default_line_color(view), 0.5);
+ fill_color_node->color = gl_color_set_opacity (gl_view_get_default_fill_color(view), 0.5);
gl_label_object_set_line_width (GL_LABEL_OBJECT(object),
gl_view_get_default_line_width(view));
gl_label_object_set_line_color (GL_LABEL_OBJECT(object),
- line_color);
+ line_color_node);
gl_label_object_set_fill_color (GL_LABEL_OBJECT(object),
- fill_color);
+ fill_color_node);
view_box = gl_view_box_new (GL_LABEL_BOX(object),
view);
+
+ gl_color_node_free (&fill_color_node);
+ gl_color_node_free (&line_color_node);
x0 = x;
y0 = y;
return TRUE;
case GDK_BUTTON_RELEASE:
switch (event->button.button) {
case 1:
+ fill_color_node = gl_color_node_new_default ();
+ line_color_node = gl_color_node_new_default ();
+
dragging = FALSE;
gnome_canvas_item_ungrab (canvas->root, event->button.time);
gnome_canvas_window_to_world (canvas,
h = MAX (y, y0) - MIN (y, y0);
gl_label_object_set_size (GL_LABEL_OBJECT(object),
w, h);
- gl_label_object_set_line_color (GL_LABEL_OBJECT(object),
- gl_view_get_default_line_color(view));
- gl_label_object_set_fill_color (GL_LABEL_OBJECT(object),
- gl_view_get_default_fill_color(view));
+ line_color_node->color = gl_view_get_default_line_color(view);
+ gl_label_object_set_line_color (GL_LABEL_OBJECT(object), line_color_node);
+ fill_color_node->color = gl_view_get_default_fill_color(view);
+ gl_label_object_set_fill_color (GL_LABEL_OBJECT(object), fill_color_node);
gl_view_unselect_all (view);
gl_view_object_select (GL_VIEW_OBJECT(view_box));
gl_view_arrow_mode (view);
+
+ gl_color_node_free (&fill_color_node);
+ gl_color_node_free (&line_color_node);
return TRUE;
default:
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*/
+#include <config.h>
#include <glib.h>
{
glViewEllipse *view_ellipse;
gdouble line_width;
- guint line_color, fill_color;
+ glColorNode *line_color_node;
gdouble w, h;
+ glColorNode *fill_color_node;
gl_debug (DEBUG_VIEW, "START");
g_return_if_fail (object && GL_IS_LABEL_ELLIPSE (object));
/* Query properties of object. */
gl_label_object_get_size (GL_LABEL_OBJECT(object), &w, &h);
line_width = gl_label_object_get_line_width(GL_LABEL_OBJECT(object));
- line_color = gl_label_object_get_line_color(GL_LABEL_OBJECT(object));
- fill_color = gl_label_object_get_fill_color(GL_LABEL_OBJECT(object));
+ line_color_node = gl_label_object_get_line_color(GL_LABEL_OBJECT(object));
+ if (line_color_node->field_flag)
+ {
+ line_color_node->color = GL_COLOR_MERGE_DEFAULT;
+ }
+ fill_color_node = gl_label_object_get_fill_color(GL_LABEL_OBJECT(object));
+ if (fill_color_node->field_flag)
+ {
+ fill_color_node->color = GL_COLOR_FILL_MERGE_DEFAULT;
+ }
/* Create analogous canvas item. */
view_ellipse->private->item =
"x2", w + DELTA,
"y2", h + DELTA,
"width_units", line_width,
- "outline_color_rgba", line_color,
- "fill_color_rgba", fill_color,
+ "outline_color_rgba", line_color_node->color,
+ "fill_color_rgba", fill_color_node->color,
NULL);
+ gl_color_node_free (&line_color_node);
+ gl_color_node_free (&fill_color_node);
+
g_signal_connect (G_OBJECT (object), "changed",
G_CALLBACK (update_canvas_item_from_object_cb), view_ellipse);
G_CALLBACK (update_editor_from_move_cb), editor);
g_signal_connect (G_OBJECT (object->parent), "size_changed",
G_CALLBACK (update_editor_from_label_cb), editor);
+ g_signal_connect (G_OBJECT (object->parent), "merge_changed",
+ G_CALLBACK (update_editor_from_label_cb), editor);
gl_debug (DEBUG_VIEW, "END");
glViewEllipse *view_ellipse)
{
gdouble line_width;
- guint line_color, fill_color;
+ glColorNode *line_color_node;
gdouble w, h;
+ glColorNode *fill_color_node;
gl_debug (DEBUG_VIEW, "START");
/* Query properties of object. */
gl_label_object_get_size (GL_LABEL_OBJECT(object), &w, &h);
line_width = gl_label_object_get_line_width(GL_LABEL_OBJECT(object));
- line_color = gl_label_object_get_line_color(GL_LABEL_OBJECT(object));
- fill_color = gl_label_object_get_fill_color(GL_LABEL_OBJECT(object));
+ line_color_node = gl_label_object_get_line_color(GL_LABEL_OBJECT(object));
+ if (line_color_node->field_flag)
+ {
+ line_color_node->color = GL_COLOR_MERGE_DEFAULT;
+ }
+ fill_color_node = gl_label_object_get_fill_color(GL_LABEL_OBJECT(object));
+ if (fill_color_node->field_flag)
+ {
+ fill_color_node->color = GL_COLOR_FILL_MERGE_DEFAULT;
+ }
/* Adjust appearance of analogous canvas item. */
gnome_canvas_item_set (view_ellipse->private->item,
"x2", w + DELTA,
"y2", h + DELTA,
"width_units", line_width,
- "outline_color_rgba", line_color,
- "fill_color_rgba", fill_color,
+ "outline_color_rgba", line_color_node->color,
+ "fill_color_rgba", fill_color_node->color,
NULL);
+
+ gl_color_node_free (&line_color_node);
+ gl_color_node_free (&fill_color_node);
gl_debug (DEBUG_VIEW, "END");
}
glLabelObject *object)
{
gdouble x, y, w, h;
- guint line_color, fill_color;
+ glColorNode *line_color_node;
gdouble line_width;
+ glColorNode *fill_color_node;
+ glMerge *merge;
gl_debug (DEBUG_VIEW, "START");
gl_object_editor_get_size (editor, &w, &h);
gl_label_object_set_size (object, w, h);
- fill_color = gl_object_editor_get_fill_color (editor);
- gl_label_object_set_fill_color (object, fill_color);
+ fill_color_node = gl_object_editor_get_fill_color (editor);
+ gl_label_object_set_fill_color (object, fill_color_node);
+ gl_color_node_free (&fill_color_node);
- line_color = gl_object_editor_get_line_color (editor);
- gl_label_object_set_line_color (object, line_color);
+ line_color_node = gl_object_editor_get_line_color (editor);
+ gl_label_object_set_line_color (object, line_color_node);
+ gl_color_node_free (&line_color_node);
line_width = gl_object_editor_get_line_width (editor);
gl_label_object_set_line_width (object, line_width);
glObjectEditor *editor)
{
gdouble w, h;
- guint line_color, fill_color;
+ glColorNode *line_color_node;
gdouble line_width;
+ glColorNode *fill_color_node;
+ glMerge *merge;
gl_debug (DEBUG_VIEW, "START");
gl_label_object_get_size (object, &w, &h);
gl_object_editor_set_size (editor, w, h);
+ merge = gl_label_get_merge (GL_LABEL(object->parent));
- fill_color = gl_label_object_get_fill_color (GL_LABEL_OBJECT(object));
- gl_object_editor_set_fill_color (editor, fill_color);
+ fill_color_node = gl_label_object_get_fill_color (GL_LABEL_OBJECT(object));
+ gl_object_editor_set_fill_color (editor, (merge != NULL), fill_color_node);
+ gl_color_node_free (&fill_color_node);
- line_color = gl_label_object_get_line_color (GL_LABEL_OBJECT(object));
- gl_object_editor_set_line_color (editor, line_color);
+ line_color_node = gl_label_object_get_line_color (GL_LABEL_OBJECT(object));
+ gl_object_editor_set_line_color (editor, (merge != NULL), line_color_node);
+ gl_color_node_free (&line_color_node);
line_width = gl_label_object_get_line_width (GL_LABEL_OBJECT(object));
gl_object_editor_set_line_width (editor, line_width);
glObjectEditor *editor)
{
gdouble label_width, label_height;
+ glMerge *merge;
gl_debug (DEBUG_VIEW, "START");
label_width, label_height);
gl_object_editor_set_max_size (GL_OBJECT_EDITOR (editor),
label_width, label_height);
+
+ merge = gl_label_get_merge (label);
+ gl_object_editor_set_key_names (editor, merge);
gl_debug (DEBUG_VIEW, "END");
}
static gboolean dragging = FALSE;
static glViewObject *view_ellipse;
static GObject *object;
- guint line_color, fill_color;
+ glColorNode *line_color_node;
gdouble x, y, w, h;
+ glColorNode *fill_color_node;
gl_debug (DEBUG_VIEW, "");
+
+
switch (event->type) {
case GDK_BUTTON_PRESS:
switch (event->button.button) {
case 1:
+ fill_color_node = gl_color_node_new_default ();
+ line_color_node = gl_color_node_new_default ();
+
dragging = TRUE;
gnome_canvas_item_grab ( canvas->root,
GDK_POINTER_MOTION_MASK |
x, y);
gl_label_object_set_size (GL_LABEL_OBJECT(object),
0.0, 0.0);
- line_color = gl_color_set_opacity (gl_view_get_default_line_color(view), 0.5);
- fill_color = gl_color_set_opacity (gl_view_get_default_fill_color(view), 0.5);
+ line_color_node->color = gl_color_set_opacity (gl_view_get_default_line_color(view), 0.5);
+ fill_color_node->color = gl_color_set_opacity (gl_view_get_default_fill_color(view), 0.5);
gl_label_object_set_line_width (GL_LABEL_OBJECT(object),
gl_view_get_default_line_width(view));
gl_label_object_set_line_color (GL_LABEL_OBJECT(object),
- line_color);
+ line_color_node);
gl_label_object_set_fill_color (GL_LABEL_OBJECT(object),
- fill_color);
+ fill_color_node);
view_ellipse = gl_view_ellipse_new (GL_LABEL_ELLIPSE(object),
view);
+
+ gl_color_node_free (&fill_color_node);
+ gl_color_node_free (&line_color_node);
x0 = x;
y0 = y;
return TRUE;
case GDK_BUTTON_RELEASE:
switch (event->button.button) {
case 1:
+ fill_color_node = gl_color_node_new_default ();
+ line_color_node = gl_color_node_new_default ();
+
dragging = FALSE;
gnome_canvas_item_ungrab (canvas->root, event->button.time);
gnome_canvas_window_to_world (canvas,
h = MAX (y, y0) - MIN (y, y0);
gl_label_object_set_size (GL_LABEL_OBJECT(object),
w, h);
- gl_label_object_set_line_color (GL_LABEL_OBJECT(object),
- gl_view_get_default_line_color(view));
- gl_label_object_set_fill_color (GL_LABEL_OBJECT(object),
- gl_view_get_default_fill_color(view));
+ line_color_node->color = gl_view_get_default_line_color(view);
+ gl_label_object_set_line_color (GL_LABEL_OBJECT(object), line_color_node);
+
+ fill_color_node->color = gl_view_get_default_fill_color(view);
+ gl_label_object_set_fill_color (GL_LABEL_OBJECT(object), fill_color_node);
gl_view_unselect_all (view);
gl_view_object_select (GL_VIEW_OBJECT(view_ellipse));
gl_view_arrow_mode (view);
+
+ gl_color_node_free (&fill_color_node);
+ gl_color_node_free (&line_color_node);
return TRUE;
default:
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*/
+#include <config.h>
#include <glib.h>
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*/
+#include <config.h>
#include <glib.h>
{
glViewLine *view_line;
gdouble line_width;
- guint line_color;
+ glColorNode *line_color_node;
gdouble w, h;
GnomeCanvasPoints *points;
/* Query properties of object. */
gl_label_object_get_size (GL_LABEL_OBJECT(object), &w, &h);
line_width = gl_label_object_get_line_width(GL_LABEL_OBJECT(object));
- line_color = gl_label_object_get_line_color(GL_LABEL_OBJECT(object));
+ line_color_node = gl_label_object_get_line_color(GL_LABEL_OBJECT(object));
+ if (line_color_node->field_flag)
+ {
+ line_color_node->color = GL_COLOR_MERGE_DEFAULT;
+ }
/* Create analogous canvas item. */
points = gnome_canvas_points_new (2);
gnome_canvas_line_get_type (),
"points", points,
"width_units", line_width,
- "fill_color_rgba", line_color,
+ "fill_color_rgba", line_color_node->color,
NULL);
+ gl_color_node_free (&line_color_node);
gnome_canvas_points_free (points);
g_signal_connect (G_OBJECT (object), "changed",
G_CALLBACK (update_editor_from_move_cb), editor);
g_signal_connect (G_OBJECT (object->parent), "size_changed",
G_CALLBACK (update_editor_from_label_cb), editor);
+ g_signal_connect (G_OBJECT (object->parent), "merge_changed",
+ G_CALLBACK (update_editor_from_label_cb), editor);
gl_debug (DEBUG_VIEW, "END");
glViewLine *view_line)
{
gdouble line_width;
- guint line_color;
+ glColorNode *line_color_node;
gdouble w, h;
- GnomeCanvasPoints *points;
+ GnomeCanvasPoints *points;
gl_debug (DEBUG_VIEW, "START");
/* Query properties of object. */
gl_label_object_get_size (GL_LABEL_OBJECT(object), &w, &h);
line_width = gl_label_object_get_line_width(GL_LABEL_OBJECT(object));
- line_color = gl_label_object_get_line_color(GL_LABEL_OBJECT(object));
+ line_color_node = gl_label_object_get_line_color(GL_LABEL_OBJECT(object));
+ if (line_color_node->field_flag)
+ {
+ line_color_node->color = GL_COLOR_MERGE_DEFAULT;
+ }
/* Adjust appearance of analogous canvas item. */
points = gnome_canvas_points_new (2);
gnome_canvas_item_set (view_line->private->item,
"points", points,
"width_units", line_width,
- "fill_color_rgba", line_color,
+ "fill_color_rgba", line_color_node->color,
NULL);
+ gl_color_node_free (&line_color_node);
gnome_canvas_points_free (points);
gl_debug (DEBUG_VIEW, "END");
glLabelObject *object)
{
gdouble x, y, w, h;
- guint line_color;
+ glColorNode *line_color_node;
gdouble line_width;
gl_debug (DEBUG_VIEW, "START");
gl_object_editor_get_lsize (editor, &w, &h);
gl_label_object_set_size (object, w, h);
-
- line_color = gl_object_editor_get_line_color (editor);
- gl_label_object_set_line_color (object, line_color);
+
+ line_color_node = gl_object_editor_get_line_color (editor);
+ gl_label_object_set_line_color (object, line_color_node);
+ gl_color_node_free (&line_color_node);
line_width = gl_object_editor_get_line_width (editor);
gl_label_object_set_line_width (object, line_width);
glObjectEditor *editor)
{
gdouble w, h;
- guint line_color;
+ glColorNode *line_color_node;
gdouble line_width;
+ glMerge *merge;
gl_debug (DEBUG_VIEW, "START");
gl_label_object_get_size (object, &w, &h);
gl_object_editor_set_lsize (editor, w, h);
+
+ merge = gl_label_get_merge (GL_LABEL(object->parent));
- line_color = gl_label_object_get_line_color (GL_LABEL_OBJECT(object));
- gl_object_editor_set_line_color (editor, line_color);
+ line_color_node = gl_label_object_get_line_color (GL_LABEL_OBJECT(object));
+ gl_object_editor_set_line_color (editor, (merge != NULL), line_color_node);
+ gl_color_node_free (&line_color_node);
line_width = gl_label_object_get_line_width (GL_LABEL_OBJECT(object));
gl_object_editor_set_line_width (editor, line_width);
glObjectEditor *editor)
{
gdouble label_width, label_height;
+ glMerge *merge;
gl_debug (DEBUG_VIEW, "START");
label_width, label_height);
gl_object_editor_set_max_lsize (GL_OBJECT_EDITOR (editor),
label_width, label_height);
+
+ merge = gl_label_get_merge (label);
+ gl_object_editor_set_key_names (editor, merge);
gl_debug (DEBUG_VIEW, "END");
}
GdkEvent *event,
glView *view)
{
- static gdouble x0, y0;
- static gboolean dragging = FALSE;
+ static gdouble x0, y0;
+ static gboolean dragging = FALSE;
static glViewObject *view_line;
static GObject *object;
- gdouble x, y, w, h;
+ gdouble x, y, w, h;
+ glColorNode *line_color_node;
gl_debug (DEBUG_VIEW, "");
case GDK_BUTTON_PRESS:
switch (event->button.button) {
case 1:
+ line_color_node = gl_color_node_new_default ();
dragging = TRUE;
gnome_canvas_item_grab (canvas->root,
GDK_POINTER_MOTION_MASK |
0.0, 0.0);
gl_label_object_set_line_width (GL_LABEL_OBJECT(object),
gl_view_get_default_line_width(view));
+ line_color_node->color = gl_color_set_opacity (gl_view_get_default_line_color(view), 0.5);
gl_label_object_set_line_color (GL_LABEL_OBJECT(object),
- gl_color_set_opacity (gl_view_get_default_line_color(view), 0.5));
+ line_color_node);
view_line = gl_view_line_new (GL_LABEL_LINE(object),
view);
x0 = x;
y0 = y;
+ gl_color_node_free (&line_color_node);
return TRUE;
default:
case GDK_BUTTON_RELEASE:
switch (event->button.button) {
case 1:
+ line_color_node = gl_color_node_new_default ();
dragging = FALSE;
gnome_canvas_item_ungrab (canvas->root, event->button.time);
gnome_canvas_window_to_world (canvas,
h = y - y0;
gl_label_object_set_size (GL_LABEL_OBJECT(object),
w, h);
+ line_color_node->color = gl_view_get_default_line_color(view);
gl_label_object_set_line_color (GL_LABEL_OBJECT(object),
- gl_view_get_default_line_color(view));
+ line_color_node);
gl_view_unselect_all (view);
gl_view_object_select (GL_VIEW_OBJECT(view_line));
gl_view_arrow_mode (view);
+ gl_color_node_free (&line_color_node);
return TRUE;
default:
}
}
-
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*/
+#include <config.h>
#include <glib.h>
gl_object_editor_set_text_buffer (GL_OBJECT_EDITOR(editor), buffer);
/* Update */
+ update_editor_from_label_cb (object->parent, GL_OBJECT_EDITOR(editor));
update_editor_from_object_cb (object, GL_OBJECT_EDITOR(editor));
update_editor_from_move_cb (object, 0, 0, GL_OBJECT_EDITOR(editor));
- update_editor_from_label_cb (object->parent, GL_OBJECT_EDITOR(editor));
/* Connect signals. */
g_signal_connect (G_OBJECT (editor), "changed",
g_signal_connect (G_OBJECT (object), "moved",
G_CALLBACK (update_editor_from_move_cb), editor);
g_signal_connect (G_OBJECT (object->parent), "size_changed",
- G_CALLBACK (update_editor_from_label_cb), editor);
+ G_CALLBACK (update_editor_from_label_cb), editor);
g_signal_connect (G_OBJECT (object->parent), "merge_changed",
G_CALLBACK (update_editor_from_label_cb), editor);
gdouble font_size;
GnomeFontWeight font_weight;
gboolean font_italic_flag;
- guint color;
+ glColorNode *color_node;
GtkJustification just;
gdouble text_line_spacing;
gboolean auto_shrink;
font_size = gl_object_editor_get_font_size (editor);
font_weight = gl_object_editor_get_font_weight (editor);
font_italic_flag = gl_object_editor_get_font_italic_flag (editor);
- color = gl_object_editor_get_text_color (editor);
+ color_node = gl_object_editor_get_text_color (editor);
just = gl_object_editor_get_text_alignment (editor);
text_line_spacing = gl_object_editor_get_text_line_spacing (editor);
auto_shrink = gl_object_editor_get_text_auto_shrink (editor);
gl_label_object_set_font_size (object, font_size);
gl_label_object_set_font_weight (object, font_weight);
gl_label_object_set_font_italic_flag (object, font_italic_flag);
- gl_label_object_set_text_color (object, color);
+ gl_label_object_set_text_color (object, color_node);
gl_label_object_set_text_alignment (object, just);
gl_label_object_set_text_line_spacing (object, text_line_spacing);
gl_label_text_set_auto_shrink (GL_LABEL_TEXT (object), auto_shrink);
+ gl_color_node_free (&color_node);
g_free (font_family);
g_signal_handlers_unblock_by_func (G_OBJECT(object),
gdouble font_size;
GnomeFontWeight font_weight;
gboolean font_italic_flag;
- guint color;
+ glColorNode *color_node;
GtkJustification just;
gdouble text_line_spacing;
gboolean auto_shrink;
+ glMerge *merge;
gl_debug (DEBUG_VIEW, "START");
gl_label_object_get_size (object, &w, &h);
gl_object_editor_set_size (editor, w, h);
+ merge = gl_label_get_merge (GL_LABEL(object->parent));
font_family = gl_label_object_get_font_family (object);
font_size = gl_label_object_get_font_size (object);
font_weight = gl_label_object_get_font_weight (object);
font_italic_flag = gl_label_object_get_font_italic_flag (object);
- color = gl_label_object_get_text_color (object);
+ color_node = gl_label_object_get_text_color (object);
just = gl_label_object_get_text_alignment (object);
text_line_spacing = gl_label_object_get_text_line_spacing (object);
auto_shrink = gl_label_text_get_auto_shrink (GL_LABEL_TEXT (object));
gl_object_editor_set_font_size (editor, font_size);
gl_object_editor_set_font_weight (editor, font_weight);
gl_object_editor_set_font_italic_flag (editor, font_italic_flag);
- gl_object_editor_set_text_color (editor, color);
+ gl_object_editor_set_text_color (editor, (merge != NULL), color_node);
gl_object_editor_set_text_alignment (editor, just);
gl_object_editor_set_text_line_spacing (editor, text_line_spacing);
gl_object_editor_set_text_auto_shrink (editor, auto_shrink);
+ gl_color_node_free (&color_node);
g_free (font_family);
gl_debug (DEBUG_VIEW, "END");
GdkEvent *event,
glView *view)
{
- static gdouble x0, y0;
- static gboolean dragging = FALSE;
+ static gdouble x0, y0;
+ static gboolean dragging = FALSE;
static glViewObject *view_text;
static GObject *object;
- gdouble x, y;
+ gdouble x, y;
GList *lines;
gchar *family;
+ glColorNode *color_node;
gl_debug (DEBUG_VIEW, "");
gl_debug (DEBUG_VIEW, "BUTTON_PRESS");
switch (event->button.button) {
case 1:
+ color_node = gl_color_node_new_default ();
dragging = TRUE;
gnome_canvas_item_grab (canvas->root,
GDK_POINTER_MOTION_MASK |
gl_view_get_default_font_weight (view));
gl_label_object_set_font_italic_flag (GL_LABEL_OBJECT(object),
gl_view_get_default_font_italic_flag (view));
+
+ color_node->color = gl_color_set_opacity (gl_view_get_default_text_color (view), 0.5);
gl_label_object_set_text_color (GL_LABEL_OBJECT(object),
- gl_color_set_opacity (gl_view_get_default_text_color (view), 0.5));
+ color_node);
gl_label_object_set_text_alignment (GL_LABEL_OBJECT(object),
gl_view_get_default_text_alignment (view));
gl_label_object_set_text_line_spacing (GL_LABEL_OBJECT(object), gl_view_get_default_text_line_spacing (view));
view);
x0 = x;
y0 = y;
+ gl_color_node_free (&color_node);
return TRUE;
default:
gl_debug (DEBUG_VIEW, "BUTTON_RELEASE");
switch (event->button.button) {
case 1:
+ color_node = gl_color_node_new_default ();
dragging = FALSE;
gnome_canvas_item_ungrab (canvas->root, event->button.time);
gnome_canvas_window_to_world (canvas,
gl_view_get_default_font_weight (view));
gl_label_object_set_font_italic_flag (GL_LABEL_OBJECT(object),
gl_view_get_default_font_italic_flag (view));
+
+ color_node->color = gl_view_get_default_text_color (view);
gl_label_object_set_text_color (GL_LABEL_OBJECT(object),
- gl_view_get_default_text_color (view));
+ color_node);
gl_label_object_set_text_alignment (GL_LABEL_OBJECT(object),
gl_view_get_default_text_alignment (view));
gl_label_object_set_text_line_spacing (GL_LABEL_OBJECT(object), gl_view_get_default_text_line_spacing (view));
gl_view_unselect_all (view);
gl_view_object_select (GL_VIEW_OBJECT(view_text));
gl_view_arrow_mode (view);
+ gl_color_node_free (&color_node);
return TRUE;
default:
gboolean font_italic_flag;
gdouble font_size;
gdouble text_line_spacing;
- guint color;
+ glColorNode *color_node;
GtkJustification just;
GnomeFont *font;
GnomeGlyphList *glyphlist;
text_line_spacing = gl_label_object_get_text_line_spacing (object);
font_weight = gl_label_object_get_font_weight (object);
font_italic_flag = gl_label_object_get_font_italic_flag (object);
- color = gl_label_object_get_text_color (object);
+ color_node = gl_label_object_get_text_color (object);
+ if (color_node->field_flag)
+ {
+ color_node->color = GL_COLOR_MERGE_DEFAULT;
+ }
just = gl_label_object_get_text_alignment (object);
buffer = gl_label_text_get_buffer(GL_LABEL_TEXT(object));
gtk_text_buffer_get_bounds (buffer, &start, &end);
/* render to group, one item per line. */
for (i = 0; line[i] != NULL; i++) {
- glyphlist = gnome_glyphlist_from_text_dumb (font, color,
+ glyphlist = gnome_glyphlist_from_text_dumb (font, color_node->color,
0.0, 0.0,
line[i]);
}
/* clean up */
+ gl_color_node_free (&color_node);
g_strfreev (line);
g_free (text);
GnomeFontWeight font_weight;
gboolean font_italic_flag;
gdouble font_size;
- guint color;
+ glColorNode *color_node;
GtkJustification just;
GnomeFont *font;
GnomeGlyphList *glyphlist;
font_size = gl_label_object_get_font_size (object);
font_weight = gl_label_object_get_font_weight (object);
font_italic_flag = gl_label_object_get_font_italic_flag (object);
- color = gl_label_object_get_text_color (object);
+ color_node = gl_label_object_get_text_color (object);
just = gl_label_object_get_text_alignment (object);
buffer = gl_label_text_get_buffer(GL_LABEL_TEXT(object));
gtk_text_buffer_get_bounds (buffer, &start, &end);
if ( i == cursor_line ) {
GnomeCanvasPoints *points;
- glyphlist = gnome_glyphlist_from_text_dumb (font, color,
+ glyphlist = gnome_glyphlist_from_text_dumb (font, color_node->color,
0.0, 0.0,
line[i]);
break; /* shouldn't happen */
}
- glyphlist = gnome_glyphlist_from_text_sized_dumb (font, color,
+ glyphlist = gnome_glyphlist_from_text_sized_dumb (font, color_node->color,
0.0, 0.0,
line[i],
cursor_char);
}
/* clean up */
+ gl_color_node_free (&color_node);
g_strfreev (line);
g_free (text);
{
gl_debug (DEBUG_VIEW, "");
}
-
gdouble x_pixels_per_mm, y_pixels_per_mm;
gdouble scale;
- if (!gtk_widget_has_screen) return 1.0;
+ if (!gtk_widget_has_screen (GTK_WIDGET (view->canvas))) return 1.0;
screen = gtk_widget_get_screen (GTK_WIDGET (view->canvas));
/*****************************************************************************/
void
gl_view_set_selection_text_color (glView *view,
- guint text_color)
+ glColorNode *text_color_node)
{
GList *p;
glLabelObject *object;
for (p = view->selected_object_list; p != NULL; p = p->next) {
object = gl_view_object_get_object(GL_VIEW_OBJECT (p->data));
- gl_label_object_set_text_color (object, text_color);
+ gl_label_object_set_text_color (object, text_color_node);
}
/*****************************************************************************/
void
gl_view_set_selection_fill_color (glView *view,
- guint fill_color)
+ glColorNode *fill_color_node)
{
GList *p;
glLabelObject *object;
for (p = view->selected_object_list; p != NULL; p = p->next) {
object = gl_view_object_get_object(GL_VIEW_OBJECT (p->data));
- gl_label_object_set_fill_color (object, fill_color);
+ gl_label_object_set_fill_color (object, fill_color_node);
}
/*****************************************************************************/
void
gl_view_set_selection_line_color (glView *view,
- guint line_color)
+ glColorNode *line_color_node)
{
GList *p;
glLabelObject *object;
for (p = view->selected_object_list; p != NULL; p = p->next) {
object = gl_view_object_get_object(GL_VIEW_OBJECT (p->data));
- gl_label_object_set_line_color (object, line_color);
+ gl_label_object_set_line_color (object, line_color_node);
}
{
gl_debug (DEBUG_VIEW, "START");
- view->home_scale = get_home_scale (view);
+ if (gtk_widget_has_screen (GTK_WIDGET (view->canvas))) {
- gnome_canvas_set_pixels_per_unit (GNOME_CANVAS (view->canvas),
- view->zoom * view->home_scale);
+ view->home_scale = get_home_scale (view);
+
+ gnome_canvas_set_pixels_per_unit (GNOME_CANVAS (view->canvas),
+ view->zoom * view->home_scale);
+
+ if (view->zoom_to_fit_flag) {
+ /* Maintain best fit zoom */
+ gl_view_zoom_to_fit (view);
+ }
- if (view->zoom_to_fit_flag) {
- /* Maintain best fit zoom */
- gl_view_zoom_to_fit (view);
}
gl_debug (DEBUG_VIEW, "END");
return view->default_fill_color;
}
-
typedef struct _glViewClass glViewClass;
#include "view-object.h"
+#include "color.h"
struct _glView {
GtkVBox parent_widget;
GtkJustification text_alignment);
void gl_view_set_selection_text_color (glView *view,
- guint text_color);
+ glColorNode *text_color_node);
gboolean gl_view_can_selection_fill (glView *view);
void gl_view_set_selection_fill_color (glView *view,
- guint fill_color);
+ glColorNode *fill_color);
gboolean gl_view_can_selection_line_color (glView *view);
void gl_view_set_selection_line_color (glView *view,
- guint line_color);
+ glColorNode *line_color_node);
gboolean gl_view_can_selection_line_width (glView *view);
/*============================================================================*/
#define DEFAULT_WINDOW_WIDTH 788
-#define DEFAULT_WINDOW_HEIGHT 560
+#define DEFAULT_WINDOW_HEIGHT 600
#define CURSOR_INFO_WIDTH 150
#define ZOOM_INFO_WIDTH 50
gl_debug (DEBUG_WINDOW, "END");
}
-
gdouble font_size;
GnomeFontWeight font_weight;
gboolean font_italic_flag;
- guint color;
+ glColorNode *color_node;
GtkJustification just;
xmlNodePtr line_node, text_node;
glTextNode *node_text;
just = gl_util_string_to_just (string);
g_free (string);
- color = gl_xml_get_prop_uint (object_node, "color", 0);
+ color_node = gl_color_node_new_default ();
+ color_node->color = gl_xml_get_prop_uint (object_node, "color", 0);
gl_label_object_set_font_family (GL_LABEL_OBJECT(object), font_family);
gl_label_object_set_font_size (GL_LABEL_OBJECT(object), font_size);
gl_label_object_set_font_weight (GL_LABEL_OBJECT(object), font_weight);
gl_label_object_set_font_italic_flag (GL_LABEL_OBJECT(object), font_italic_flag);
- gl_label_object_set_text_color (GL_LABEL_OBJECT(object), color);
+ gl_label_object_set_text_color (GL_LABEL_OBJECT(object), color_node);
gl_label_object_set_text_alignment (GL_LABEL_OBJECT(object), just);
+
+ gl_color_node_free (&color_node);
lines = NULL;
for (line_node = object_node->xmlChildrenNode; line_node != NULL;
glLabelBox *object)
{
gdouble w, h, line_width;
- guint line_color, fill_color;
+ glColorNode *line_color_node;
+ glColorNode *fill_color_node;
gl_debug (DEBUG_XML, "START");
line_width = gl_xml_get_prop_double (node, "line_width", 0);
- line_color = gl_xml_get_prop_uint (node, "line_color", 0);
- fill_color = gl_xml_get_prop_uint (node, "fill_color", 0);
+ line_color_node = gl_color_node_new_default ();
+ line_color_node->color = gl_xml_get_prop_uint (node, "line_color", 0);
+
+ fill_color_node = gl_color_node_new_default ();
+ fill_color_node->color = gl_xml_get_prop_uint (node, "fill_color", 0);
gl_label_object_set_size (GL_LABEL_OBJECT(object), w, h);
gl_label_object_set_line_width (GL_LABEL_OBJECT(object), line_width);
- gl_label_object_set_line_color (GL_LABEL_OBJECT(object), line_color);
- gl_label_object_set_fill_color (GL_LABEL_OBJECT(object), fill_color);
+ gl_label_object_set_line_color (GL_LABEL_OBJECT(object), line_color_node);
+ gl_label_object_set_fill_color (GL_LABEL_OBJECT(object), fill_color_node);
+ gl_color_node_free (&line_color_node);
+ gl_color_node_free (&fill_color_node);
gl_debug (DEBUG_XML, "END");
}
glLabelLine *object)
{
gdouble w, h, line_width;
- guint line_color;
+ glColorNode *line_color_node;
gl_debug (DEBUG_XML, "START");
line_width = gl_xml_get_prop_double (node, "line_width", 0);
- line_color = gl_xml_get_prop_uint (node, "line_color", 0);
+ line_color_node = gl_color_node_new_default ();
+ line_color_node->color = gl_xml_get_prop_uint (node, "line_color", 0);
gl_label_object_set_size (GL_LABEL_OBJECT(object), w, h);
gl_label_object_set_line_width (GL_LABEL_OBJECT(object), line_width);
- gl_label_object_set_line_color (GL_LABEL_OBJECT(object), line_color);
+ gl_label_object_set_line_color (GL_LABEL_OBJECT(object), line_color_node);
+ gl_color_node_free (&line_color_node);
+
gl_debug (DEBUG_XML, "END");
}
glLabelEllipse *object)
{
gdouble w, h, line_width;
- guint line_color, fill_color;
+ glColorNode *line_color_node;
+ glColorNode *fill_color_node;
gl_debug (DEBUG_XML, "START");
line_width = gl_xml_get_prop_double (node, "line_width", 0);
- line_color = gl_xml_get_prop_uint (node, "line_color", 0);
- fill_color = gl_xml_get_prop_uint (node, "fill_color", 0);
+ line_color_node = gl_color_node_new_default ();
+ line_color_node->color = gl_xml_get_prop_uint (node, "line_color", 0);
+
+ fill_color_node = gl_color_node_new_default ();
+ fill_color_node->color = gl_xml_get_prop_uint (node, "fill_color", 0);
gl_label_object_set_size (GL_LABEL_OBJECT(object), w, h);
gl_label_object_set_line_width (GL_LABEL_OBJECT(object), line_width);
- gl_label_object_set_line_color (GL_LABEL_OBJECT(object), line_color);
- gl_label_object_set_fill_color (GL_LABEL_OBJECT(object), fill_color);
+ gl_label_object_set_line_color (GL_LABEL_OBJECT(object), line_color_node);
+ gl_label_object_set_fill_color (GL_LABEL_OBJECT(object), fill_color_node);
+ gl_color_node_free (&line_color_node);
+ gl_color_node_free (&fill_color_node);
gl_debug (DEBUG_XML, "END");
}
{
gchar *id;
gboolean text_flag;
- guint color;
+ glColorNode *color_node;
gdouble scale;
xmlNodePtr child;
glTextNode *text_node;
gl_debug (DEBUG_XML, "START");
- color = gl_xml_get_prop_uint (node, "color", 0);
+ color_node = gl_color_node_new_default ();
+ color_node->color = gl_xml_get_prop_uint (node, "color", 0);
id = xmlGetProp (node, "style");
scale = 0.5; /* Set to a valid value */
}
gl_label_barcode_set_props (object, id, text_flag, TRUE, 0);
- gl_label_object_set_line_color (GL_LABEL_OBJECT(object), color);
+ gl_label_object_set_line_color (GL_LABEL_OBJECT(object), color_node);
child = node->xmlChildrenNode;
text_node = g_new0 (glTextNode, 1);
}
gl_label_barcode_set_data (object, text_node);
+ gl_color_node_free (&color_node);
gl_text_node_free (&text_node);
g_free (id);
gl_debug (DEBUG_XML, "END");
}
-
gdouble font_size;
GnomeFontWeight font_weight;
gboolean font_italic_flag;
- guint color;
+ glColorNode *color_node;
GtkJustification just;
xmlNodePtr line_node, text_node;
glTextNode *node_text;
just = gl_util_string_to_just (string);
g_free (string);
- color = gl_xml_get_prop_uint (object_node, "color", 0);
+ color_node = gl_color_node_new_default ();
+ color_node->color = gl_xml_get_prop_uint (object_node, "color", 0);
lines = NULL;
for (line_node = object_node->xmlChildrenNode;
gl_label_object_set_font_size (GL_LABEL_OBJECT(object), font_size);
gl_label_object_set_font_weight (GL_LABEL_OBJECT(object), font_weight);
gl_label_object_set_font_italic_flag (GL_LABEL_OBJECT(object), font_italic_flag);
- gl_label_object_set_text_color (GL_LABEL_OBJECT(object), color);
+ gl_label_object_set_text_color (GL_LABEL_OBJECT(object), color_node);
gl_label_object_set_text_alignment (GL_LABEL_OBJECT(object), just);
+ gl_color_node_free (&color_node);
gl_text_node_lines_free (&lines);
g_free (font_family);
{
GObject *object;
gdouble line_width;
- guint line_color, fill_color;
+ glColorNode *line_color_node;
+ glColorNode *fill_color_node;
gdouble w, h;
gl_debug (DEBUG_XML, "START");
line_width = gl_xml_get_prop_length (node, "line_width", 1.0);
- line_color = gl_xml_get_prop_uint (node, "line_color", 0);
- fill_color = gl_xml_get_prop_uint (node, "fill_color", 0);
+ line_color_node = gl_color_node_new_default ();
+ line_color_node->color = gl_xml_get_prop_uint (node, "line_color", 0);
+
+ fill_color_node = gl_color_node_new_default ();
+ fill_color_node->color = gl_xml_get_prop_uint (node, "fill_color", 0);
gl_label_object_set_size (GL_LABEL_OBJECT(object), w, h);
gl_label_object_set_line_width (GL_LABEL_OBJECT(object), line_width);
- gl_label_object_set_line_color (GL_LABEL_OBJECT(object), line_color);
- gl_label_object_set_fill_color (GL_LABEL_OBJECT(object), fill_color);
+ gl_label_object_set_line_color (GL_LABEL_OBJECT(object), line_color_node);
+ gl_label_object_set_fill_color (GL_LABEL_OBJECT(object), fill_color_node);
+ gl_color_node_free (&line_color_node);
+ gl_color_node_free (&fill_color_node);
gl_debug (DEBUG_XML, "END");
return GL_LABEL_OBJECT(object);
{
GObject *object;
gdouble line_width;
- guint line_color;
+ glColorNode *line_color_node;
gdouble w, h;
gl_debug (DEBUG_XML, "START");
line_width = gl_xml_get_prop_length (node, "line_width", 1.0);
- line_color = gl_xml_get_prop_uint (node, "line_color", 0);
+ line_color_node = gl_color_node_new_default ();
+ line_color_node->color = gl_xml_get_prop_uint (node, "line_color", 0);
gl_label_object_set_size (GL_LABEL_OBJECT(object), w, h);
gl_label_object_set_line_width (GL_LABEL_OBJECT(object), line_width);
- gl_label_object_set_line_color (GL_LABEL_OBJECT(object), line_color);
+ gl_label_object_set_line_color (GL_LABEL_OBJECT(object), line_color_node);
+
+ gl_color_node_free (&line_color_node);
gl_debug (DEBUG_XML, "END");
{
GObject *object;
gdouble line_width;
- guint line_color, fill_color;
+ glColorNode *line_color_node;
+ glColorNode *fill_color_node;
gdouble w, h;
gl_debug (DEBUG_XML, "START");
line_width = gl_xml_get_prop_length (node, "line_width", 1.0);
- line_color = gl_xml_get_prop_uint (node, "line_color", 0);
- fill_color = gl_xml_get_prop_uint (node, "fill_color", 0);
+ line_color_node = gl_color_node_new_default ();
+ line_color_node->color = gl_xml_get_prop_uint (node, "line_color", 0);
+
+ fill_color_node = gl_color_node_new_default ();
+ fill_color_node->color = gl_xml_get_prop_uint (node, "fill_color", 0);
gl_label_object_set_size (GL_LABEL_OBJECT(object), w, h);
gl_label_object_set_line_width (GL_LABEL_OBJECT(object), line_width);
- gl_label_object_set_line_color (GL_LABEL_OBJECT(object), line_color);
- gl_label_object_set_fill_color (GL_LABEL_OBJECT(object), fill_color);
+ gl_label_object_set_line_color (GL_LABEL_OBJECT(object), line_color_node);
+ gl_label_object_set_fill_color (GL_LABEL_OBJECT(object), fill_color_node);
+ gl_color_node_free (&line_color_node);
+ gl_color_node_free (&fill_color_node);
gl_debug (DEBUG_XML, "END");
return GL_LABEL_OBJECT(object);
gchar *id;
gboolean text_flag;
gboolean checksum_flag;
- guint color;
+ glColorNode *color_node;
gl_debug (DEBUG_XML, "START");
w = gl_xml_get_prop_length (node, "w", 0);
h = gl_xml_get_prop_length (node, "h", 0);
- color = gl_xml_get_prop_uint (node, "color", 0);
+ color_node = gl_color_node_new_default ();
+ color_node->color = gl_xml_get_prop_uint (node, "color", 0);
id = xmlGetProp (node, "style");
gl_label_barcode_set_data (GL_LABEL_BARCODE(object), text_node);
gl_label_barcode_set_props (GL_LABEL_BARCODE(object),
id, text_flag, checksum_flag, 0);
- gl_label_object_set_line_color (GL_LABEL_OBJECT(object), color);
+ gl_label_object_set_line_color (GL_LABEL_OBJECT(object), color_node);
+ gl_color_node_free (&color_node);
gl_text_node_free (&text_node);
g_free (id);
gl_debug (DEBUG_TEMPLATE, "END");
}
-
xml_parse_object_box (xmlNodePtr node,
glLabel *label)
{
- GObject *object;
- gdouble x, y;
- gdouble w, h;
- gdouble line_width;
- guint line_color, fill_color;
- gdouble affine[6];
+ GObject *object;
+ gdouble x, y;
+ gdouble w, h;
+ gdouble line_width;
+ glColorNode *line_color_node;
+ gdouble affine[6];
+ gchar *string;
+ glColorNode *fill_color_node;
gl_debug (DEBUG_XML, "START");
/* line attrs */
line_width = gl_xml_get_prop_length (node, "line_width", 1.0);
- line_color = gl_xml_get_prop_uint (node, "line_color", 0);
gl_label_object_set_line_width (GL_LABEL_OBJECT(object), line_width);
- gl_label_object_set_line_color (GL_LABEL_OBJECT(object), line_color);
+
+ line_color_node = gl_color_node_new_default ();
+ string = xmlGetProp (node, "line_color_field");
+ if ( string ) {
+ line_color_node->field_flag = TRUE;
+ line_color_node->key = string;
+ } else {
+ line_color_node->color = gl_xml_get_prop_uint (node, "line_color", 0);
+ }
+ gl_label_object_set_line_color (GL_LABEL_OBJECT(object), line_color_node);
+ gl_color_node_free (&line_color_node);
- /* fill attrs */
- fill_color = gl_xml_get_prop_uint (node, "fill_color", 0);
- gl_label_object_set_fill_color (GL_LABEL_OBJECT(object), fill_color);
+ /* fill attrs */
+ fill_color_node = gl_color_node_new_default ();
+ string = xmlGetProp (node, "fill_color_field");
+ if ( string ) {
+ fill_color_node->field_flag = TRUE;
+ fill_color_node->key = string;
+ } else {
+ fill_color_node->color = gl_xml_get_prop_uint (node, "fill_color", 0);
+ }
+ gl_label_object_set_fill_color (GL_LABEL_OBJECT(object), fill_color_node);
+ gl_color_node_free (&fill_color_node);
+
/* affine attrs */
affine[0] = gl_xml_get_prop_double (node, "a0", 0.0);
affine[1] = gl_xml_get_prop_double (node, "a1", 0.0);
xml_parse_object_ellipse (xmlNodePtr node,
glLabel *label)
{
- GObject *object;
- gdouble x, y;
- gdouble w, h;
- gdouble line_width;
- guint line_color, fill_color;
- gdouble affine[6];
+ GObject *object;
+ gdouble x, y;
+ gdouble w, h;
+ gdouble line_width;
+ glColorNode *line_color_node;
+ gdouble affine[6];
+ gchar *string;
+ glColorNode *fill_color_node;
gl_debug (DEBUG_XML, "START");
/* line attrs */
line_width = gl_xml_get_prop_length (node, "line_width", 1.0);
- line_color = gl_xml_get_prop_uint (node, "line_color", 0);
gl_label_object_set_line_width (GL_LABEL_OBJECT(object), line_width);
- gl_label_object_set_line_color (GL_LABEL_OBJECT(object), line_color);
+
+ line_color_node = gl_color_node_new_default ();
+ string = xmlGetProp (node, "line_color_field");
+ if ( string ) {
+ line_color_node->field_flag = TRUE;
+ line_color_node->key = string;
+ } else {
+ line_color_node->color = gl_xml_get_prop_uint (node, "line_color", 0);
+ }
+ gl_label_object_set_line_color (GL_LABEL_OBJECT(object), line_color_node);
+ gl_color_node_free (&line_color_node);
+
/* fill attrs */
- fill_color = gl_xml_get_prop_uint (node, "fill_color", 0);
- gl_label_object_set_fill_color (GL_LABEL_OBJECT(object), fill_color);
+ fill_color_node = gl_color_node_new_default ();
+ string = xmlGetProp (node, "fill_color_field");
+ if ( string ) {
+ fill_color_node->field_flag = TRUE;
+ fill_color_node->key = string;
+ } else {
+ fill_color_node->color = gl_xml_get_prop_uint (node, "fill_color", 0);
+ }
+ gl_label_object_set_fill_color (GL_LABEL_OBJECT(object), fill_color_node);
+ gl_color_node_free (&fill_color_node);
/* affine attrs */
affine[0] = gl_xml_get_prop_double (node, "a0", 0.0);
xml_parse_object_line (xmlNodePtr node,
glLabel *label)
{
- GObject *object;
- gdouble x, y;
- gdouble dx, dy;
- gdouble line_width;
- guint line_color;
- gdouble affine[6];
+ GObject *object;
+ gdouble x, y;
+ gdouble dx, dy;
+ gdouble line_width;
+ glColorNode *line_color_node;
+ gdouble affine[6];
+ gchar *string;
gl_debug (DEBUG_XML, "START");
/* line attrs */
line_width = gl_xml_get_prop_length (node, "line_width", 1.0);
- line_color = gl_xml_get_prop_uint (node, "line_color", 0);
gl_label_object_set_line_width (GL_LABEL_OBJECT(object), line_width);
- gl_label_object_set_line_color (GL_LABEL_OBJECT(object), line_color);
+
+ line_color_node = gl_color_node_new_default ();
+ string = xmlGetProp (node, "line_color_field");
+ if ( string ) {
+ line_color_node->field_flag = TRUE;
+ line_color_node->key = string;
+ } else {
+ line_color_node->color = gl_xml_get_prop_uint (node, "line_color", 0);
+ }
+ gl_label_object_set_line_color (GL_LABEL_OBJECT(object), line_color_node);
+ gl_color_node_free (&line_color_node);
/* affine attrs */
affine[0] = gl_xml_get_prop_double (node, "a0", 0.0);
gchar *id;
gboolean text_flag;
gboolean checksum_flag;
- guint color;
+ glColorNode *color_node;
guint format_digits;
gdouble affine[6];
id = xmlGetProp (node, "style");
text_flag = gl_xml_get_prop_boolean (node, "text", FALSE);
checksum_flag = gl_xml_get_prop_boolean (node, "checksum", TRUE);
- color = gl_xml_get_prop_uint (node, "color", 0);
format_digits = gl_xml_get_prop_uint (node, "format", 10);
gl_label_barcode_set_props (GL_LABEL_BARCODE(object),
id, text_flag, checksum_flag, format_digits);
- gl_label_object_set_line_color (GL_LABEL_OBJECT(object), color);
g_free (id);
+
+ color_node = gl_color_node_new_default ();
+ string = xmlGetProp (node, "color_field");
+ if ( string ) {
+ color_node->field_flag = TRUE;
+ color_node->key = string;
+ } else {
+ color_node->color = gl_xml_get_prop_uint (node, "color", 0);
+ }
+ gl_label_object_set_line_color (GL_LABEL_OBJECT(object), color_node);
+ gl_color_node_free (&color_node);
/* data or field attr */
string = xmlGetProp (node, "data");
gdouble font_size;
GnomeFontWeight font_weight;
gboolean font_italic_flag;
- guint color;
+ glColorNode *color_node;
gdouble text_line_spacing;
gchar *string;
GList *lines, *text_nodes;
gl_label_object_set_font_italic_flag (object, font_italic_flag);
/* Text color attr */
- color = gl_xml_get_prop_uint (node, "color", 0);
- gl_label_object_set_text_color (object, color);
+ color_node = gl_color_node_new_default ();
+ string = xmlGetProp (node, "color_field");
+ if ( string ) {
+ color_node->field_flag = TRUE;
+ color_node->key = string;
+ } else {
+ color_node->color = gl_xml_get_prop_uint (node, "color", 0);
+ }
+ gl_label_object_set_text_color (object, color_node);
+ gl_color_node_free (&color_node);
+
/* Text line spacing attr */
text_line_spacing = gl_xml_get_prop_double (node, "line_spacing", 1.0);
gdouble x, y;
gdouble w, h;
gdouble line_width;
- guint line_color, fill_color;
+ glColorNode *line_color_node;
gdouble affine[6];
+ glColorNode *fill_color_node;
gl_debug (DEBUG_XML, "START");
/* line attrs */
line_width = gl_label_object_get_line_width (GL_LABEL_OBJECT(object));
- line_color = gl_label_object_get_line_color (GL_LABEL_OBJECT(object));
gl_xml_set_prop_length (node, "line_width", line_width);
- gl_xml_set_prop_uint_hex (node, "line_color", line_color);
+
+ line_color_node = gl_label_object_get_line_color (GL_LABEL_OBJECT(object));
+ if (line_color_node->field_flag)
+ {
+ xmlSetProp (node, "line_color_field", line_color_node->key);
+ }
+ else
+ {
+ gl_xml_set_prop_uint_hex (node, "line_color", line_color_node->color);
+ }
+ gl_color_node_free (&line_color_node);
- /* fill attrs */
- fill_color = gl_label_object_get_fill_color (GL_LABEL_OBJECT(object));
- gl_xml_set_prop_uint_hex (node, "fill_color", fill_color);
+ /* fill attrs (color or field) */
+ fill_color_node = gl_label_object_get_fill_color (GL_LABEL_OBJECT(object));
+ if (fill_color_node->field_flag)
+ {
+ xmlSetProp (node, "fill_color_field", fill_color_node->key);
+ }
+ else
+ {
+ gl_xml_set_prop_uint_hex (node, "fill_color", fill_color_node->color);
+ }
+ gl_color_node_free (&fill_color_node);
/* affine attrs */
gl_label_object_get_affine (object, affine);
gdouble x, y;
gdouble w, h;
gdouble line_width;
- guint line_color, fill_color;
+ glColorNode *line_color_node;
gdouble affine[6];
+ glColorNode *fill_color_node;
gl_debug (DEBUG_XML, "START");
/* line attrs */
line_width = gl_label_object_get_line_width (GL_LABEL_OBJECT(object));
- line_color = gl_label_object_get_line_color (GL_LABEL_OBJECT(object));
gl_xml_set_prop_length (node, "line_width", line_width);
- gl_xml_set_prop_uint_hex (node, "line_color", line_color);
+
+ line_color_node = gl_label_object_get_line_color (GL_LABEL_OBJECT(object));
+ if (line_color_node->field_flag)
+ {
+ xmlSetProp (node, "line_color_field", line_color_node->key);
+ }
+ else
+ {
+ gl_xml_set_prop_uint_hex (node, "line_color", line_color_node->color);
+ }
+ gl_color_node_free (&line_color_node);
- /* fill attrs */
- fill_color = gl_label_object_get_fill_color (GL_LABEL_OBJECT(object));
- gl_xml_set_prop_uint_hex (node, "fill_color", fill_color);
+
+ /* fill attrs (color or field) */
+ fill_color_node = gl_label_object_get_fill_color (GL_LABEL_OBJECT(object));
+ if (fill_color_node->field_flag)
+ {
+ xmlSetProp (node, "fill_color_field", fill_color_node->key);
+ }
+ else
+ {
+ gl_xml_set_prop_uint_hex (node, "fill_color", fill_color_node->color);
+ }
+ gl_color_node_free (&fill_color_node);
/* affine attrs */
gl_label_object_get_affine (object, affine);
gdouble x, y;
gdouble dx, dy;
gdouble line_width;
- guint line_color;
+ glColorNode *line_color_node;
gdouble affine[6];
gl_debug (DEBUG_XML, "START");
/* line attrs */
line_width = gl_label_object_get_line_width (GL_LABEL_OBJECT(object));
- line_color = gl_label_object_get_line_color (GL_LABEL_OBJECT(object));
gl_xml_set_prop_length (node, "line_width", line_width);
- gl_xml_set_prop_uint_hex (node, "line_color", line_color);
+
+ line_color_node = gl_label_object_get_line_color (GL_LABEL_OBJECT(object));
+ if (line_color_node->field_flag)
+ {
+ xmlSetProp (node, "line_color_field", line_color_node->key);
+ }
+ else
+ {
+ gl_xml_set_prop_uint_hex (node, "line_color", line_color_node->color);
+ }
+ gl_color_node_free (&line_color_node);
+
/* affine attrs */
gl_label_object_get_affine (object, affine);
gchar *id;
gboolean text_flag;
gboolean checksum_flag;
- guint color;
+ glColorNode *color_node;
guint format_digits;
gdouble affine[6];
/* Barcode properties attrs */
gl_label_barcode_get_props (GL_LABEL_BARCODE(object),
&id, &text_flag, &checksum_flag, &format_digits);
- color = gl_label_object_get_line_color (GL_LABEL_OBJECT(object));
xmlSetProp (node, "style", id);
gl_xml_set_prop_boolean (node, "text", text_flag);
gl_xml_set_prop_boolean (node, "checksum", checksum_flag);
- gl_xml_set_prop_uint_hex (node, "color", color);
+
g_free (id);
+
+ color_node = gl_label_object_get_line_color (GL_LABEL_OBJECT(object));
+ if (color_node->field_flag)
+ {
+ xmlSetProp (node, "color_field", color_node->key);
+ }
+ else
+ {
+ gl_xml_set_prop_uint_hex (node, "color", color_node->color);
+ }
+ gl_color_node_free (&color_node);
+
/* data OR field attr */
text_node = gl_label_barcode_get_data (GL_LABEL_BARCODE(object));
gdouble font_size;
GnomeFontWeight font_weight;
gboolean font_italic_flag;
- guint color;
+ glColorNode *color_node;
GtkJustification just;
gdouble text_line_spacing;
GList *lines, *p_line, *p_node;
text_line_spacing = gl_label_object_get_text_line_spacing (GL_LABEL_OBJECT(object_text));
font_weight = gl_label_object_get_font_weight (GL_LABEL_OBJECT(object_text));
font_italic_flag = gl_label_object_get_font_italic_flag (GL_LABEL_OBJECT(object_text));
- color = gl_label_object_get_text_color (GL_LABEL_OBJECT(object_text));
+
+ color_node = gl_label_object_get_text_color (GL_LABEL_OBJECT(object_text));
+ if (color_node->field_flag)
+ {
+ xmlSetProp (node, "color_field", color_node->key);
+ }
+ else
+ {
+ gl_xml_set_prop_uint_hex (node, "color", color_node->color);
+ }
+ gl_color_node_free (&color_node);
+
just = gl_label_object_get_text_alignment (GL_LABEL_OBJECT(object_text));
xmlSetProp (node, "font_family", font_family);
gl_xml_set_prop_double (node, "font_size", font_size);
xmlSetProp (node, "font_weight", gl_util_weight_to_string (font_weight));
gl_xml_set_prop_boolean (node, "font_italic", font_italic_flag);
- gl_xml_set_prop_uint_hex (node, "color", color);
+
gl_xml_set_prop_double (node, "line_spacing", text_line_spacing);
/* Build children. */