使用soui开发的mbc,只支持windows版本
w1146869587
2022-01-24 0408576e9da10015ffa9da0079b8c985113ce4b3
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
#pragma once
#include <core/swnd.h>
 
namespace SOUI
{
class SSplitBar : public SWindow
{
    SOUI_CLASS_NAME(SSplitBar, L"splitbar")
public:
    SSplitBar();
    ~SSplitBar();
    
protected:
    void    OnLButtonDown(UINT nFlags,CPoint pt);
    void    OnLButtonUp(UINT nFlags,CPoint pt);
    void    OnMouseMove(UINT nFlags,CPoint pt);
    BOOL    OnSetCursor(const CPoint &pt);
    LRESULT OnCreate( LPVOID );
 
    void ResizeHostWindow(int nOffset);
    SOUI_ATTRS_BEGIN()
        ATTR_INT(L"resizeHostWnd", m_bResizeHostWnd, FALSE)
        ATTR_INT(L"vertical", m_bVertical, FALSE)
        ATTR_INT(L"minSize", m_nSizeMin, FALSE)
        ATTR_INT(L"maxSize", m_nSizeMax,FALSE)
    SOUI_ATTRS_END()
 
    SOUI_MSG_MAP_BEGIN()
        MSG_WM_CREATE(OnCreate)
        MSG_WM_LBUTTONDOWN(OnLButtonDown)
        MSG_WM_LBUTTONUP(OnLButtonUp)
        MSG_WM_MOUSEMOVE(OnMouseMove)
    SOUI_MSG_MAP_END()
 
    CPoint      m_ptDragPrev;       /**< Í϶¯µ÷ÕûµÄǰһ¸öλÖà*/
    BOOL        m_bDragging;        /**< ÕýÔÚÍ϶¯ */
    BOOL        m_bResizeHostWnd;   /**< ÊÇ·ñËõ·ÅËÞÖ÷´°¿Ú*/
    int         m_nSizeMin;         /**< ×îС´óС */
    int         m_nSizeMax;         /**< ×î´ó´óС */
    int         m_nOrginPos;        /**< ×îԭʼµÄleft/top*/
    int         m_nTrackingPos;
    BOOL        m_bVertical;        /**< ÊÇ·ñ´¹Ö±·Ö¸î£¬Ä¬ÈÏÊÇˮƽ·Ö¸î*/
};
 
};