128 lines
4.1 KiB
C++
128 lines
4.1 KiB
C++
#ifndef _NNTP_MAINWINDOW_HPP_
|
|
#define _NNTP_MAINWINDOW_HPP_
|
|
#ifndef _COMMON_MDIFRM_HPP_
|
|
#include <common/mdifrm.hpp>
|
|
#endif
|
|
#ifndef _COMMON_STRING_HPP_
|
|
#include <common/string.hpp>
|
|
#endif
|
|
#ifndef _SOCKET_WSADATA_HPP_
|
|
#include <socket/wsadata.hpp>
|
|
#endif
|
|
#ifndef _NNTP_NNTPTHREAD_HPP_
|
|
#include <nntp/nntpthrd.hpp>
|
|
#endif
|
|
#ifndef _NNTP_NEWSGROUP_HPP_
|
|
#include <nntp/newsgrp.hpp>
|
|
#endif
|
|
#ifndef _NNTP_NEWSOPTION_HPP_
|
|
#include <nntp/newsopt.hpp>
|
|
#endif
|
|
#ifndef _NNTP_HEADER_HPP_
|
|
#include <nntp/header.hpp>
|
|
#endif
|
|
#ifndef _BSPTREE_BTREE_HPP_
|
|
#include <bsptree/btree.hpp>
|
|
#endif
|
|
#ifndef _COMMON_POINTER_HPP_
|
|
#include <common/pointer.hpp>
|
|
#endif
|
|
#ifndef _THREAD_MONITOR_HPP_
|
|
#include <thread/monitor.hpp>
|
|
#endif
|
|
|
|
class RasInterface;
|
|
class EditWindow;
|
|
class StatusBarEx;
|
|
class LogView;
|
|
class ImageView;
|
|
class BrowseView;
|
|
|
|
class MainFrame : public FrameWindow, private NNTPThread
|
|
{
|
|
public:
|
|
MainFrame(void);
|
|
virtual ~MainFrame();
|
|
protected:
|
|
virtual void mdiDestroy(MDIWindow &mdiWindow);
|
|
virtual void mdiActivate(MDIWindow &mdiWindow);
|
|
virtual void mdiDeactivate(MDIWindow &mdiWindow);
|
|
virtual void moreWindows(void);
|
|
private:
|
|
enum{StatusBarID=101};
|
|
CallbackData::ReturnType closeHandler(CallbackData &someCallbackData);
|
|
CallbackData::ReturnType queryEndSessionHandler(CallbackData &someCallbackData);
|
|
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 lineHandler(CallbackData &someCallbackData);
|
|
CallbackData::ReturnType browseSelectHandler(CallbackData &someCallbackData);
|
|
|
|
BrowseView &createBrowseView(void);
|
|
LogView &createLogView(void);
|
|
ImageView &createImageView(void);
|
|
ImageView &createDocumentView(void);
|
|
BOOL openDocument(const String &strPathFileName);
|
|
BOOL openImage(const String &strPathFileName);
|
|
void createControls(void);
|
|
void insertHandlers(void);
|
|
void removeHandlers(void);
|
|
void getParams(String &hostName,String &userName,String &password);
|
|
void handleRetrieve(void);
|
|
void message(String messageString);
|
|
void message(Block<String> &messageStrings);
|
|
void handleCancelNews(void);
|
|
void decode(const String &pathFileName,String &strPathImageFile);
|
|
void loadFilterList(void);
|
|
WORD retrieveNews(const String &newsGroup);
|
|
WORD retrieveNews(void);
|
|
WORD retrieveGroups(void);
|
|
WORD saveBlock(const String &pathFileName,Block<String> &stringBlock);
|
|
WORD dialHost(void);
|
|
DWORD getSubscriberList(Block<NewsGroup> &subscriberList);
|
|
BOOL getArticles(const String &newGroup,Block<MsgID> &msgIDs);
|
|
bool inSubject(Block<String> &headText);
|
|
DWORD priorDays(void)const;
|
|
void verifyNewsDirectory(void);
|
|
void handleFileOpen(void);
|
|
void handleViewLog(void);
|
|
void handleFileBrowse(void);
|
|
void handleSubscribe(void);
|
|
void handleNewsServer(void);
|
|
void handleGeneralOptions(void);
|
|
void handleRasSettings(void);
|
|
void handleClearLog(void);
|
|
void handleImageFitToWindow(void);
|
|
DWORD openHandler(ThreadMessage &someThreadMessage);
|
|
DWORD preOpenHandler(ThreadMessage &someThreadMessage);
|
|
DWORD postOpenHandler(ThreadMessage &someThreadMessage);
|
|
|
|
Callback<MainFrame> mPaintHandler;
|
|
Callback<MainFrame> mDestroyHandler;
|
|
Callback<MainFrame> mCommandHandler;
|
|
Callback<MainFrame> mKeyDownHandler;
|
|
Callback<MainFrame> mSizeHandler;
|
|
Callback<MainFrame> mCreateHandler;
|
|
Callback<MainFrame> mCloseHandler;
|
|
Callback<MainFrame> mQueryEndSessionHandler;
|
|
Callback<MainFrame> mBrowseSelectHandler;
|
|
ThreadCallback<MainFrame> mOpenHandler;
|
|
ThreadCallback<MainFrame> mPreOpenHandler;
|
|
ThreadCallback<MainFrame> mPostOpenHandler;
|
|
|
|
SmartPointer<RasInterface> mRasInterface;
|
|
SmartPointer<StatusBarEx> mStatusControl;
|
|
SmartPointer<MDIWindow> mLogViewWinCache;
|
|
Block<NewsGroup> mSubscriberList;
|
|
Block<String> mFilterList;
|
|
String mLastOpenDirectory;
|
|
BTree<MsgID> mMasterList;
|
|
WSASystem mWSASystem;
|
|
NewsOption mNewsOption;
|
|
bool mIsCancelled;
|
|
};
|
|
#endif
|