|
|
1.1 root 1: /*
2: * Unfortunately, we have to have individual #imports here because
3: * ProjectBuilder generates a Draw_main.m which does NOT import our
4: * precompiled header.
5: */
6:
7: #import <dpsclient/event.h>
8: #import <appkit/Application.h>
9:
10: @class Matrix, View, Panel, TextField, NXColorPanel, SavePanel, MenuCell;
11: @class GridView, DrawDocument, DrawPageLayout;
12:
13: @interface DrawApp : Application
14: {
15: Matrix *tools; /* the Tool Palette matrix */
16: id currentGraphic; /* the factory object used to create things */
17: View *savePanelAccessory; /* the SavePanel Draw/PS/TIFF view */
18: Matrix *spamatrix; /* the matrix in the savePanelAccessory view */
19: Panel *infoPanel; /* the Info... panel */
20: TextField *version; /* the version field in the Info... panel */
21: GridView *gridInspector; /* the shared modal panel to inspect grids */
22: NXColorPanel *inspectorPanel; /* the shared inspector panel */
23: BOOL cursorPushed; /* whether we've temporarily changed the
24: cursor to NXArrow because the user held
25: down the Control key */
26: BOOL haveOpenedDocument; /* whether we have opened a document */
27: }
28:
29: /* Public methods */
30:
31: + initialize;
32: + new;
33:
34: - currentGraphic;
35: - (DrawDocument *)currentDocument;
36: - (const char *)currentDirectory;
37: - startEditMode;
38: - endEditMode;
39:
40: /* Shared panels */
41:
42: - (SavePanel *)saveToPanel:sender;
43: - (SavePanel *)saveAsPanel:sender;
44: - (GridView *)gridInspector;
45: - (Panel *)inspectorPanel;
46: - (DrawPageLayout *)pageLayout;
47: - orderFrontInspectorPanel:sender;
48:
49: /* Target/Action methods */
50:
51: - info:sender;
52: - new:sender;
53: - open:sender;
54: - terminate:sender;
55:
56: /* Application delegate methods */
57:
58: - appDidInit:(Application *)sender;
59: - (int)app:sender openFile:(const char *)path type:(const char *)type;
60: - (BOOL)appAcceptsAnotherFile:(Application *)sender;
61:
62: /* Listener/Speaker methods */
63:
64: - (int)msgDirectory:(const char **)fullPath ok:(int *)flag;
65: - (int)msgVersion:(const char **)aString ok:(int *)flag;
66: - (int)msgFile:(const char **)fullPath ok:(int *)flag;
67: - (int)msgPrint:(const char *)fullPath ok:(int *)flag;
68: - (int)msgSelection:(const char **)bytes length:(int *)len asType:(const char *)aType ok:(int *)flag;
69: - (int)msgCopyAsType:(const char *)aType ok:(int *)flag;
70: - (int)msgCutAsType:(const char *)aType ok:(int *)flag;
71: - (int)msgPaste:(int *)flag;
72:
73: /* Global cursor setting methods */
74:
75: - cursor;
76: - sendEvent:(NXEvent *)event;
77:
78: /* Menu updating method */
79:
80: - (BOOL)menuItemUpdate:(MenuCell *)menuCell;
81: - (BOOL)validateCommand:(MenuCell *)menuCell;
82:
83: /* Target/Action method which sets the currentGraphic instance variable */
84:
85: - setCurrentGraphic:sender;
86:
87: @end
88:
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.