index a0c991cf25cceeffb57ce0e21fe3f5d8443196f4..81629a2dcaa53b386c0579479c55907c9ef91536 100644 (file)
#include <fstream>
#include <vector>
#include <gtkmm/widget.h>
#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 <glibmm/ustring.h>
#include "xml/repr.h"
+#include "document.h"
#include "extension/extension-forward.h"
/** The key that is used to identify that the I/O should be autodetected */
#include "extension/extension-forward.h"
/** The key that is used to identify that the I/O should be autodetected */
/** Defines the key for Postscript printing */
#define SP_MODULE_KEY_PRINT_PS "org.inkscape.print.ps"
/** Defines the key for Postscript printing */
#define SP_MODULE_KEY_PRINT_PS "org.inkscape.print.ps"
+/** Defines the key for PDF printing */
+#define SP_MODULE_KEY_PRINT_PDF "org.inkscape.print.pdf"
+#define SP_MODULE_KEY_PRINT_CAIRO_PDF "org.inkscape.print.pdf.cairo"
/** Defines the key for LaTeX printing */
#define SP_MODULE_KEY_PRINT_LATEX "org.inkscape.print.latex"
/** Defines the key for printing with GNOME Print */
/** Defines the key for LaTeX printing */
#define SP_MODULE_KEY_PRINT_LATEX "org.inkscape.print.latex"
/** Defines the key for printing with GNOME Print */
private:
gchar *id; /**< The unique identifier for the Extension */
gchar *name; /**< A user friendly name for the Extension */
private:
gchar *id; /**< The unique identifier for the Extension */
gchar *name; /**< A user friendly name for the Extension */
+ gchar *_help; /**< A string that contains a help text for the user */
state_t _state; /**< Which state the Extension is currently in */
std::vector<Dependency *> _deps; /**< Dependencies for this extension */
static std::ofstream error_file; /**< This is the place where errors get reported */
state_t _state; /**< Which state the Extension is currently in */
std::vector<Dependency *> _deps; /**< Dependencies for this extension */
static std::ofstream error_file; /**< This is the place where errors get reported */
Inkscape::XML::Node * get_repr (void);
gchar * get_id (void);
gchar * get_name (void);
Inkscape::XML::Node * get_repr (void);
gchar * get_id (void);
gchar * get_name (void);
+ /** \brief Gets the help string for this extension */
+ gchar const * get_help (void) { return _help; }
void deactivate (void);
bool deactivated (void);
void printFailure (Glib::ustring reason);
void deactivate (void);
bool deactivated (void);
void printFailure (Glib::ustring reason);
#endif
public:
bool get_param_bool (const gchar * name,
#endif
public:
bool get_param_bool (const gchar * name,
- const Inkscape::XML::Document * doc = NULL);
+ const SPDocument * doc = NULL,
+ const Inkscape::XML::Node * node = NULL);
int get_param_int (const gchar * name,
int get_param_int (const gchar * name,
- const Inkscape::XML::Document * doc = NULL);
+ const SPDocument * doc = NULL,
+ const Inkscape::XML::Node * node = NULL);
float get_param_float (const gchar * name,
float get_param_float (const gchar * name,
- const Inkscape::XML::Document * doc = NULL);
+ const SPDocument * doc = NULL,
+ const Inkscape::XML::Node * node = NULL);
const gchar * get_param_string (const gchar * name,
const gchar * get_param_string (const gchar * name,
- const Inkscape::XML::Document * doc = NULL);
+ const SPDocument * doc = NULL,
+ const Inkscape::XML::Node * node = NULL);
bool set_param_bool (const gchar * name,
bool value,
bool set_param_bool (const gchar * name,
bool value,
- Inkscape::XML::Document * doc = NULL);
+ SPDocument * doc = NULL,
+ Inkscape::XML::Node * node = NULL);
int set_param_int (const gchar * name,
int value,
int set_param_int (const gchar * name,
int value,
- Inkscape::XML::Document * doc = NULL);
+ SPDocument * doc = NULL,
+ Inkscape::XML::Node * node = NULL);
float set_param_float (const gchar * name,
float value,
float set_param_float (const gchar * name,
float value,
- Inkscape::XML::Document * doc = NULL);
+ SPDocument * doc = NULL,
+ Inkscape::XML::Node * node = NULL);
const gchar * set_param_string (const gchar * name,
const gchar * value,
const gchar * set_param_string (const gchar * name,
const gchar * value,
- Inkscape::XML::Document * doc = NULL);
+ SPDocument * doc = NULL,
+ Inkscape::XML::Node * node = NULL);
/* Error file handling */
public:
/* Error file handling */
public:
static void error_file_close (void);
public:
static void error_file_close (void);
public:
- Gtk::Widget * autogui (void);
+ Gtk::Widget * autogui (SPDocument * doc, Inkscape::XML::Node * node);
Glib::ustring * paramString (void);
Glib::ustring * paramString (void);
+
+ /* Extension editor dialog stuff */
+public:
+ 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);
+
};
};