diff --git a/src/main.cpp b/src/main.cpp
index a25343991077ce4af4018041e76b1fe7b9fee625..a1b21cc4d0f65b1cf1fb3ad2cba4787ab2648ec0 100644 (file)
--- a/src/main.cpp
+++ b/src/main.cpp
-#define __MAIN_C__
-
/** \file
* Inkscape - an ambitious vector drawing program
*
* Pawel Palucha
* Bryce Harrington <bryce@bryceharrington.com>
* ... and various people who have worked with various projects
+ * Jon A. Cruz <jon@oncruz.org>
+ * Abhishek Sharma
*
* Copyright (C) 1999-2004 authors
* Copyright (C) 2001-2002 Ximian, Inc.
#define bind_textdomain_codeset(p,c)
#endif
-#include "application/application.h"
#include "main-cmdlineact.h"
#include "widgets/icon.h"
#include "ui/widget/panel.h"
static gboolean sp_query_height = FALSE;
static gboolean sp_query_all = FALSE;
static gchar *sp_query_id = NULL;
-static int sp_new_gui = FALSE;
static gboolean sp_shell = FALSE;
static gboolean sp_vacuum_defs = FALSE;
}
#endif // WIN32
- /// \todo Should this be a static object (see inkscape.cpp)?
- Inkscape::NSApplication::Application app(argc, argv, use_gui, sp_new_gui);
+ int retcode;
+
+ if (use_gui) {
+ retcode = sp_main_gui(argc, (const char **) argv);
+ } else {
+ retcode = sp_main_console(argc, (const char **) argv);
+ }
- return app.run();
+ return retcode;
}
g_warning("Specified document %s cannot be opened (does not exist or not a valid SVG file)", filename);
} else {
if (sp_vacuum_defs) {
- doc->vacuum_document();
+ doc->vacuumDocument();
}
if (sp_vacuum_defs && !sp_export_svg) {
// save under the name given in the command line
Inkscape::XML::Node *repr;
rdoc = sp_repr_document_new("svg:svg");
repr = rdoc->root();
- repr = sp_document_root(doc)->updateRepr(rdoc, repr, SP_OBJECT_WRITE_BUILD);
+ repr = doc->getRoot()->updateRepr(rdoc, repr, SP_OBJECT_WRITE_BUILD);
sp_repr_save_rebased_file(repr->document(), sp_export_svg, SP_SVG_NS_URI,
- doc->base, sp_export_svg);
+ doc->getBase(), sp_export_svg);
}
if (sp_export_ps) {
do_export_ps_pdf(doc, sp_export_ps, "image/x-postscript");
@@ -1193,11 +1196,11 @@ do_query_dimension (SPDocument *doc, bool extent, Geom::Dim2 const axis, const g
return;
}
} else {
- o = SP_DOCUMENT_ROOT(doc);
+ o = doc->getRoot();
}
if (o) {
- doc->ensure_up_to_date ();
+ doc->ensureUpToDate();
SPItem *item = ((SPItem *) o);
// "true" SVG bbox for scripting
@@ -1216,15 +1219,12 @@ do_query_dimension (SPDocument *doc, bool extent, Geom::Dim2 const axis, const g
}
}
-static void
-do_query_all (SPDocument *doc)
+static void do_query_all(SPDocument *doc)
{
- SPObject *o = NULL;
-
- o = SP_DOCUMENT_ROOT(doc);
+ SPObject *o = doc->getRoot();
if (o) {
- doc->ensure_up_to_date ();
+ doc->ensureUpToDate();
do_query_all_recurse(o);
}
}
SPObject *o_area = NULL;
if (sp_export_id && sp_export_area_drawing) {
o = doc->getObjectById(sp_export_id);
- o_area = SP_DOCUMENT_ROOT (doc);
+ o_area = doc->getRoot();
} else if (sp_export_id) {
o = doc->getObjectById(sp_export_id);
o_area = o;
} else if (sp_export_area_drawing) {
- o = SP_DOCUMENT_ROOT (doc);
+ o = doc->getRoot();
o_area = o;
}
}
// write object bbox to area
- doc->ensure_up_to_date ();
+ doc->ensureUpToDate();
Geom::OptRect areaMaybe;
static_cast<SPItem *>(o_area)->invoke_bbox( areaMaybe, static_cast<SPItem *>(o_area)->i2d_affine(), TRUE);
if (areaMaybe) {
if (sp_export_area) {
/* Try to parse area (given in SVG pixels) */
gdouble x0,y0,x1,y1;
- if (!sscanf(sp_export_area, "%lg:%lg:%lg:%lg", &x0, &y0, &x1, &y1) == 4) {
+ if (sscanf(sp_export_area, "%lg:%lg:%lg:%lg", &x0, &y0, &x1, &y1) != 4) {
g_warning("Cannot parse export area '%s'; use 'x0:y0:x1:y1'. Nothing exported.", sp_export_area);
return;
}
area = Geom::Rect(Geom::Interval(x0,x1), Geom::Interval(y0,y1));
} else if (sp_export_area_page || !(sp_export_id || sp_export_area_drawing)) {
/* Export the whole page: note: Inkscape uses 'page' in all menus and dialogs, not 'canvas' */
- doc->ensure_up_to_date ();
+ doc->ensureUpToDate();
Geom::Point origin (SP_ROOT(doc->root)->x.computed, SP_ROOT(doc->root)->y.computed);
area = Geom::Rect(origin, origin + doc->getDimensions());
}
gchar *path = 0;
if (filename_from_hint) {
//Make relative paths go from the document location, if possible:
- if (!g_path_is_absolute(filename) && doc->uri) {
- gchar *dirname = g_path_get_dirname(doc->uri);
+ if (!g_path_is_absolute(filename) && doc->getURI()) {
+ gchar *dirname = g_path_get_dirname(doc->getURI());
if (dirname) {
path = g_build_filename(dirname, filename, NULL);
g_free(dirname);