|
|
1.1 root 1: /*
2: * clidemo.h
3: *
4: * Created by Microsoft Corporation.
5: * (c) Copyright Microsoft Corp. 1990 - 1992 All Rights Reserved
6: */
7:
8: //*** CONSTANTS ***
9:
10: #define CXDEFAULT 400 //* Default object size: 400 x 300
11: #define CYDEFAULT 300
12: #define COBJECTSMAX 50 //* max number of objects in our app
13:
14: //*** PROTOTYPES ***
15:
16: //*** Exported window procedures
17:
18: LONG APIENTRY FrameWndProc(HWND, UINT, DWORD, LONG);
19:
20: //*** FAR
21:
22: VOID FAR FixObjectBounds(LPRECT lprc);
23:
24: //*** Local
25:
26: static LPOLECLIENT InitClient(HANDLE);
27: static VOID EndClient(LPOLECLIENT);
28: static LPAPPSTREAM InitStream(HANDLE);
29: static VOID EndStream(LPAPPSTREAM);
30: static VOID ProcessCmdLine(LPSTR);
31: static BOOL InitApplication(HANDLE);
32: static BOOL InitInstance(HANDLE);
33: static VOID SetTitle(PSTR);
34: static VOID MyOpenFile(PSTR,LHCLIENTDOC *, LPOLECLIENT, LPAPPSTREAM);
35: static VOID NewFile(PSTR,LHCLIENTDOC *, LPAPPSTREAM);
36: static BOOL SaveFile(PSTR, LHCLIENTDOC, LPAPPSTREAM);
37: static VOID SaveasFile(PSTR, LHCLIENTDOC, LPAPPSTREAM);
38: static BOOL LoadFile(PSTR, LHCLIENTDOC, LPOLECLIENT, LPAPPSTREAM);
39: static VOID ClearAll(LHCLIENTDOC, BOOL);
40: static VOID EndInstance(VOID);
41: static BOOL SaveAsNeeded(PSTR,LHCLIENTDOC,LPAPPSTREAM);
42: static VOID UpdateMenu(HMENU);
43: static BOOL RegDoc(PSTR, LHCLIENTDOC *);
44: static VOID DeregDoc(LHCLIENTDOC);
45: static BOOL InitAsOleClient(HANDLE, HWND, PSTR, LHCLIENTDOC *, LPOLECLIENT *, LPAPPSTREAM *);
46: VOID FAR ClearItem(APPITEMPTR);
47: static LONG QueryEndSession(PSTR, LHCLIENTDOC, LPAPPSTREAM);
48:
49: //*** MACROS ***
50:
51: /*
52: * ANY_OBJECT_BUSY
53: * checks to see if any object in the document is busy. This prevents
54: * a new document from being saved to file if there are objects in
55: * asynchronous states.
56: */
57:
58: #define ANY_OBJECT_BUSY {\
59: if (ObjectsBusy()) \
60: break; \
61: }
62:
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.