⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 panedrawpl.h

📁 wxGTK 是 wxWidgets 的 linux GTK+ (>2.2.3)版本。wxWidgets 是一个跨平台的 GUI 框架
💻 H
字号:
/////////////////////////////////////////////////////////////////////////////// Name:        panedrawpl.h// Purpose:     cbPaneDrawPlugin class header.// Author:      Aleksandras Gluchovas <mailto:alex@soften.ktu.lt>// Modified by:// Created:     06/09/98// RCS-ID:      $Id: panedrawpl.h,v 1.6 2005/09/23 12:46:58 MR Exp $// Copyright:   (c) Aleksandras Gluchovas// Licence:     wxWindows licence/////////////////////////////////////////////////////////////////////////////#ifndef __PANEDRAWPL_G__#define __PANEDRAWPL_G__#include "wx/fl/controlbar.h"/*Simple but all-in-one plugin implementation. Resembles the look and feel ofMFC control-bars. The class handles painting of the pane and the items in it;it generates bar/layout customization events, when the user right-clicks the bar/pane.Hooking an instance of this and row-layout plugins for each panewould be enough for the frame layout to function properly(they are plugged in automatically by the wxFrameLayout class).*/class WXDLLIMPEXP_FL cbPaneDrawPlugin : public cbPluginBase{public:    DECLARE_DYNAMIC_CLASS( cbPaneDrawPlugin )protected:    // resizing bars/rows state variables    bool           mResizeStarted;    bool           mResizeCursorOn;    wxPoint        mDragOrigin;    cbBarInfo*     mpDraggedBar; // also used when in bar-drag action    cbRowInfo*     mpResizedRow;    bool           mRowHandleHitted;    bool           mIsUpperHandle;    bool           mBarHandleHitted;    bool           mIsLeftHandle;    bool           mBarContentHitted;    // contstraints for dragging the handle    wxRect         mHandleDragArea;    bool           mHandleIsVertical;    int            mHandleOfs;    int            mDraggedDelta;    wxPoint        mPrevPos;    // used for handling, start-draw-in-area events    wxClientDC*    mpClntDc;    cbDockPane*    mpPane; // is set up temorary short-cut, while handling eventprotected:        // Internal helper: draws the dragged handle.    void DrawDraggedHandle( const wxPoint& pos, cbDockPane& pane );        // Internal helper: draws the pane shading.    virtual void DrawPaneShade( wxDC& dc, int alignment );        // Internal helper: draws the pane shading for a row.    virtual void DrawPaneShadeForRow( cbRowInfo* pRow, wxDC& dc );        // Internal helper: draws the upper row handle.    virtual void DrawUpperRowHandle( cbRowInfo* pRow, wxDC& dc );        // Internal helper: draws the lower row handle.    virtual void DrawLowerRowHandle( cbRowInfo* pRow, wxDC& dc );        // Internal helper: draws the upper row shading.    virtual void DrawUpperRowShades( cbRowInfo* pRow, wxDC& dc, int level );        // Internal helper: draws the lower row shading.    virtual void DrawLowerRowShades( cbRowInfo* pRow, wxDC& dc, int level );        // Internal helper: draws the inner bar shading.    virtual void DrawBarInnerShadeRect( cbBarInfo* pBar, wxDC& dc );        // Internal helper: draws shading.    virtual void DrawShade( int level, wxRect& rect, int alignment, wxDC& dc );        // Internal helper: draws shading.    virtual void DrawShade1( int level, wxRect& rect, int alignment, wxDC& dc );        // Internal helper: sets a light pixel at the given location.    inline void SetLightPixel( int x, int y, wxDC& dc );        // Internal helper: sets a dark pixel at the given location.    inline void SetDarkPixel ( int x, int y, wxDC& dc );public:        // Default constructor.    cbPaneDrawPlugin();        // Constructor taking frame layout pane and a pane mask.    cbPaneDrawPlugin( wxFrameLayout* pPanel, int paneMask = wxALL_PANES );        // Destructor.    virtual ~cbPaneDrawPlugin();        // Clone function, returning a new instance of this class.    virtual cbPluginBase* Clone() { return new cbPaneDrawPlugin(0,0); }        // Handler for left mouse button down events.    void OnLButtonDown( cbLeftDownEvent&   event );        // Handler for left double-click mouse button down events.    void OnLDblClick  ( cbLeftDClickEvent& event );        // Handler for left mouse button up events.    void OnLButtonUp  ( cbLeftUpEvent&     event );        // Handler for right mouse button up events.    void OnRButtonUp  ( cbRightUpEvent&    event );        // Handler for mouse move events.    void OnMouseMove  ( cbMotionEvent&     event );        // Handler for draw pane background events.    void OnDrawPaneBackground ( cbDrawPaneBkGroundEvent& event );        // Handler for draw pane decoration events.    void OnDrawPaneDecorations( cbDrawPaneDecorEvent&    event );        // Handler for draw row decoration events.    void OnDrawRowDecorations ( cbDrawRowDecorEvent&     event );        // Handler for draw row handles events.    void OnDrawRowHandles     ( cbDrawRowHandlesEvent&   event );        // Handler for draw row background events.    void OnDrawRowBackground  ( cbDrawRowBkGroundEvent&  event );        // Handler for bar size events.    void OnSizeBarWindow      ( cbSizeBarWndEvent&       event );        // Handler for draw bar decorations events.    void OnDrawBarDecorations ( cbDrawBarDecorEvent&     event );        // Handler for draw bar handles events.    void OnDrawBarHandles     ( cbDrawBarHandlesEvent&   event );        // Handler for start draw in area events.    void OnStartDrawInArea    ( cbStartDrawInAreaEvent&  event );        // Handler for finish draw in area events.    void OnFinishDrawInArea   ( cbFinishDrawInAreaEvent& event );    DECLARE_EVENT_TABLE()};#endif /* __PANEDRAWPL_G__ */

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -