Code

Make knotholders for LPE items finally work; each effect can now overload the addKnot...
[inkscape.git] / src / file.h
index be492739533d6916154b58b1abef6bbcef7e7a91..e90e555bb11d09dcad7191c71a334ea5e0b2a980 100644 (file)
@@ -8,12 +8,14 @@
  *   Lauris Kaplinski <lauris@kaplinski.com>
  *   Chema Celorio <chema@celorio.com>
  *
- * Copyright (C) 1999-2002 Authors
+ * Copyright (C) 2006 Johan Engelen <johan@shouraizou.nl>
  * Copyright (C) 2001-2002 Ximian, Inc.
+ * Copyright (C) 1999-2002 Authors
  *
  * Released under GNU GPL, read the file 'COPYING' for more information
  */
 
+#include <gtkmm.h>
 #include <glib/gslist.h>
 #include <gtk/gtkwidget.h>
 
@@ -36,7 +38,7 @@ namespace Inkscape {
  * Creates a new Inkscape document and window.
  * Return value is a pointer to the newly created desktop.
  */
-SPDesktop* sp_file_new (const gchar *templ);
+SPDesktop* sp_file_new (const Glib::ustring &templ);
 SPDesktop* sp_file_new_default (void);
 
 /*######################
@@ -56,15 +58,17 @@ void sp_file_exit (void);
  * Opens a new file and window from the given URI
  */
 bool sp_file_open(
-  const gchar *uri, Inkscape::Extension::Extension *key,
-  bool add_to_recent = true, bool replace_empty = true
-  );
+    const Glib::ustring &uri,
+    Inkscape::Extension::Extension *key,
+    bool add_to_recent = true,
+    bool replace_empty = true
+    );
 
 /**
  * Displays a file open dialog. Calls sp_file_open on
  * an OK.
  */
-void sp_file_open_dialog (gpointer object, gpointer data);
+void sp_file_open_dialog (Gtk::Window &parentWindow, gpointer object, gpointer data);
 
 /**
  * Reverts file to disk-copy on "YES"
@@ -75,25 +79,39 @@ void sp_file_revert_dialog ();
 ## S A V E
 ######################*/
 
+/*
+ * Added to make only the remote savings.
+ */
+
+bool file_save_remote(SPDocument *doc, const Glib::ustring &uri,
+                Inkscape::Extension::Extension *key, bool saveas, bool official);
+
 /**
  *
  */
-bool sp_file_save (gpointer object, gpointer data);
+bool sp_file_save (Gtk::Window &parentWindow, gpointer object, gpointer data);
 
 /**
  *  Saves the given document.  Displays a file select dialog
  *  to choose the new name.
  */
-bool sp_file_save_as (gpointer object, gpointer data);
+bool sp_file_save_as (Gtk::Window &parentWindow, gpointer object, gpointer data);
+
+/**
+ *  Saves a copy of the given document.  Displays a file select dialog
+ *  to choose a name for the copy.
+ */
+bool sp_file_save_a_copy (Gtk::Window &parentWindow, gpointer object, gpointer data);
+
 
 /**
  *  Saves the given document.  Displays a file select dialog
  *  if needed.
  */
-gboolean sp_file_save_document (SPDocument *document);
+bool sp_file_save_document (Gtk::Window &parentWindow, SPDocument *document);
 
 /* Do the saveas dialog with a document as the parameter */
-gboolean sp_file_save_dialog (SPDocument *doc);
+bool sp_file_save_dialog (Gtk::Window &parentWindow, SPDocument *doc, bool bAsCopy = FALSE);
 
 
 /*######################
@@ -104,34 +122,50 @@ gboolean sp_file_save_dialog (SPDocument *doc);
  * Displays a file selector dialog, to allow the
  * user to import data into the current document.
  */
-void sp_file_import (GtkWidget * widget);
+void sp_file_import (Gtk::Window &parentWindow);
 
 /**
  * Imports a resource
  */
-void file_import(SPDocument *in_doc, gchar const *uri, Inkscape::Extension::Extension *key);
+void file_import(SPDocument *in_doc, const Glib::ustring &uri,
+                 Inkscape::Extension::Extension *key);
 
 /*######################
 ## E X P O R T
 ######################*/
 
 /**
- * Displays a "Save as" dialog for the user, with an
+ * Displays a FileExportDialog for the user, with an
  * additional type selection, to allow the user to export
  * the a document as a given type.
  */
-void sp_file_export_dialog (void *widget);
+bool sp_file_export_dialog (void *widget);
+
+
+/*######################
+## E X P O R T  T O  O C A L
+######################*/
 
 /**
- * Export the given document as a Portable Network Graphics (PNG)
- * file.  Returns FALSE if an error was encountered while writing
- * the file, TRUE otherwise.
+ * Export the current document to OCAL
  */
-int sp_export_png_file (SPDocument *doc, const gchar *filename,
-                        double x0, double y0, double x1, double y1,
-                        unsigned int width, unsigned int height, double xdpi, double ydpi,
-                        unsigned long bgcolor,
-                        unsigned int (*status) (float, void *), void *data, bool force_overwrite = false, GSList *items_only = NULL);
+void sp_file_export_to_ocal (Gtk::Window &parentWindow );
+
+
+/**
+ * Export the current document to OCAL
+ */
+bool sp_file_export_to_ocal_dialog (void *widget);
+
+
+/*######################
+## I M P O R T  F R O M  O C A L
+######################*/
+
+/**
+ * Import a document from OCAL
+ */
+void sp_file_import_from_ocal (Gtk::Window &parentWindow );
 
 
 /*######################
@@ -145,12 +179,7 @@ would be useful as instance methods
 /**
  *
  */
-void sp_file_print (void);
-
-/**
- *
- */
-void sp_file_print_direct (void);
+void sp_file_print (Gtk::Window& parentWindow);
 
 /**
  *