source: trunk/dll/objwin.c@ 551

Last change on this file since 551 was 551, checked in by Gregg Young, 18 years ago

Indentation cleanup

  • Property svn:eol-style set to native
  • Property svn:keywords set to Author Date Id Revision
File size: 2.2 KB
RevLine 
[377]1
2/***********************************************************************
3
4 $Id: objwin.c 551 2007-02-28 01:33:51Z gyoung $
5
6 Object windows
7
8 Copyright (c) 1993-98 M. Kimes
9 Copyright (c) 2006 Steven H.Levine
10
11 26 Jul 06 SHL Check more run time errors
[516]12 02 Nov 06 SHL Comments
[377]13
14***********************************************************************/
15
[2]16#define INCL_DOS
17#define INCL_WIN
18#define INCL_GPI
[377]19#include <os2.h>
[2]20
21#include <stdarg.h>
22#include <stdio.h>
23#include <stdlib.h>
24#include <string.h>
25#include <ctype.h>
26#include <stddef.h>
[377]27
[2]28#include "fm3dll.h"
29#include "fm3dlg.h"
30#include "fm3str.h"
31
[377]32static PSZ pszSrcFile = __FILE__;
33
[2]34#pragma alloc_text(OBJWIN,ObjectWndProc,MakeObjWin)
35
[551]36MRESULT EXPENTRY ObjectWndProc(HWND hwnd, ULONG msg, MPARAM mp1, MPARAM mp2)
[413]37{
[2]38 DIRCNRDATA *dcd;
39
[551]40 dcd = WinQueryWindowPtr(hwnd, QWL_USER);
41 if (dcd) {
42 switch (dcd->type) {
43 case DIR_FRAME:
44 return DirObjWndProc(hwnd, msg, mp1, mp2);
45 case TREE_FRAME:
46 return TreeObjWndProc(hwnd, msg, mp1, mp2);
47 case COLLECTOR_FRAME:
48 return CollectorObjWndProc(hwnd, msg, mp1, mp2);
49 case ARC_FRAME:
50 return ArcObjWndProc(hwnd, msg, mp1, mp2);
[2]51 }
52 }
[551]53 return WinDefWindowProc(hwnd, msg, mp1, mp2);
[2]54}
55
[551]56VOID MakeObjWin(VOID * args)
[413]57{
[551]58 HWND ObjectHwnd;
59 HAB hab2;
60 HMQ hmq2;
61 QMSG qmsg2;
[2]62
63 hab2 = WinInitialize(0);
[551]64 if (hab2) {
65 hmq2 = WinCreateMsgQueue(hab2, 512);
66 if (hmq2) {
[2]67 DosError(FERR_DISABLEHARDERR);
68 WinRegisterClass(hab2,
[551]69 GetPString(IDS_WCOBJECTWINDOW),
70 ObjectWndProc, 0, sizeof(PVOID));
[2]71 ObjectHwnd = WinCreateWindow(HWND_OBJECT,
[551]72 GetPString(IDS_WCOBJECTWINDOW),
73 (PSZ) NULL,
74 0,
75 0L,
76 0L,
77 0L,
78 0L, 0L, HWND_TOP, OBJ_FRAME, NULL, NULL);
[377]79 if (!ObjectHwnd)
[551]80 Win_Error2(HWND_OBJECT, HWND_DESKTOP, pszSrcFile, __LINE__,
81 IDS_WINCREATEWINDOW);
[377]82 else {
[551]83 WinSetWindowPtr(ObjectHwnd, QWL_USER, args);
84 /* initially populate container */
85 WinSendMsg(ObjectHwnd, UM_SETUP, MPVOID, MPVOID);
86 PostMsg(ObjectHwnd, UM_RESCAN, MPVOID, MPVOID);
87 priority_normal();
88 while (WinGetMsg(hab2, &qmsg2, (HWND) 0, 0, 0))
89 WinDispatchMsg(hab2, &qmsg2);
90 WinDestroyWindow(ObjectHwnd);
[2]91 }
92 WinDestroyMsgQueue(hmq2);
93 }
94 WinTerminate(hab2);
95 }
96}
Note: See TracBrowser for help on using the repository browser.