68 lines
2.0 KiB
C++
68 lines
2.0 KiB
C++
#ifndef _FTP_MAINWINDOW_HPP_
|
|
#define _FTP_MAINWINDOW_HPP_
|
|
#ifndef _COMMON_WINDOW_HPP_
|
|
#include <common/window.hpp>
|
|
#endif
|
|
#ifndef _COMMON_STRING_HPP_
|
|
#include <common/string.hpp>
|
|
#endif
|
|
#ifndef _FTP_FTPTHREAD_HPP_
|
|
#include <ftp/ftpthrd.hpp>
|
|
#endif
|
|
|
|
class EditWindow;
|
|
template <class T>
|
|
class Monitor;
|
|
|
|
class MainWindow : public Window
|
|
{
|
|
public:
|
|
MainWindow(HINSTANCE hInstance);
|
|
virtual ~MainWindow();
|
|
static String className(void);
|
|
private:
|
|
enum{TimerID=0};
|
|
void registerClass(void)const;
|
|
void insertHandlers(void);
|
|
void removeHandlers(void);
|
|
void processCommandLine(void);
|
|
void handleRemoteHost(void);
|
|
void message(const String &messageString);
|
|
void message(Block<String> &messageStrings);
|
|
CallbackData::ReturnType paintHandler(CallbackData &someCallbackData);
|
|
CallbackData::ReturnType destroyHandler(CallbackData &someCallbackData);
|
|
CallbackData::ReturnType commandHandler(CallbackData &someCallbackData);
|
|
CallbackData::ReturnType keyDownHandler(CallbackData &someCallbackData);
|
|
CallbackData::ReturnType sizeHandler(CallbackData &someCallbackData);
|
|
CallbackData::ReturnType createHandler(CallbackData &someCallbackData);
|
|
CallbackData::ReturnType timerHandler(CallbackData &someCallbackData);
|
|
CallbackData::ReturnType setFocusHandler(CallbackData &someCallbackData);
|
|
CallbackData::ReturnType lineHandler(CallbackData &someCallbackData);
|
|
CallbackData::ReturnType completionHandler(CallbackData &someCallbackData);
|
|
|
|
Callback<MainWindow> mPaintHandler;
|
|
Callback<MainWindow> mDestroyHandler;
|
|
Callback<MainWindow> mCommandHandler;
|
|
Callback<MainWindow> mKeyDownHandler;
|
|
Callback<MainWindow> mSizeHandler;
|
|
Callback<MainWindow> mCreateHandler;
|
|
Callback<MainWindow> mLineHandler;
|
|
Callback<MainWindow> mTimerHandler;
|
|
Callback<MainWindow> mSetFocusHandler;
|
|
Callback<MainWindow> mCompletionHandler;
|
|
static char szClassName[];
|
|
static char szMenuName[];
|
|
HINSTANCE mhInstance;
|
|
EditWindow *mlpEditWindow;
|
|
Monitor<EditWindow> mEditMonitor;
|
|
FTPThread mFTPThread;
|
|
WSASystem mWSASystem;
|
|
};
|
|
|
|
inline
|
|
String MainWindow::className(void)
|
|
{
|
|
return String(szClassName);
|
|
}
|
|
#endif
|