summary | shortlog | log | commit | commitdiff | tree
raw | patch | inline | side by side (parent: cee00fe)
raw | patch | inline | side by side (parent: cee00fe)
author | gouldtj <gouldtj@users.sourceforge.net> | |
Wed, 29 Mar 2006 05:44:27 +0000 (05:44 +0000) | ||
committer | gouldtj <gouldtj@users.sourceforge.net> | |
Wed, 29 Mar 2006 05:44:27 +0000 (05:44 +0000) |
Adding in the basic infrastructure for handling the cascading status
dialogs between the different subclasses of widgets.
dialogs between the different subclasses of widgets.
src/extension/effect.cpp | patch | blob | history | |
src/extension/effect.h | patch | blob | history | |
src/extension/extension.cpp | patch | blob | history | |
src/extension/extension.h | patch | blob | history |
index 55cf42b2f13ee6ff963d813587707fd966f4315d..78af878d35d72744a10aac3f4202e66cb998347e 100644 (file)
--- a/src/extension/effect.cpp
+++ b/src/extension/effect.cpp
return false;
}
+Gtk::VBox *
+Effect::get_info_widget(void)
+{
+ return Extension::get_info_widget();
+}
+
/** \brief Create an action for a \c EffectVerb
\param view Which view the action should be created for
\return The built action.
diff --git a/src/extension/effect.h b/src/extension/effect.h
index 32eebb32b363cb07ddf74cc5e9ebffbbc5a73b83..493af142b653e398a9ad66ac83f18510540c603b 100644 (file)
--- a/src/extension/effect.h
+++ b/src/extension/effect.h
static void place_menus (void);
void place_menu (Inkscape::XML::Node * menus);
+ Gtk::VBox * get_info_widget(void);
+
private:
static gchar * remove_ (gchar * instr);
};
index 03b12e0a12938bc7cc6272ff0de7a104a86c7e41..d71c27d128a5c55e12a2221f61ab362c4bce049c 100644 (file)
#include <glibmm/i18n.h>
#include <gtkmm/box.h>
#include <gtkmm/label.h>
+#include <gtkmm/frame.h>
+#include <gtkmm/table.h>
#include "inkscape.h"
#include "extension/implementation/implementation.h"
/* Extension editor dialog stuff */
-Gtk::Widget *
+Gtk::VBox *
Extension::get_info_widget(void)
{
- Gtk::Widget * retval = Gtk::manage(new Gtk::Label("Info"));
- retval->show();
+ Gtk::VBox * retval = Gtk::manage(new Gtk::VBox());
+
+ Gtk::Frame * info = Gtk::manage(new Gtk::Frame("General Extension Information"));
+ retval->pack_start(*info, true, true, 5);
+
+ Gtk::Table * table = Gtk::manage(new Gtk::Table());
+ info->add(*table);
+
+ int row = 0;
+ add_val(_("Name:"), _(name), table, &row);
+ add_val(_("ID:"), id, table, &row);
+ add_val(_("State:"), _state == STATE_LOADED ? _("Loaded") : _state == STATE_UNLOADED ? _("Unloaded") : _("Deactivated"), table, &row);
+
+
+ retval->show_all();
return retval;
}
-Gtk::Widget *
+void
+Extension::add_val(Glib::ustring labelstr, Glib::ustring valuestr, Gtk::Table * table, int * row)
+{
+ Gtk::Label * label;
+ Gtk::Label * value;
+
+ (*row)++;
+ label = Gtk::manage(new Gtk::Label(labelstr));
+ value = Gtk::manage(new Gtk::Label(valuestr));
+ table->attach(*label, 0, 1, (*row) - 1, *row);
+ table->attach(*value, 1, 2, (*row) - 1, *row);
+
+ label->show();
+ value->show();
+
+ return;
+}
+
+Gtk::VBox *
Extension::get_help_widget(void)
{
- Gtk::Widget * retval = Gtk::manage(new Gtk::Label("Help"));
+ Gtk::VBox * retval = Gtk::manage(new Gtk::VBox());
+
+ if (_help == NULL) {
+ Gtk::Label * content = Gtk::manage(new Gtk::Label("Currently there is no help available for this Extension. Please look on the Inkscape website or ask on the mailing lists if you have questions regarding this extension."));
+ retval->pack_start(*content, true, true, 5);
+ content->set_line_wrap(true);
+ content->show();
+ } else {
+
+
+
+ }
+
retval->show();
return retval;
}
-Gtk::Widget *
+Gtk::VBox *
Extension::get_params_widget(void)
{
- Gtk::Widget * retval = Gtk::manage(new Gtk::Label("Params"));
+ Gtk::VBox * retval = Gtk::manage(new Gtk::VBox());
+ Gtk::Widget * content = Gtk::manage(new Gtk::Label("Params"));
+ retval->pack_start(*content, true, true, 5);
+ content->show();
retval->show();
return retval;
}
index 62d455fcf9968fd94ad0b6ab76a387ddb87256b5..2e05865018a361a409a03432577aad5105048baa 100644 (file)
#include <fstream>
#include <vector>
#include <gtkmm/widget.h>
+#include <gtkmm/box.h>
+#include <gtkmm/table.h>
#include <glibmm/ustring.h>
#include "xml/repr.h"
#include "extension/extension-forward.h"
/* Extension editor dialog stuff */
public:
- Gtk::Widget * get_info_widget(void);
- Gtk::Widget * get_help_widget(void);
- Gtk::Widget * get_params_widget(void);
+ Gtk::VBox * get_info_widget(void);
+ Gtk::VBox * get_help_widget(void);
+ Gtk::VBox * get_params_widget(void);
+protected:
+ inline static void add_val(Glib::ustring labelstr, Glib::ustring valuestr, Gtk::Table * table, int * row);
};