parameter.h revision 3544219f7a0314290353726315a594f92749eb96
/** @file
* @brief Parameters for extensions.
*/
/* Authors:
* Ted Gould <ted@gould.cx>
*
* Copyright (C) 2005-2006 Authors
*
* Released under GNU GPL, read the file 'COPYING' for more information
*/
#ifndef SEEN_INK_EXTENSION_PARAM_H__
#define SEEN_INK_EXTENSION_PARAM_H__
#include "xml/document.h"
#include "document.h"
#include "extension/extension-forward.h"
#include <color.h>
/**
* @brief The root directory in the preferences database for extension-related parameters
*
* The directory path has both a leading and a trailing slash, so that extension_pref_root + pref_name works
* without having to append a separator.
*/
/** \brief A class to represent the parameter of an extension
This is really a super class that allows them to abstract all
the different types of parameters into some that can be passed
around. There is also a few functions that are used by all the
different parameters.
*/
/** \brief Which extension is this parameter attached to? */
/** \brief The name of this parameter. */
/** \brief Description of the parameter. */
/** \brief List of possible scopes. */
typedef enum {
SCOPE_USER, /**< Parameter value is saved in the user's configuration file. (default) */
SCOPE_DOCUMENT, /**< Parameter value is saved in the document. */
SCOPE_NODE /**< Parameter value is attached to the node. */
} _scope_t;
/** \brief Scope of the parameter. */
/** \brief Text for the GUI selection of this. */
/** \brief Whether the GUI is visible */
bool _gui_hidden;
/** \brief A tip for the GUI if there is one */
/* **** funcs **** */
bool gui_hidden,
};
virtual Gtk::Widget * get_widget (SPDocument * doc, Inkscape::XML::Node * node, sigc::signal<void> * changeSignal);
/** \brief Indicates if the GUI for this parameter is hidden or not */
bool get_gui_hidden () { return _gui_hidden; }
};
} /* namespace Extension */
} /* namespace Inkscape */
#endif /* __INK_EXTENSION_PARAM_H__ */
/*
Local Variables:
mode:c++
c-file-style:"stroustrup"
c-file-offsets:((innamespace . 0)(inline-open . 0)(case-label . +))
indent-tabs-mode:nil
fill-column:99
End:
*/
// vim: filetype=cpp:expandtab:shiftwidth=4:tabstop=8:softtabstop=4:fileencoding=utf-8:textwidth=99 :