OSDN Git Service

Update Dutch.po (#842)
[winmerge-jp/winmerge-jp.git] / Src / HexMergeFrm.h
1 /////////////////////////////////////////////////////////////////////////////
2 //    WinMerge:  an interactive diff/merge utility
3 //    Copyright (C) 1997  Dean P. Grimm
4 //    SPDX-License-Identifier: GPL-2.0-or-later
5 /////////////////////////////////////////////////////////////////////////////
6 /** 
7  * @file  HexMergeFrm.h
8  *
9  * @brief interface of the CHexMergeFrame class
10  *
11  */
12 #pragma once
13
14 #include "SplitterWndEx.h"
15 #include "EditorFilepathBar.h"
16 #include "MergeFrameCommon.h"
17
18 #define HEKSEDIT_INTERFACE_VERSION 2
19 #include "heksedit.h"
20
21 class CHexMergeDoc;
22
23 /** 
24  * @brief Frame class for file compare, handles panes, statusbar etc.
25  */
26 class CHexMergeFrame : public CMergeFrameCommon
27 {
28         DECLARE_DYNCREATE(CHexMergeFrame)
29 public:
30         CHexMergeFrame();
31
32 // Operations
33 public:
34         void UpdateResources();
35         IHeaderBar * GetHeaderInterface();
36         CHexMergeDoc * GetMergeDoc() { return m_pMergeDoc; }
37
38         void UpdateAutoPaneResize();
39         void UpdateSplitter();
40         int GetActivePane();
41         void SetActivePane(int nPane);
42
43 // Attributes
44 protected:
45         CSplitterWndEx m_wndSplitter;
46         CEditorFilePathBar m_wndFilePathBar;
47         CStatusBar m_wndStatusBar[3];
48         SCROLLINFO m_HScrollInfo[3];
49         SCROLLINFO m_VScrollInfo[3];
50 // Overrides
51 public:
52         // ClassWizard generated virtual function overrides
53         //{{AFX_VIRTUAL(CHexMergeFrame)
54         public:
55         virtual BOOL OnCreateClient(LPCREATESTRUCT lpcs, CCreateContext* pContext);
56         virtual void ActivateFrame(int nCmdShow = -1);
57         virtual BOOL DestroyWindow();
58         protected:
59         //}}AFX_VIRTUAL
60
61 // Implementation
62 private:
63         void SavePosition();
64         void SaveActivePane();
65         virtual ~CHexMergeFrame();
66         void CreateHexWndStatusBar(CStatusBar &, CWnd *);
67 // Generated message map functions
68 private:
69         void UpdateHeaderSizes();
70         CHexMergeDoc * m_pMergeDoc;
71
72         //{{AFX_MSG(CHexMergeFrame)
73         afx_msg void OnMDIActivate(BOOL bActivate, CWnd* pActivateWnd, CWnd* pDeactivateWnd);
74         afx_msg void OnSize(UINT nType, int cx, int cy);
75         afx_msg void OnIdleUpdateCmdUI();
76         afx_msg LRESULT OnStorePaneSizes(WPARAM wParam, LPARAM lParam);
77         //}}AFX_MSG
78         DECLARE_MESSAGE_MAP()
79 };
80
81 inline IHeaderBar *CHexMergeFrame::GetHeaderInterface()
82 {
83         return &m_wndFilePathBar;
84 }
85