libroot/posix/stdio: Remove unused portions.
[haiku.git] / src / apps / icon-o-matic / IconEditorApp.h
blob44df93a1e1c397f7a918a3e0adc92152e3fece65
1 /*
2 * Copyright 2006, 2011, Stephan Aßmus <superstippi@gmx.de>.
3 * Distributed under the terms of the MIT License.
4 */
5 #ifndef ICON_EDITOR_APP_H
6 #define ICON_EDITOR_APP_H
9 #include <Application.h>
10 #include <String.h>
13 class BFilePanel;
14 class MainWindow;
15 class SavePanel;
18 enum {
19 MSG_NEW = 'newi',
20 MSG_SAVE_AS = 'svas',
21 MSG_EXPORT_AS = 'xpas',
22 MSG_WINDOW_CLOSED = 'wndc',
26 enum {
27 EXPORT_MODE_MESSAGE = 0,
28 EXPORT_MODE_FLAT_ICON,
29 EXPORT_MODE_SVG,
30 EXPORT_MODE_BITMAP_16,
31 EXPORT_MODE_BITMAP_32,
32 EXPORT_MODE_BITMAP_64,
33 EXPORT_MODE_BITMAP_SET,
34 EXPORT_MODE_ICON_ATTR,
35 EXPORT_MODE_ICON_MIME_ATTR,
36 EXPORT_MODE_ICON_RDEF,
37 EXPORT_MODE_ICON_SOURCE,
41 typedef enum {
42 LAST_PATH_OPEN = 0,
43 LAST_PATH_SAVE,
44 LAST_PATH_EXPORT,
45 } path_kind;
48 class IconEditorApp : public BApplication {
49 public:
50 IconEditorApp();
51 virtual ~IconEditorApp();
53 // BApplication interface
54 virtual bool QuitRequested();
55 virtual void MessageReceived(BMessage* message);
56 virtual void ReadyToRun();
57 virtual void RefsReceived(BMessage* message);
58 virtual void ArgvReceived(int32 argc, char** argv);
60 // IconEditorApp
62 private:
63 MainWindow* _NewWindow();
65 void _SyncPanels(BFilePanel* from,
66 BFilePanel* to);
68 const char* _LastFilePath(path_kind which);
70 void _StoreSettings();
71 void _RestoreSettings();
72 void _InstallDocumentMimeType();
74 private:
75 int32 fWindowCount;
76 BMessage fLastWindowSettings;
77 BRect fLastWindowFrame;
79 BFilePanel* fOpenPanel;
80 SavePanel* fSavePanel;
82 BString fLastOpenPath;
83 BString fLastSavePath;
84 BString fLastExportPath;
88 #endif // ICON_EDITOR_APP_H