diff options
| author | Maximilian Albert <maximilian.albert@gmail.com> | 2008-03-22 00:17:46 +0000 |
|---|---|---|
| committer | cilix42 <cilix42@users.sourceforge.net> | 2008-03-22 00:17:46 +0000 |
| commit | a12a4f53de50adadebc280a558e76d3ced2b6e5d (patch) | |
| tree | 0bc402a221d8b0d9913c06136567738e6aad4300 /src/widgets | |
| parent | temporary fix. removed LPE context verb. now toolbar is normal again in windows. (diff) | |
| download | inkscape-a12a4f53de50adadebc280a558e76d3ced2b6e5d.tar.gz inkscape-a12a4f53de50adadebc280a558e76d3ced2b6e5d.zip | |
Really fix compile (patch by Krzysztof KosiĆski)
(bzr r5154)
Diffstat (limited to 'src/widgets')
| -rw-r--r-- | src/widgets/Makefile_insert | 2 | ||||
| -rwxr-xr-x | src/widgets/calligraphic-profile-rename.cpp | 99 | ||||
| -rwxr-xr-x | src/widgets/calligraphic-profile-rename.h | 56 | ||||
| -rw-r--r-- | src/widgets/toolbox.cpp | 2 |
4 files changed, 158 insertions, 1 deletions
diff --git a/src/widgets/Makefile_insert b/src/widgets/Makefile_insert index d46037157..6cc3bb1f0 100644 --- a/src/widgets/Makefile_insert +++ b/src/widgets/Makefile_insert @@ -13,6 +13,8 @@ widgets/clean: widgets_libspwidgets_a_SOURCES = \ widgets/button.cpp \ widgets/button.h \ + widgets/calligraphic-profile-rename.cpp \ + widgets/calligraphic-profile-rename.h \ widgets/dash-selector.cpp \ widgets/dash-selector.h \ widgets/desktop-widget.cpp \ diff --git a/src/widgets/calligraphic-profile-rename.cpp b/src/widgets/calligraphic-profile-rename.cpp new file mode 100755 index 000000000..ae9a31c0e --- /dev/null +++ b/src/widgets/calligraphic-profile-rename.cpp @@ -0,0 +1,99 @@ +/**
+ *
+ * \brief Dialog for naming calligraphic profiles
+ *
+ * Author:
+ * Aubanel MONNIER
+ *
+ * Copyright (C) 2007 Aubanel MONNIER
+ *
+ * Released under GNU GPL. Read the file 'COPYING' for more information
+ */
+
+#ifdef HAVE_CONFIG_H
+# include <config.h>
+#endif
+
+#include <glibmm/i18n.h>
+#include <gtkmm/stock.h>
+
+#include "desktop.h"
+#include "calligraphic-profile-rename.h"
+
+
+namespace Inkscape {
+namespace UI {
+namespace Dialogs {
+CalligraphicProfileDialog::CalligraphicProfileDialog(): _applied(false){
+ Gtk::VBox *mainVBox = get_vbox();
+ _layout_table.set_spacings(4);
+ _layout_table.resize (1, 2);
+
+ _profile_name_entry.set_activates_default(true);
+
+ _profile_name_label.set_label(_("Profile name:"));
+ _profile_name_label.set_alignment(1.0, 0.5);
+
+ _layout_table.attach(_profile_name_label,
+ 0, 1, 0, 1, Gtk::FILL, Gtk::FILL);
+ _layout_table.attach(_profile_name_entry,
+ 1, 2, 0, 1, Gtk::FILL | Gtk::EXPAND, Gtk::FILL);
+ mainVBox->pack_start(_layout_table, false, false, 4);
+ // Buttons
+ _close_button.set_use_stock(true);
+ _close_button.set_label(Gtk::Stock::CANCEL.id);
+ _close_button.set_flags(Gtk::CAN_DEFAULT);
+
+ _apply_button.set_use_underline(true);
+ _apply_button.set_label(_("Save"));
+ _apply_button.set_flags(Gtk::CAN_DEFAULT);
+
+ _close_button.signal_clicked()
+ .connect(sigc::mem_fun(*this, &CalligraphicProfileDialog::_close));
+ _apply_button.signal_clicked()
+ .connect(sigc::mem_fun(*this, &CalligraphicProfileDialog::_apply));
+
+ signal_delete_event().connect(
+ sigc::bind_return(
+ sigc::hide(sigc::mem_fun(*this, &CalligraphicProfileDialog::_close)),
+ true
+ )
+ );
+
+ add_action_widget(_close_button, Gtk::RESPONSE_CLOSE);
+ add_action_widget(_apply_button, Gtk::RESPONSE_APPLY);
+
+ _apply_button.grab_default();
+
+ show_all_children();
+
+}
+
+void
+CalligraphicProfileDialog::_apply()
+{
+ _profile_name = _profile_name_entry.get_text();
+ _applied = true;
+ _close();
+}
+
+void
+CalligraphicProfileDialog::_close()
+{
+ this->Gtk::Dialog::hide();
+
+}
+
+void CalligraphicProfileDialog::show(SPDesktop *desktop){
+ CalligraphicProfileDialog &dial = instance();
+ dial._applied=false;
+ dial.set_modal(true);
+ desktop->setWindowTransient (dial.gobj());
+ dial.property_destroy_with_parent() = true;
+ // dial.Gtk::Dialog::show();
+ //dial.present();
+ dial.run();
+}
+
+
+}}}
diff --git a/src/widgets/calligraphic-profile-rename.h b/src/widgets/calligraphic-profile-rename.h new file mode 100755 index 000000000..133d94a28 --- /dev/null +++ b/src/widgets/calligraphic-profile-rename.h @@ -0,0 +1,56 @@ +/**
+ *
+ * \brief Dialog for naming calligraphic profiles
+ *
+ * Author:
+ * Aubanel MONNIER
+ *
+ * Copyright (C) 2007 Aubanel MONNIER
+ *
+ * Released under GNU GPL. Read the file 'COPYING' for more information
+ */
+
+#ifndef INKSCAPE_DIALOG_CALLIGRAPHIC_PROFILE_H
+#define INKSCAPE_DIALOG_CALLIGRAPHIC_PROFILE_H
+
+#include <gtkmm/dialog.h>
+#include <gtkmm/entry.h>
+#include <gtkmm/label.h>
+#include <gtkmm/table.h>
+
+namespace Inkscape {
+ namespace UI {
+ namespace Dialogs {
+
+ class CalligraphicProfileDialog: public Gtk::Dialog {
+ public:
+ CalligraphicProfileDialog();
+ virtual ~CalligraphicProfileDialog(){} ;
+ static void show(SPDesktop *desktop);
+ static bool applied(){return instance()._applied;}
+ static Glib::ustring getProfileName() { return instance()._profile_name;}
+
+ Glib::ustring getName() const { return "CalligraphicProfileDialog"; }
+
+
+ protected:
+ void _close();
+ void _apply();
+
+ Gtk::Label _profile_name_label;
+ Gtk::Entry _profile_name_entry;
+ Gtk::Table _layout_table;
+ Gtk::Button _close_button;
+ Gtk::Button _apply_button;
+ Glib::ustring _profile_name;
+ bool _applied;
+ private:
+ static CalligraphicProfileDialog &instance(){static CalligraphicProfileDialog instance; return instance;}
+ CalligraphicProfileDialog(CalligraphicProfileDialog const &); // no copy
+ CalligraphicProfileDialog &operator=(CalligraphicProfileDialog const &); // no assign
+ };
+ }
+ }
+}
+
+#endif INKSCAPE_DIALOG_CALLIGRAPHIC_PROFILE_H
diff --git a/src/widgets/toolbox.cpp b/src/widgets/toolbox.cpp index c59447b78..d3fef1f8d 100644 --- a/src/widgets/toolbox.cpp +++ b/src/widgets/toolbox.cpp @@ -103,7 +103,7 @@ #include "svg/css-ostringstream.h" -#include "../dialogs/calligraphic-profile-rename.h" +#include "widgets/calligraphic-profile-rename.h" using Inkscape::UnitTracker; |
