25 #ifndef GCHEMPAINT_APPLICATION_H
26 #define GCHEMPAINT_APPLICATION_H
30 #include <libxml/parser.h>
70 typedef void (*
BuildMenuCb) (GtkUIManager *UIManager);
115 void ActivateTool (
const std::string& toolname,
bool activate);
173 void SetTool (
const std::string& toolname,
Tool* tool) {m_Tools[toolname] = tool;}
178 GtkWidget*
GetToolItem(
const std::string& name) {
return ToolItems[name];}
186 void SetToolItem (
const std::string& name, GtkWidget* w) {ToolItems[name] = w;}
212 bool FileProcess (
const gchar* filename,
const gchar* mime_type,
bool bSave, GtkWindow *window,
gcu::Document *pDoc = NULL);
269 void Zoom (
double zoom);
315 void AddActions (GtkRadioActionEntry
const *entries,
int nb,
char const *ui_description,
IconDesc const *icons);
379 std::list<std::string> &
GetExtensions(std::string &mime_type);
435 void BuildTools () throw (std::runtime_error);
444 void TestSupportedType (
char const *mime_type);
445 void AddMimeType (std::list<std::
string> &l, std::
string const& mime_type);
446 void UpdateAllTargets ();
464 std::map <std::
string, GtkWidget*> ToolItems;
465 std::map <std::
string, GtkWidget*> Toolbars;
466 std::map <std::
string,
Tool*> m_Tools;
469 static
bool m_Have_Ghemical;
470 static
bool m_Have_InChI;
472 GtkIconFactory *IconFactory;
473 std::list<
char const*> UiDescs;
474 GtkRadioActionEntry* RadioActions;
476 std::map<
int, std::
string> ToolbarNames;
478 std::set<
Target*> m_Targets;
480 std::list<std::
string> m_SupportedMimeTypes;
481 std::list<std::
string> m_WriteableMimeTypes;
482 GOConfNode *m_ConfNode;
483 guint m_NotificationId;
484 gcu::Object *m_Dummy;
485 std::list<BuildMenuCb> m_MenuCbs;
496 #endif //GCHEMPAINT_APPLICATION_H