summaryrefslogtreecommitdiffstats
path: root/src/extension/implementation/implementation.cpp
diff options
context:
space:
mode:
authorTed Gould <ted@gould.cx>2007-10-30 19:28:31 +0000
committergouldtj <gouldtj@users.sourceforge.net>2007-10-30 19:28:31 +0000
commitcabb72a8c874cf939150e02af804a1c781cd0b17 (patch)
treeda8834a6d8e32e2c631f1b29b835c3ac76f72a59 /src/extension/implementation/implementation.cpp
parentr16676@shi: ted | 2007-10-12 21:09:50 -0700 (diff)
downloadinkscape-cabb72a8c874cf939150e02af804a1c781cd0b17.tar.gz
inkscape-cabb72a8c874cf939150e02af804a1c781cd0b17.zip
r16677@shi: ted | 2007-10-17 19:31:04 -0700
Creating and adding interfaces for a document based cache that an effect can define. This removes the effect from having to know if the document has changed, and keep track of that. This allows them to optimize their performance when doing things like live effects. (bzr r3977)
Diffstat (limited to '')
-rw-r--r--src/extension/implementation/implementation.cpp15
1 files changed, 12 insertions, 3 deletions
diff --git a/src/extension/implementation/implementation.cpp b/src/extension/implementation/implementation.cpp
index 3bf9b0b75..acec99041 100644
--- a/src/extension/implementation/implementation.cpp
+++ b/src/extension/implementation/implementation.cpp
@@ -38,8 +38,17 @@ Implementation::unload(Inkscape::Extension::Extension *module) {
return;
} /* Implementation::unload */
+/** \brief Create a new document cache object
+ \param ext The extension that is referencing us
+ \param doc The document to create the cache of
+ \return A new document cache that is valid as long as the document
+ is not changed.
+
+ This function just returns \c NULL. Subclasses are likely
+ to reimplement it to do something useful.
+*/
ImplementationDocumentCache *
-Implementation::newDocCache (SPDocument * doc) {
+Implementation::newDocCache (Inkscape::Extension::Extension * ext, SPDocument * doc) {
return NULL;
}
@@ -71,12 +80,12 @@ Implementation::open(Inkscape::Extension::Input *module, gchar const *filename)
} /* Implementation::open */
Gtk::Widget *
-Implementation::prefs_output(Inkscape::Extension::Output *module, ImplementationDocumentCache * docCache) {
+Implementation::prefs_output(Inkscape::Extension::Output *module) {
return module->autogui(NULL, NULL);
} /* Implementation::prefs_output */
void
-Implementation::save(Inkscape::Extension::Output *module, SPDocument *doc, gchar const *filename, ImplementationDocumentCache * docCache) {
+Implementation::save(Inkscape::Extension::Output *module, SPDocument *doc, gchar const *filename) {
/* throw save_fail */
return;
} /* Implementation::save */