]> git.saurik.com Git - wxWidgets.git/blame_incremental - utils/framelayout/src/updatesmgr.h
fixed the bug with the order of 2 size events when the scrollbar[s] (dis)appear in...
[wxWidgets.git] / utils / framelayout / src / updatesmgr.h
... / ...
CommitLineData
1/////////////////////////////////////////////////////////////////////////////
2// Name: No names yet.
3// Purpose: Contrib. demo
4// Author: Aleksandras Gluchovas (@Lithuania)
5// Modified by:
6// Created: 19/10/98
7// RCS-ID: $Id$
8// Copyright: (c) Aleksandras Gluchovas
9// Licence: wxWindows license
10/////////////////////////////////////////////////////////////////////////////
11
12#ifndef __UPDATESMGR_G__
13#define __UPDATESMGR_G__
14
15#include "controlbar.h"
16
17/*
18 * class implements slightly optimized logic for refreshing
19 * areas of frame layout - which actually need to be updated.
20 */
21
22class cbSimpleUpdatesMgr : public cbUpdatesManagerBase
23{
24 DECLARE_DYNAMIC_CLASS( cbSimpleUpdatesMgr )
25protected:
26
27 bool WasChanged( cbUpdateMgrData& data, wxRect& currentBounds );
28
29public:
30
31 cbSimpleUpdatesMgr(void) {}
32
33 cbSimpleUpdatesMgr( wxFrameLayout* pPanel );
34
35 // notificiactions received from Frame Layout (in the order, in which
36 // they usually would be invoked)
37
38 virtual void OnStartChanges();
39
40 virtual void OnRowWillChange( cbRowInfo* pRow, cbDockPane* pInPane );
41 virtual void OnBarWillChange( cbBarInfo* pBar, cbRowInfo* pInRow, cbDockPane* pInPane );
42 virtual void OnPaneMarginsWillChange( cbDockPane* pPane );
43 virtual void OnPaneWillChange( cbDockPane* pPane );
44
45 virtual void OnFinishChanges();
46
47 // refreshes parts of the frame layout, which need an update
48 virtual void UpdateNow();
49};
50
51#endif