📄 shellview.h
字号:
//
// ShellView.h
//
#ifndef _SHELLVIEW_H
#define _SHELLVIEW_H
#define NAMESPACEVIEW_CLASS TEXT("QDrive EuriQans PVT Limited_NSClass")
#define STD 0
#define VIEW 1
#define INTHIS_DLL 2
typedef struct
{
int nType; // STD, VIEW, INTHIS_DLL
TBBUTTON tb;
}NS_TOOLBUTTONINFO, *LPNS_TOOLBUTTONINFO;
class CShellView : public IShellView
{
public:
CShellView(CShellFolder* pShellFolder,
LPCITEMIDLIST pItemIDList);
~CShellView();
//IUnknown methods
STDMETHOD (QueryInterface)(REFIID, LPVOID*);
STDMETHOD_ (DWORD, AddRef)();
STDMETHOD_ (DWORD, Release)();
//IOleWindow methods
STDMETHOD (GetWindow) (HWND*);
STDMETHOD (ContextSensitiveHelp) (BOOL);
//IShellView methods
STDMETHOD (TranslateAccelerator) (LPMSG);
STDMETHOD (EnableModeless) (BOOL);
STDMETHOD (UIActivate) (UINT);
STDMETHOD (Refresh) (void);
STDMETHOD (CreateViewWindow) (LPSHELLVIEW, LPCFOLDERSETTINGS, LPSHELLBROWSER,
LPRECT, HWND*);
STDMETHOD (DestroyViewWindow) (void);
STDMETHOD (GetCurrentInfo) (LPFOLDERSETTINGS);
STDMETHOD (AddPropertySheetPages) (DWORD, LPFNADDPROPSHEETPAGE, LPARAM);
STDMETHOD (SaveViewState) (void);
STDMETHOD (SelectItem) (LPCITEMIDLIST, UINT);
STDMETHOD (GetItemObject) (UINT, REFIID, LPVOID*);
protected:
DWORD m_dwRefCount;
private:
//private member functions
static LRESULT CALLBACK nameSpaceWndProc(HWND hWnd, UINT uMessage,
WPARAM wParam, LPARAM lParam);
static int CALLBACK compareItems(LPARAM lParam1, LPARAM lParam2,
LPARAM lpData);
private:
LPMALLOC m_pMalloc;
FOLDERSETTINGS m_fsFolderSettings;
HWND m_hWnd;
HWND m_hWndParent;
LPSHELLBROWSER m_pShellBrowser;
LPITEMIDLIST m_pidl;
LPPIDLMGR m_pPidlMgr;
CShellFolder *m_pSF;
RECT m_rect;
private:
// Windows Message Handlers
LRESULT onPaint(HDC hDC);
LRESULT onEraseBkGnd(HDC hDC);
LRESULT onCreate(void);
LRESULT onSize(WORD, WORD);
LRESULT onNotify(UINT, LPNMHDR);
LRESULT onCommand(HWND, DWORD dwNotifyCode, DWORD dwID);
LRESULT onSetFocus(HWND hWndOld);
LRESULT onContextMenu(int x, int y, BOOL bDefault);
private:
LRESULT onActivate(UINT iState);
private:
HMENU m_hMenu;
private:
void mergeToolBars();
void updateToolbar();
void mergeMenus();
void mergeFileMenu();
void mergeEditMenu();
void mergeViewMenu();
private:
UINT m_uiState;
private:
void initListCtrl();
void refreshListCtrl();
void onViewStyle(UINT uiStyle);
void selChange(NMLISTVIEW *pNMLV);
private:
HWND m_hWndListCtrl;
};
#endif //_SHELLVIEW_H
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -