📄 mainfrm.h
字号:
// MainFrm.h : interface of the CMainFrame class
//
/////////////////////////////////////////////////////////////////////////////
#if !defined(AFX_MAINFRM_H__19E497C1_4ECF_11D3_9B1D_0000E85300AE__INCLUDED_)
#define AFX_MAINFRM_H__19E497C1_4ECF_11D3_9B1D_0000E85300AE__INCLUDED_
#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000
//########################################################
#include "StatusBarWithProgress.h"
#include "MyIEView.h"
#include "ChildFrm.h"
#include "ChevBar.h"
#include "MenuBar.h"
#include "AddressBarEx.h"
#include "TabDropTarget.h"
#include "ProxyList.h"
#include "ExternalUtilItem.h"
#include "AnimateIcon.h" // Added by ClassView
#include "AdvTabCtrl.h"
//add new
#include "ComboBar.h"
#include "macro.h"
#include "function.h"
//########################################################
//Define the CommandTarget ids
#define HTMLID_FIND 1
#define HTMLID_VIEWSOURCE 2
#define HTMLID_OPTIONS 3
//toolbar id
#define ID_TOOLBAR_ADDRESS AFX_IDW_TOOLBAR+1
#define ID_TOOLBAR_TAB AFX_IDW_TOOLBAR+2
#define ID_TOOLBAR_SEARCH AFX_IDW_TOOLBAR+3
#define ID_TOOLBAR_STATUS AFX_IDW_TOOLBAR+4
//some else put here
#define WSM_TRAY WM_USER+3
#define BORDER 2
#define DEFAULT_PROPERTY 0xFFFFFFFF
#define MAX_UNDO 24 //0x1a
#define MAX_HISTORY 10
//##############################################################
//window list
#define B_WINDOW 0xC00 //512
#define E_WINDOW 0xDFF
//external tool
#define B_EX_TOOL 0xE00 //256
#define E_EX_TOOL 0xEFF
//skin
#define B_SKIN 0xF00 //256
#define E_SKIN 0xFFF
//open all fav
#define B_OPEN_FAV 0x1000 //256
#define E_OPEN_FAV 0x10FF
//translation
#define B_TRANS 0x1100 //256
#define E_TRANS 0x11FF
//web proxy
#define B_WEB_PROXY 0x1200 //256
#define E_WEB_PROXY 0x12FF
//open all fav most
#define B_OPEN_FAV_MOST 0x1300 //256
#define E_OPEN_FAV_MOST 0x13FF
//open fav item
#define B_FAV 0x1400 //19455
#define E_FAV 0x5FFF
//undo close
#define B_UNDO 0x6200 //256
#define E_UNDO 0x62FF
//addto this fav
#define B_ADDTO_FAV 0x6300 //256
#define E_ADDTO_FAV 0x63FF
//proxy server
#define B_PROXY 0x6400 //512
#define E_PROXY 0x65FF
//search item
#define B_SEARCH 0x7600 //512
#define E_SEARCH 0x77FF
//search item for drag menu
#define B_SEARCH_DRAG 0x7800 //512
#define E_SEARCH_DRAG 0x79FF
//go up
#define B_GO_UP 0x7A00 //256
#define E_GO_UP 0x7AFF
//sort save
//#define B_SORT_SAVE 0x7B00 //256
//#define E_SORT_SAVE 0x7BFF
//go back forward history
#define B_HISTORY 0x7C00 //256
#define E_HISTORY 0x7CFF
//not max 0x8000 !!!!
//for that: #define ID_FILE_NEW_BLANK 32772
//########################################################
//open in new window active option
#define INW_NORMAL 0x1
#define INW_ACTIVE 0x2
#define INW_INACTIVE 0x4
#define INW_OTHER_SIDE 0x8 //open to other side
//right click option
#define RC_NOT_FILTER 2
//########################################################
//tab icon
#define TI_NO -1 //no icon
#define TI_0 0 //blank page
#define TI_1 1 //progress 1 0 ~ 33%
#define TI_2 2 //progress 2 33% ~ 66%
#define TI_3 3 //progress 3 66% ~ 99%
#define TI_LOCK 4
#define TI_100 5 //100%
#define TI_PROTECT 6
#define TI_SAVE 7
#define TI_CLOSE 8
#define TI_READ 9
#define TI_MARK 10
#define TI_MAX TI_MARK
#define TI_COUNT 11
#define IS_TABICON(nIcon) (nIcon<TI_COUNT)
#define IS_FAVICON(nIcon) (nIcon>TI_MAX)
//########################################################
//work threads
UINT _cdecl SendDocuments(LPVOID file);
typedef struct stagDocuments
{
char filename[256];
BOOL IsLocalFile;
}sDocuments;
UINT _cdecl QuickSaveDocuments(LPVOID savefiles);
typedef struct stagSaveFiles
{
CString base;
CString filename;
CMapStringToString mapDLFiles;
CString root;
}sSaveFiles;
UINT _cdecl TSaveConfig(LPVOID con);
//########################################################
class CCollectorDlg;
class CLinkListDlg;
class CMonitor;
class CMainFrame;
//########################################################
extern CMainFrame* pmf;
extern CStringArray g_astrLinks;
extern CStringArray g_astrFavs;
extern const UINT MSWHELL_ROLLMSG;
extern char g_szFile[1024];
extern char* g_strLngBuf;
extern BSTR g_bstrYes;
extern int g_nPercent;
extern int g_bMax;
extern int g_nNextTab;
extern int g_nDefFontSize;
extern int g_nTrayIconID;
extern BOOL g_bSilent;
extern BOOL g_bDisScrollText;
extern BOOL g_bFilteBlank;
extern BOOL g_bLinkInNewWindow, g_bFileInNewWindow, g_bFavInNewWindow, g_bHisInNewWindow;
extern BOOL g_bConfirmCloseLock;
extern BOOL g_bForbidMult;
extern BOOL g_bVerbose;
extern BOOL g_bLockHomepage;
extern BOOL g_bProxyDirty;
extern BOOL g_bShowIndex;
extern BOOL g_bClickClose;
extern BOOL g_bShowDot;
extern BOOL g_bShowRead;
extern BOOL g_bShowFavIcon;
extern BOOL g_bRTab;
extern BOOL g_bKillPop,g_bKillAutoWin,g_bKillListWin,g_bKillDupWin;
//########################################################
class CMainFrame : public CMDIFrameWnd
{
DECLARE_DYNAMIC(CMainFrame)
public:
CMainFrame();
// Attributes
public:
BOOL m_bTopTab;
BOOL m_bReloadUnShownImage;
BOOL m_bKillBlank;
BOOL m_bNotFilterClickDialog;
BOOL m_bUseTargetFrameName;
BOOL m_bSimuDragLink;
BOOL m_bUseIeKey;
BOOL m_bFilterRefresh;
BOOL m_bShowGesture;
BOOL m_bNotSaveKeyword;
BOOL m_bNameByTitle;
BOOL m_bSavePageByDate;
BOOL m_bActiveNewAddress;
BOOL m_bBlankMonitorClip;
BOOL m_nTabStyle;
BOOL m_bTabDefaultColor;
BOOL m_bConfirmUnsafePage;
BOOL m_bShowPageReadedIcon;
BOOL m_bAutoRunExternal;
BOOL m_bKeepOnePage;
BOOL m_bShowScriptResult;
BOOL m_bSearchMatchCase;
BOOL m_bSearchMatchWhole;
BOOL m_bOutputAutoClean;
BOOL m_bOutputSaveFilter;
BOOL m_bOutputSaveUrlFilter;
BOOL m_bOutputSaveImg;
BOOL m_bOutputSavePage;
BOOL m_bOutputSaveText;
BOOL m_bOutputSaveTime;
BOOL m_bCollectorAddtoBottom;
BOOL m_bForbidMainTitle;
BOOL m_bNotShowRightMenu;
BOOL m_bEncryptStringItem;
BOOL m_bCloseCleanCache;
BOOL m_bCloseCleanCookies;
BOOL m_bCloseCleanFormData;
BOOL m_bCloseCleanHistory;
BOOL m_bCloseCleanTypedAddress;
BOOL m_bCloseCleanTypedSearch;
BOOL m_bCloseCleanUndoClose;
BOOL m_bDisableBackground;
BOOL m_bDirectOpenFile;
BOOL m_bOpenInNew;
BOOL m_bFavShowUrl;
BOOL m_bComboShowIcon;
BOOL m_bGoProxyMenu;
BOOL m_bMenuLoadLastClose;
BOOL m_bNotConfirmPopupFilter;
BOOL m_bPlayPopupFilterSound;
BOOL m_bShowToolbarLabel,m_bShowAddressBarButton;
BOOL m_bShowSearchBarButton;
BOOL m_bAutoPopWin;
BOOL m_bWheelTab,m_bWheelOnTab;
BOOL m_bUseDefaultFavPath;
BOOL m_bUseDefaultLinkPath;
BOOL m_bMinimizeToTray, m_bCloseToTray;
BOOL m_bShowTrayIcon;
BOOL m_bCloseAllWhenCloseToTray;
BOOL m_bOpenFolderOut;
BOOL m_bActiveFileNew;
BOOL m_bUrlFilterDirty;
BOOL m_bIsAutoSave;
int m_nLDbClickTabBlank;
int m_nRDbClickTabBlank;
int m_nFtpOpenType;//0:self,1:explorer,2:else
int m_nCleanAllMode;
int m_nManagerIndex;//download manager name
int m_nSearchBarAction;
int m_nPopFiltered;
int m_nCollectorTrans;
DWORD m_dwFsShow;//full screen
DWORD m_dwAhShow;//auto hide
DWORD m_dwDefaultProperty;
POINT m_ptMouseDown;//last mouse down point
CTime m_tStartTime;
double m_nPopDelay;
COLORREF m_crUnSelColor;
COLORREF m_crUnSelFontColor;
COLORREF m_crSelFontColor;
COLORREF m_crSepColor;
CString m_strBlankContent;
CString m_strLastNavUrl;
CString m_strFtpExePath;//ftp url open application path
CString m_strFormMainPwd;
CString m_strManagerScript;//download manager script
CString m_strManagerType;//download manager type
CString m_strStatusStringFormat;
CString m_strAutoSavePath;
CString m_strHomePage;
CString m_strFavPath;
CString m_strLinkPath;
CStringList m_astrTypedSearch;
CStringList m_astrFavoriteFolders;
CStringList m_astrPopup;
CStringList m_astrUnPopup;
CStringArray m_astrUrlFilter;
CStringArray m_astrUrlUnFilter;
// Operations
public:
BOOL DoSpecialUrl(CString str);
BOOL PromptMenuCommand(UINT nID);
BOOL NeedUrlFilter(CString strUrl);
BOOL NeedUnUrlFilter(CString strUrl);
BOOL UrlFilterStar(CStringArray &pattern, CString url);
BOOL NeedPopFilter(CString strUrl);
BOOL NeedUnPopFilter(CString strUrl);
BOOL PopFilterStar(CStringList &astr, CString url);
BOOL DoKeyMsg(MSG* pMsg);
BOOL DoMouseMsg(MSG* pMsg);
BOOL ActiveViewSetFocus();
BOOL IsDownloadAble(CString strUrl);
BOOL IsDownloading();
BOOL IsImageType(LPCTSTR lpszText);
BOOL GetScriptLangCode(CString &strCode, CString &strLang);
BOOL ConfirmPopupFilter(CString url, BOOL bConfirm);
//
int FindCacheFavIcon(CString strRoot);
int GetFavIcon(CString strUrl);
//
int GetPageKeyWordCount();
//
void SetAllTabFavIcon(CString strRoot, int nIcon);
void SaveFilterList2File(BOOL bUrlFilter);
void AdjustMenuWidth(CString &str);
void DragDropLink(CString str, BOOL bActive);
void DragDropUrl(CString str, BOOL bActive);
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -