Code

Remove obsolete C macro use.
[inkscape.git] / src / extension / input.h
1 /*
2  * Authors:
3  *   Ted Gould <ted@gould.cx>
4  *
5  * Copyright (C) 2002-2004 Authors
6  *
7  * Released under GNU GPL, read the file 'COPYING' for more information
8  */
11 #ifndef INKSCAPE_EXTENSION_INPUT_H__
12 #define INKSCAPE_EXTENSION_INPUT_H__
14 #include <glib.h>
15 #include "extension.h"
16 #include "xml/repr.h"
17 #include "document.h"
18 #include <gtk/gtkdialog.h>
20 namespace Inkscape {
21 namespace Extension {
23 class Input : public Extension {
24     gchar *mimetype;             /**< What is the mime type this inputs? */
25     gchar *extension;            /**< The extension of the input files */
26     gchar *filetypename;         /**< A userfriendly name for the file type */
27     gchar *filetypetooltip;      /**< A more detailed description of the filetype */
29 public: /* this is a hack for this release, this will be private shortly */
30     gchar *output_extension;     /**< Setting of what output extension should be used */
32 public:
33     class open_failed {};        /**< Generic failure for an undescribed reason */
34     class no_extension_found {}; /**< Failed because we couldn't find an extension to match the filename */
36                   Input                (Inkscape::XML::Node * in_repr,
37                                         Implementation::Implementation * in_imp);
38     virtual      ~Input                (void);
39     virtual bool  check                (void);
40     SPDocument *  open                 (gchar const *uri);
41     gchar *       get_mimetype         (void);
42     gchar *       get_extension        (void);
43     gchar *       get_filetypename     (void);
44     gchar *       get_filetypetooltip  (void);
45     bool          prefs                (gchar const *uri);
46 };
48 } }  /* namespace Inkscape, Extension */
49 #endif /* INKSCAPE_EXTENSION_INPUT_H__ */
51 /*
52   Local Variables:
53   mode:c++
54   c-file-style:"stroustrup"
55   c-file-offsets:((innamespace . 0)(inline-open . 0)(case-label . +))
56   indent-tabs-mode:nil
57   fill-column:99
58   End:
59 */
60 // vim: filetype=cpp:expandtab:shiftwidth=4:tabstop=8:softtabstop=4 :