4 * PWLib application header file for pwtest
6 * Copyright 98 Equivalence
9 * Revision 1.15 2001/12/06 04:06:03 robertj
10 * Removed "Win32 SSL xxx" build configurations in favour of system
11 * environment variables to select optional libraries.
13 * Revision 1.14 2001/11/08 00:31:27 robertj
14 * Reinstated URL test code and added "parameter" string dictionary display.
16 * Revision 1.13 2001/05/10 02:43:23 robertj
17 * Added SSL test code.
19 * Revision 1.12 2000/11/12 23:32:36 craigs
22 * Revision 1.11 2000/11/09 05:50:23 robertj
23 * Added RFC822 aware channel class for doing internet mail.
25 * Revision 1.10 2000/08/30 03:17:00 robertj
26 * Improved multithreaded reliability of the timers under stress.
28 * Revision 1.9 2000/07/15 09:47:35 robertj
29 * Added video I/O device classes.
31 * Revision 1.8 1999/09/10 04:35:43 robertj
32 * Added Windows version of PIPSocket::GetInterfaceTable() function.
34 * Revision 1.7 1999/08/07 07:11:14 robertj
35 * Added test for menu text change
37 * Revision 1.6 1999/07/03 03:12:59 robertj
38 * #ifdef'ed test code for stuff not in general distrubution.
40 * Revision 1.5 1999/06/24 14:00:09 robertj
41 * Added URL parse test
43 * Revision 1.4 1999/02/22 10:15:16 robertj
44 * Sound driver interface implementation to Linux OSS specification.
46 * Revision 1.3 1999/01/31 00:59:27 robertj
47 * Added IP Access Control List class to PTLib Components
49 * Revision 1.2 1998/12/23 01:15:58 robertj
50 * New directory structure
54 #ifndef _Pwtest_MAIN_H
55 #define _Pwtest_MAIN_H
57 #include <pwclib/toolbars.h>
60 #if ! defined(P_MOTIF) && ! defined(P_LESSTIF) && ! defined(P_QT)
61 #define TOPWINDOW_CLASS PMDIFrameWindow
63 #define TOPWINDOW_CLASS PTopLevelWindow
68 class MainWindow
: public TOPWINDOW_CLASS
70 PCLASSINFO(MainWindow
, TOPWINDOW_CLASS
)
73 MainWindow(PArgList
& args
);
75 PDECLARE_NOTIFIER(PMenuItem
, MainWindow
, NewCmd
);
76 PDECLARE_NOTIFIER(PMenuItem
, MainWindow
, OpenCmd
);
77 PDECLARE_NOTIFIER(PMenuItem
, MainWindow
, CloseCmd
);
78 PDECLARE_NOTIFIER(PMenuItem
, MainWindow
, SaveCmd
);
79 PDECLARE_NOTIFIER(PMenuItem
, MainWindow
, SaveAsCmd
);
80 PDECLARE_NOTIFIER(PMenuItem
, MainWindow
, PrintCmd
);
81 PDECLARE_NOTIFIER(PMenuItem
, MainWindow
, PrinterSetupCmd
);
82 PDECLARE_NOTIFIER(PMenuItem
, MainWindow
, ExitCmd
);
84 PDECLARE_COMMAND_ENABLE("Copy", MainWindow
, CopyCmd
, CanCopy
);
85 PDECLARE_COMMAND_ENABLE("Copy", MainWindow
, PasteCmd
, CanPaste
);
87 PDECLARE_COMMAND("MenuTest", MainWindow
, TestCmd
);
88 PDECLARE_COMMAND("IP_ACL", MainWindow
, IP_ACL_Cmd
);
89 PDECLARE_NOTIFIER(PMenuItem
, MainWindow
, ListInterfacesCmd
);
91 PDECLARE_COMMAND("TestSSL", MainWindow
, TestSSLCmd
);
93 PDECLARE_COMMAND("ParseURL", MainWindow
, ParseURLCmd
);
94 PDECLARE_COMMAND("MailTest", MainWindow
, MailTestCmd
);
95 PDECLARE_COMMAND("PlaySound", MainWindow
, PlaySoundCmd
);
96 PDECLARE_COMMAND("RecordSound", MainWindow
, RecordSoundCmd
);
97 PDECLARE_COMMAND("VideoCapture", MainWindow
, VideoCaptureCmd
);
98 PDECLARE_COMMAND("TimerStress", MainWindow
, TimerStressCmd
);
99 PDECLARE_NOTIFIER(PTimer
, MainWindow
, StressTimeout
);
102 virtual void OnRedraw(PCanvas
& canvas
);
103 virtual void OnResize(const PDim
&, ResizeType
);
104 virtual void OnClose();
108 PButtonBar
* buttonBar
;
109 PStatusBar
* statusBar
;
110 PPrintInfo printInfo
;
111 PTextFile TimerStressReport
;
115 class Pwtest
: public PApplication
117 PCLASSINFO(Pwtest
, PApplication
)
125 #endif // _Pwtest_MAIN_H
128 // End of File ///////////////////////////////////////////////////////////////