diff --git a/utils/framelayout/src/manual.html b/utils/framelayout/src/manual.html deleted file mode 100644 index 7b2ea500e1..0000000000 --- a/utils/framelayout/src/manual.html +++ /dev/null @@ -1,8302 +0,0 @@ -
- --1. Overview -2. Main components -3. Persistance framework -4. Generated Source Code docs (useless) - - -1. Overview -=========== - -Docking is a relatively new method of layouting GUI -components. It allows user to customize his/her workplace -by simply dragging around and resizing contents within -applications main window. These contents (further refered -as control-bars) can be docked along top, bottom, left and -right sides of the frame, positioning workplace's client area -window (e.g. current document) in the center of the frame. - -2. Main components. -=================== - - * parent frame - * four docking panes - * control-bars - * client area - - Parent frame is usually application's main window. - Frame-Layout system (FL) allows layout compnents - to be placed into any kind of window such as dialog, - panel or modeless-frame. - - Docking panes are rectangluar areas which surround the client - window along top, bottom, left and right edges. Control-bars - are docked into these panes. - - Cotrol-bars are named so, because the usually embed common - GUI controls such as toolbars, choices, text/tree controls. - Control-bars can be fixed-size or flexible. For the later - ones FL automaticlly places resizing handles along those edges - of flexible-bar, which actually can be moved, e.g. edge which - is in touch with the client are will have handle to allow - ajusting the client's area vs. pane's area. - - Client area can be any provided window such as panel or MDI parent - window. FL will resize and position this window to fit the free - space, which is not occupied by surrounding panes. - - (the rest is "under construction" at the moment) - ---------------------------------------------------------------------- - -Persistance-Framework for wxWindows, 1998 (c) Aleksandras Gluchovas - -Contents -======== - - 1. Abstract - 2. Extending wxWindows object system - 3. Common scenario for making classes persistent - 4. Kinds of persistent objects - 5. PF behavior - 6. Transient objects - 7. Object versioning - 8. Polymorphic persistence - 9. Serializers for common wxWindows classes -10. Class/Macro Reference - -1. Abstract -=========== - - The persistence-framework (PF) aims to provide - an easier means of making C++ objects persistent. - It is solely specialized to store/load (i.e. serialize) - objects, but not to manipulate their data, therefore - it cannot act as a real object-database. This PF also could - be used for implementing undo-able operations on object- - systems (to some extent). It handles most common specialties - of run-time data: - - 1) Not-storable (transient) objects - 2) Differences in object structure among different builds - 3) Not-data characteristics of objects - dynamic types - of class instances - -2. "Extending" wxWindows object system -====================================== - - PF does not require any modification to existing - not-persistent classes. It uses meta-information - held in derivatives of wxObject for - the purpose of RTTI, thus only the later - classes can be made persistent. Information - about class’s persistence is captured into - static structures, using similar techniques as - wxWindows system of dynamic-classes is implemented. - -3. Common scenario for making classes persistent -================================================ - - 1) For each persistent class, corresponding serializer- - class have to be written. Name for the serializer - class contains class-name of the traget class - with "Serializer" appended at the end, e.g. for - wxRect there would be wxRectSerializer. - - 2) Two macros DECLARE_SERIALIZER_CLASS(..) and - IMPLEMENT_SERIALIZER_CLASS(..) have to be placed - into header and implementation files. These macros will - "inject" static data about serializer, so as to compose - a chain of run-time serializer information structures. - - 3) Declare and implement methods for serialization and - initialization of the target-class (i.e. the - one for which serializer is written). These - methods should be declared as static in the - serializer class, and pointers to them are - passed to IMPLEMENT_SERIALIZER_CLASS(..) macro - - to complete static information about serializer. - - The above three steps accomplish the "declarative" - part of making object persistent. For actual storing/loading - of objects, instances of 'wxObjectStorage' and - 'wxDataStreamBase' derivative classes have to - be created. Then references to objects are - iterativelly passed to corresponding 'Xchg...' - methods of this 'wxObjectStorage' (further referred - as storage manager) to perform string/loding using - the given byte-stream. - - (note: the later approach is overly general, - thus in the future, improvements will be made - in order to provide some practical defaults) - -4. Kinds of persistent objects -============================== - - There are following data of C++ applications - can be made persistent: - - 1) basic types (int, double, etc) - 2) classes/structures - 3) pointers to objects, objects here - referred as instances of a class, i.e. - which can have "wx-run-time-information". - 4) pointers to transient objects, - also referred as "initial references". - -5. PF behavior -=============== - - Basic types are stored in their binary - representation. Derivatives of 'wxDataStreamBase' - may implement storing of basic-types in - machine-independent format. - - Serialization of classes proceeds with - storing of basic types, aggregated objects and - references (pointers really) to external - objects. - - When reference to other object is encountered, - it is encoded in the form which does not - depend on the current in-memory address of - referred object, thus upon loading, - it can be restored correctly. After - serializing reference, storage manager - immediately performs serialization of the - object which is referred. Technically, this - approach allows using streams which cannot - perform bi-directional read/write operations - - cannot 'seek', e.g. socket-streams. - - It is not necessary to iterativelly pass - each persistent object to object storage - in order to serialize them. Usually run-time - object structures are "self-contained", i.e. - objects contain other objects or at least have - cross-references. Therefore it's enough to - serialize the "root" object in the system's - hierarchy, and all the referred objects - will be automatically serialized. - -6. Transient objects -==================== - - The objects which are not intended to be - persistent are referred as transient. - To prevent serialization of such objects, - initial references (IRs) to them should be - passed to the storage manager, before any - loading/storing can proceed. The Order in - which they are passed should be the same for loading - and storing - since there is a 'sequence-number' for - each IR which is generated when serializing the pointer - which was identified as be an initial-reference - (automatically recognized using hash-tables). - - Simple example of transient object could be a - printer object, to which other persistent - objects may refer, but the printer itself - cannot be serialized. Also in wx-frame-layout - system, a reference to application's frame window - is registered as IR. - -7.Object versioning -=================== - - NOTE:: implementation of versioning is prototypical - - not well tested yet. - - PF attempts to reduce the burden needed to program - support for loading/storing multiple versions - of persistant objects. - - The versioning of objects is not enforced by PF, - it is provided as additional possibility. - - For each distinct version of a class separate - serializer have to be written. Implementing such - serializers is similar to the above described - not-versioned serializers impl., except that - different macros should be used - extended - with "FOR_VERSION" postfix, e.g. - IMPLEMENT_SERIALIZER_CLASS_FOR_VERSION(..) used instead - IMPLEMENT_SERIALIZER_CLASS(..), where the version name - string is additionally passed to the former macro. - - Storage manager will store version information to the - the output stream, and read it upon loading - to find - matching serializer. An error (for now: exception) will - occur when no matching serializer was found. - - When storing, serializer for the latest version of - object is used, following the assumption that usually - the newest object versions exist at run-time. Only - when staying in files they are "getting older", thus - it is possible to load older data into newer objects - (backwards-compatibility), but not to store newer objects - in the "old format". - -8. "Polymorphic" persistence -============================ - - This mechanism is meant for reducing number of serializers - required to write for classes with the same base - class and same persistent data that base class, - but different behavior. - - The "poliymorphic" persistence is enabled by default, - allowing the storage manager to search for serializers - of base classes, if the ones for the derived classes were - not found. - - This can by disabled by calling SetStrictMatching(TRUE), - forcing the manager to abort serialization, if no - serializer found, which match the object's class exactly. - - This does not mean however, that instance of the - base class is created even if no 'CLASSINFO' data for the - derived class were found, in such cases the serialization - will be aborted also, i.e. dynamic type of object should - be always restored preciselly. - - Concrete example: having base class Employee, which has - info common to all employees. Other classes 'Secretary', - 'Manager', etc are derivatives of 'Employee' and do not - contain any additional data members. Thus they only - specify different behavior and can be safely serialized - by 'EmployeeSerializer' class. - - For wxWindows I've written serializer for wxWindow class, - and it can be used to serialize generic wxPanel and other - derivtives of wxWindow which do not add any additional members. - -9. Serializers for common wxWindows objects -========================================== - - There may appear some difficulties to find out - for which classes serializers are already written - and for which aren't. because serializer is actually - a pair of static methods, which can reside (scattered) - anywhere among implementation files. In future storage - manager will be modified to check for duplicated - serializers (only possible at run-time). Currently - serializers the following common wxWindows classes - are present: - - wxNode (is serialized "in it's entirely"), - wxList, wxPoint, wxSize, wxRect, wxColour, wxPen, - wxBrush, wxEvtHandler, wxWindow, wxTextCtrl, - wxTreeCtrl (serializes structure and item states), - wxStaticText, wxScrollBar - - Serializers for these classes are placed in objstore.cpp. - Serializers for other already-exiting wxWin classes could - be also placed into this file. For the new (future) - wxWin classes which would have advantage of - being persistent, serializers could be placed into - their corresponding implementation files (.cpp). - -10. Class/Macro Reference -========================= - - >>>> UNDER CONSTRUCTION <<<< - - for now, you may look at comments in the source - code (headers especially), the sample and also - one "Real-World" example of "wx-frame-layout" - system, where serializers for various classes - are placed in cbstore.cpp and cbstore.h, serialization - is performed in MyFrame::SerializeMe(). - ---------------misc. notes, just in case...------------ - - When object does not need any extra - initialization after it is serialized. - In the case of loading, `Initialize()' - method can be omitted and `NO_CLASS_INIT' - constant passed instead of a pointer to the method. - - Since wxString may be configured to be - not-wxObject-derivative, extra method is - included: wxObjectStorage::XchgWxStr(..) - to serialize "any-wxString". - - The provided initialization functions are invoked - only after all objects (i.e. entire "network") - is loaded into memory, since sometimes initialization - of one object depend on existence of another. - - "Recommended" that these two methods would - be called `Serialize(..)' and `Initialize(..)' - respectively. They also should conform - to definitions of `wxObjectSerializationFn' - and `wxObjectInitializationFn'. - - The body of initialization function (method) - usually contains invocations to given - instance of wxObjectStorage, for each - persistent member of the target class, - e.g. - - store.XchgLong( pRect->width ); - or - store.XchgObj( (wxObject*) pWnd->GetChildren() ); - - Macro IMPLEMENT_SERIALIZER_FUNCTIONS(..) is not meant - for implementing static methods of serializer class, - instead it could be used when it is considered a - better way to place serialization functions into global scope, - rather than in-serializer-class. These macros make - such approach possible. - - -- - - - -
-
-
-
- Classes Reference
-
-
-
-
-Derived from
-
-Public members
-
-Operations
-
-Attributes
-
-Protected members
-
-Operations
-
-Attributes
-
-Private members
-
-Operations
-
-Attributes
- wxBitmap* mpVertBuf double-buffers are shared "resource" among all instances of antiflicker plugin within the application TODO:: locking should be implemented, for multithreaded GUIs wxDC* mpLRUBufDc last-reacently-used buffer wxRect mLRUArea last-reacently-used area wxDC* FindSuitableBuffer( const wxRect& forArea ) returns NULL, if sutable buffer is not present void OnStartDrawInArea( cbStartDrawInAreaEvent& event ) handlers for plugin events
-
-Derived from
-
-Public members
-
-Operations
-
-Attributes
-
-Protected members
-
-Operations
-
-Attributes
-
-Private members
-
-Operations
-
-Attributes
-
-
-Derived from
-
-Public members
-
-Operations
-
-Attributes
-
-Protected members
-
-Operations
-
-Attributes
-
-Private members
-
-Operations
-
-Attributes
- void OnInit( ) hooks for specific frame-views void OnRecreate( ) imp. is mandatory
-
-Derived from
-
-Public members
-
-Operations
-
-Attributes
-
-Protected members
-
-Operations
-
-Attributes
-
-Private members
-
-Operations
-
-Attributes
- void Init( wxWindow* pMainFrame, const wxString& settingsFile = "" ) if file name is empty, views are are not saved/loaded wxFrame* GetParentFrame( ) synonyms layout item
-Derived from
-
-Public members
-
-Operations
-
-Attributes
-
-Protected members
-
-Operations
-
-Attributes
-
-Private members
-
-Operations
-
-Attributes
- base class for layouting algorithm implementations
-Derived from
-
-Public members
-
-Operations
-
-Attributes
-
-Protected members
-
-Operations
-
-Attributes
-
-Private members
-
-Operations
-
-Attributes
- layouts items in left-to-right order from top towards bottom
-Derived from
-
-Public members
-
-Operations
-
-Attributes
-
-Protected members
-
-Operations
-
-Attributes
-
-Private members
-
-Operations
-
-Attributes
-
-
-Derived from
-
-Public members
-
-Operations
-
-Attributes
-
-Protected members
-
-Operations
-
-Attributes
-
-Private members
-
-Operations
-
-Attributes
- class manages containment and layouting of tool-windows
-Derived from
-
-Public members
-
-Operations
-
-Attributes
-
-Protected members
-
-Operations
-
-Attributes
-
-Private members
-
-Operations
-
-Attributes
- int mSepartorSize public properties default: 8 int mVertGap default: 0 int mHorizGap default: 0 void AddTool( int toolIndex, wxWindow* pToolWindow, const wxSize& size = wxDefaultSize ) overridables wxToolBarTool* AddTool( const int toolIndex, const wxBitmap& bitmap, const wxBitmap& pushedBitmap = wxNullBitmap, const bool toggle = FALSE, const long xPos = -1, const long yPos = -1, wxObject *clientData = NULL, const wxString& helpString1 = "", const wxString& helpString2 = "" ) method from wxToolBarBase (for compatibility), only first two arguments are valid void DrawSeparator( wxDynToolInfo& info, wxDC& dc ) the default implementation draws shaded line void Layout( ) see definitions of orientation types void OnSize( wxSizeEvent& event ) event handlers bool Realize( ) overriden from wxToolBarBase
-
-Derived from
-
-Public members
-
-Operations
-
-Attributes
-
-Protected members
-
-Operations
-
-Attributes
-
-Private members
-
-Operations
-
-Attributes
- cbMiniButtonArrayT mButtons protected really, accesssed only by serializers * wxPoint mDragOrigin drag&drop state variables void AddMiniButton( cbMiniButton* pBtn ) buttons are added in right-to-left order wxSize GetPreferredSize( const wxSize& given ) overridables:
-
-Derived from
-
-Public members
-
-Operations
-
-Attributes
-
-Protected members
-
-Operations
-
-Attributes
-
-Private members
-
-Operations
-
-Attributes
- classes specific to wxFrameLayout engine (FOR NOW in here...)
-Derived from
-
-Public members
-
-Operations
-
-Attributes
-
-Protected members
-
-Operations
-
-Attributes
-
-Private members
-
-Operations
-
-Attributes
-
-
-Derived from
-
-Public members
-
-Operations
-
-Attributes
-
-Protected members
-
-Operations
-
-Attributes
-
-Private members
-
-Operations
-
-Attributes
-
-
-Derived from
-
-Public members
-
-Operations
-
-Attributes
-
-Protected members
-
-Operations
-
-Attributes
-
-Private members
-
-Operations
-
-Attributes
-
-
-Derived from
-
-Public members
-
-Operations
-
-Attributes
-
-Protected members
-
-Operations
-
-Attributes
-
-Private members
-
-Operations
-
-Attributes
- void PositionFloatedWnd( int scrX, int scrY, int width, int height ) given coordinates are those of the bar itself floated container window's position and size are ajusted accordingly wxSize GetPreferredSize( const wxSize& given ) overriden methods of wxToolWindow Define a new application type
-Derived from
-
-Public members
-
-Operations
-
-Attributes
-
-Protected members
-
-Operations
-
-Attributes
-
-Private members
-
-Operations
-
-Attributes
-
-
-Derived from
-
-Public members
-
-Operations
-
-Attributes
-
-Protected members
-
-Operations
-
-Attributes
-
-Private members
-
-Operations
-
-Attributes
- class manages and decorates contained "tab"-windows. Draws decorations similar to those in "Project Workplace" of Microsoft Developer Studio 4.xx
-Derived from
-
-Public members
-
-Operations
-
-Attributes
-
-Protected members
-
-Operations
-
-Attributes
-
-Private members
-
-Operations
-
-Attributes
- wxFont GetLabelFont( ) overrride,to provide different font for tab-labels wxScrollBar* mpTabScroll FOR NOW:: scrollbars are actually related to wxPaggedWindow wxPen mWhitePen public properties (invoke ReclaclLayout(TRUE) to apply changes) default: RGB(255,255,255) wxPen mGrayPen default: RGB(192,192,192) wxPen mDarkPen default: RGB(128,128,128) wxPen mBlackPen default: RGB( 0, 0, 0) int mVertGap default: 3 int mHorizGap default: 5 int mTitleVertGap default: 3 int mTitleHorizGap default: 4 int mImageTextGap default: 2 int mFirstTitleGap default: 11 int mBorderOnlyWidth default: 8 void OnTabAdded( twTabInfo* pInfo ) notifications (can be handled by derivatives) void AddTab( wxWindow* pContent, wxString tabText, wxString imageFileName = "", long imageType = wxBITMAP_TYPE_BMP ) tabs can be also added when the window is already displayed - "on the fly" contained window void AddTab( wxWindow* pContent, wxString tabText, wxBitmap* pImage = NULL ) NOTE:: if this AddTab(..) overload is called, the image bitmap will not be serialized (if performed), use the above method instead, so that images could be restored using the given file names int GetTabCount( ) misc accessors int HitTest( const wxPoint& pos ) return -1, if non of the title bars was hitted, otherwise the index of the hitted tab title bar void RecalcLayout( bool andRepaint = TRUE ) should be invoked to redisplay window with changed properties void OnPaint( wxPaintEvent& event ) event handlers class manages and decorates contained "sheets" (or pages). Draws decorations similar to those in "Output window" of Microsoft Developer Studio 4.xx
-Derived from
-
-Public members
-
-Operations
-
-Attributes
-
-Protected members
-
-Operations
-
-Attributes
-
-Private members
-
-Operations
-
-Attributes
- bool mIsDragged drag&drop state variables void OnTabAdded( twTabInfo* pInfo ) adjusts scorllbars to fit around tabs wxFont GetLabelFont( ) sets smaller font for page-labels int mTitleRowLen actual title row length int mAdjustableTitleRowLen setup by dragging mini-sash int mCurentRowOfs with the mosue pointer wxScrollBar& GetVerticalScrollBar( ) NOTE:: use public methods of the base class to add "pages" to this window misc accessors below two methods should be called after the tabs were added (AddTab(..)). Set up these scrollbars to match the needs of the tabs added into this area int HitTest( const wxPoint& pos ) return -1, if non of the title bars was hitted, otherwise the index of the hitted tab title bar void OnPaint( wxPaintEvent& event ) event handlers helper structure of wxTabbedWindow
-Derived from
-
-Public members
-
-Operations
-
-Attributes
-
-Protected members
-
-Operations
-
-Attributes
-
-Private members
-
-Operations
-
-Attributes
- wxString mImageFile used for serialization Define a new application type
-Derived from
-
-Public members
-
-Operations
-
-Attributes
-
-Protected members
-
-Operations
-
-Attributes
-
-Private members
-
-Operations
-
-Attributes
- Define a new frame type
-Derived from
-
-Public members
-
-Operations
-
-Attributes
-
-Protected members
-
-Operations
-
-Attributes
-
-Private members
-
-Operations
-
-Attributes
- wxTextCtrl* CreateTxtCtrl( const wxString& txt = "wxTextCtrl", wxWindow* parent = NULL ) helpers for control-creation wxWindow* CreateDevLayout( wxFrameLayout& layout, wxWindow* pParent ) helpers for layout-creation MyFrame( wxFrame *frame, char *title, int x, int y, int w, int h ) public bool OnClose( ) event handlers
-
-Derived from
-
-Public members
-
-Operations
-
-Attributes
-
-Protected members
-
-Operations
-
-Attributes
-
-Private members
-
-Operations
-
-Attributes
- void OnCustomizeBar( cbCustomizeBarEvent& event ) plugin-event handlers void OnMenuItemSelected( wxCommandEvent& event ) menu-event handler class conceptually simiar to wxClassInfo, execpt that it's static instances hold information about class-serializers rather then about the classes themselves.
-Derived from
-
-Public members
-
-Operations
-
-Attributes
-
-Protected members
-
-Operations
-
-Attributes
-
-Private members
-
-Operations
-
-Attributes
- wxClassInfo* classInfo link to corresponding class-info object, wxObjectSerializationFn serFn established upon invocation of InitializeSerializers() wxHashTable serInfoHash classInfo <=> serializerInfo void SerializeInherited( wxObject* pObj, wxObjectStorage& store ) looks up for serializers of the base classes (base1 and base2) of the given object invokes them if present void InitializeSerializers( ) static methods formal base class for all serializers, implemented as classes with static serialization/initialization methods
-Derived from
-
-Public members
-
-Operations
-
-Attributes
-
-Protected members
-
-Operations
-
-Attributes
-
-Private members
-
-Operations
-
-Attributes
- defines abstract inferface for data-stream objects, can be implemented as a wrapper class for already existing stream classes
-Derived from
-
-Public members
-
-Operations
-
-Attributes
-
-Protected members
-
-Operations
-
-Attributes
-
-Private members
-
-Operations
-
-Attributes
- class provides stream-based persistance service for classes derivated from wxObject, which are declared as dynamic classes. Relies on the presence of appropriate serializers for objects, which are being stored/loaded.
-Derived from
-
-Public members
-
-Operations
-
-Attributes
-
-Protected members
-
-Operations
-
-Attributes
-
-Private members
-
-Operations
-
-Attributes
- char mVerSepartorCh can be changed (with countion!) default: '#' char mMinorMajorSepartorCh default: '-' void AddInitialRef( wxObject* pObjRef ) adds initial reference, objects referred by such reference are not serialized when storing. When loading, pointers which refere to these "inital objects" are set up to refere to objects provided in by AddInitailRef() method. NOTE:: initial references should be added always in the same order, since the seq-# of the reference is used as an alias to the real object while storing/loading void SetDataStream( wxDataStreamBase& stm ) init/reinit of object-storage void Finalize( ) performs linkng of in-memory references after loading, or links in-stream references after storing has proceeded void XchgChar( char& chObj ) storage methods for basic types void XchgObj( wxObject* pWxObj ) storage methods for objects and pointers to objects void XchgWxStr( wxString& str ) storage methods for common wxWindows classes, which may or may not be dymaic, therefor use the below methods instead of XchgObj(..) The below classes provide "curde" serialization for most common wxWindows objects, i.e. they discard the information which may be contained in the subclassed versions of these classes However, more "fine-grainded" serializers could be written to match these subclasses exactly.
-Derived from
-
-Public members
-
-Operations
-
-Attributes
-
-Protected members
-
-Operations
-
-Attributes
-
-Private members
-
-Operations
-
-Attributes
- NOTE:: currently "stipple" and "dashes" properties of the pen are not serialized
-Derived from
-
-Public members
-
-Operations
-
-Attributes
-
-Protected members
-
-Operations
-
-Attributes
-
-Private members
-
-Operations
-
-Attributes
- NOTE:: currently "stipple" property of the brush is not serialized
-Derived from
-
-Public members
-
-Operations
-
-Attributes
-
-Protected members
-
-Operations
-
-Attributes
-
-Private members
-
-Operations
-
-Attributes
- serializer for wxList, assuming that the list holds derivatives of wxObject.
-Derived from
-
-Public members
-
-Operations
-
-Attributes
-
-Protected members
-
-Operations
-
-Attributes
-
-Private members
-
-Operations
-
-Attributes
- generic serializer for classes derived from wxEvtHandler handler, assuming that they do not add any new properties to wxEvtHandler or these properties are transient
-Derived from
-
-Public members
-
-Operations
-
-Attributes
-
-Protected members
-
-Operations
-
-Attributes
-
-Private members
-
-Operations
-
-Attributes
- serializer for generic wxWindow. Serializes position, size, id, reference to parent, list of children, style flags and name string. Could be used for serializing wxWindow and generic wxPanel objects. Separate serializers have to be written for control classes.
-Derived from
-
-Public members
-
-Operations
-
-Attributes
-
-Protected members
-
-Operations
-
-Attributes
-
-Private members
-
-Operations
-
-Attributes
-
-
-Derived from
-
-Public members
-
-Operations
-
-Attributes
-
-Protected members
-
-Operations
-
-Attributes
-
-Private members
-
-Operations
-
-Attributes
-
-
-Derived from
-
-Public members
-
-Operations
-
-Attributes
-
-Protected members
-
-Operations
-
-Attributes
-
-Private members
-
-Operations
-
-Attributes
-
-
-Derived from
-
-Public members
-
-Operations
-
-Attributes
-
-Protected members
-
-Operations
-
-Attributes
-
-Private members
-
-Operations
-
-Attributes
-
-
-Derived from
-
-Public members
-
-Operations
-
-Attributes
-
-Protected members
-
-Operations
-
-Attributes
-
-Private members
-
-Operations
-
-Attributes
-
-
-Derived from
-
-Public members
-
-Operations
-
-Attributes
-
-Protected members
-
-Operations
-
-Attributes
-
-Private members
-
-Operations
-
-Attributes
- default implementations of interfaces, used by wxObjectStorage class FOR NOW:: methods do not yet perform byte-swaps for outputting/reading words in machine-independent format. Better solution would be to write wrapper around the "promissed" protable-data-stream class of wxWindows
-Derived from
-
-Public members
-
-Operations
-
-Attributes
-
-Protected members
-
-Operations
-
-Attributes
-
-Private members
-
-Operations
-
-Attributes
- long mStreamPos precalcualted stream postion, void Close( ) assuming that the actual stream object is not capable of telling postion of current get/put pointer (e.g. socket-stream) wxIOStreamWrapper( ) default constructor wxIOStreamWrapper( iostream& stm, bool forInput = TRUE ) attach this wrapper to already exiting iostream object bool Create( const char* fileName, bool forInput = TRUE ) creates "fstream" object with the given file name in binary mode, returns FALSE, if stream creation failed The created fstream object is "owned" by this wrapper, thus it is destored during destruction of this object void Attach( iostream& stm, bool forInput = TRUE ) the same as in the second constructor, previousely used stream object is flushed and destroyed (if owned). The attached stream is not "owned" by this wrapper object
-
-Derived from
-
-Public members
-
-Operations
-
-Attributes
-
-Protected members
-
-Operations
-
-Attributes
-
-Private members
-
-Operations
-
-Attributes
- wxList mRefs references to other nodes class implements extreamly slow, but probably one of the most simple GC alogrithms
-Derived from
-
-Public members
-
-Operations
-
-Attributes
-
-Protected members
-
-Operations
-
-Attributes
-
-Private members
-
-Operations
-
-Attributes
- void AddObject( void* pObj, int refCnt = 1 ) prepare data for GC alg. void ArrangeCollection( ) executes GC alg. wxList& GetRegularObjects( ) acces results of the alg. void Reset( ) removes all date form GC class implements slightly optimized logic for refreshing areas of frame layout - which actually need to be updated.
-Derived from
-
-Public members
-
-Operations
-
-Attributes
-
-Protected members
-
-Operations
-
-Attributes
-
-Private members
-
-Operations
-
-Attributes
- void OnStartChanges( ) notificiactions received from Frame Layout (in the order, in which they usually would be invoked) void UpdateNow( ) refreshes parts of the frame layout, which need an update serialziers for common components of frame-layout engine
-Derived from
-
-Public members
-
-Operations
-
-Attributes
-
-Protected members
-
-Operations
-
-Attributes
-
-Private members
-
-Operations
-
-Attributes
-
-
-Derived from
-
-Public members
-
-Operations
-
-Attributes
-
-Protected members
-
-Operations
-
-Attributes
-
-Private members
-
-Operations
-
-Attributes
-
-
-Derived from
-
-Public members
-
-Operations
-
-Attributes
-
-Protected members
-
-Operations
-
-Attributes
-
-Private members
-
-Operations
-
-Attributes
-
-
-Derived from
-
-Public members
-
-Operations
-
-Attributes
-
-Protected members
-
-Operations
-
-Attributes
-
-Private members
-
-Operations
-
-Attributes
-
-
-Derived from
-
-Public members
-
-Operations
-
-Attributes
-
-Protected members
-
-Operations
-
-Attributes
-
-Private members
-
-Operations
-
-Attributes
-
-
-Derived from
-
-Public members
-
-Operations
-
-Attributes
-
-Protected members
-
-Operations
-
-Attributes
-
-Private members
-
-Operations
-
-Attributes
-
-
-Derived from
-
-Public members
-
-Operations
-
-Attributes
-
-Protected members
-
-Operations
-
-Attributes
-
-Private members
-
-Operations
-
-Attributes
-
-
-Derived from
-
-Public members
-
-Operations
-
-Attributes
-
-Protected members
-
-Operations
-
-Attributes
-
-Private members
-
-Operations
-
-Attributes
-
-
-Derived from
-
-Public members
-
-Operations
-
-Attributes
-
-Protected members
-
-Operations
-
-Attributes
-
-Private members
-
-Operations
-
-Attributes
-
-
-Derived from
-
-Public members
-
-Operations
-
-Attributes
-
-Protected members
-
-Operations
-
-Attributes
-
-Private members
-
-Operations
-
-Attributes
-
-
-Derived from
-
-Public members
-
-Operations
-
-Attributes
-
-Protected members
-
-Operations
-
-Attributes
-
-Private members
-
-Operations
-
-Attributes
-
-
-Derived from
-
-Public members
-
-Operations
-
-Attributes
-
-Protected members
-
-Operations
-
-Attributes
-
-Private members
-
-Operations
-
-Attributes
-
-
-Derived from
-
-Public members
-
-Operations
-
-Attributes
-
-Protected members
-
-Operations
-
-Attributes
-
-Private members
-
-Operations
-
-Attributes
- serializers for some additional classes (FOR NOW:: also placed here) **
-Derived from
-
-Public members
-
-Operations
-
-Attributes
-
-Protected members
-
-Operations
-
-Attributes
-
-Private members
-
-Operations
-
-Attributes
-
-
-Derived from
-
-Public members
-
-Operations
-
-Attributes
-
-Protected members
-
-Operations
-
-Attributes
-
-Private members
-
-Operations
-
-Attributes
-
-
-Derived from
-
-Public members
-
-Operations
-
-Attributes
-
-Protected members
-
-Operations
-
-Attributes
-
-Private members
-
-Operations
-
-Attributes
-
-
-Derived from
-
-Public members
-
-Operations
-
-Attributes
-
-Protected members
-
-Operations
-
-Attributes
-
-Private members
-
-Operations
-
-Attributes
-
-
-Derived from
-
-Public members
-
-Operations
-
-Attributes
-
-Protected members
-
-Operations
-
-Attributes
-
-Private members
-
-Operations
-
-Attributes
- FIXME:: somehow in debug v. originall wxASSERT's are not compiled in... #undef wxASSERT #define wxASSERT(x) if ( !(x) ) throw; helper class, used for spying for not-handled mouse events on control-bars and forwarding them to the frame layout
-Derived from
-
-Public members
-
-Operations
-
-Attributes
-
-Protected members
-
-Operations
-
-Attributes
-
-Private members
-
-Operations
-
-Attributes
- bool ProcessEvent( wxEvent& event ) overriden wxFrameLayout manages containment and docking of control bars. which can be docked along top, bottom, righ, or left side of the parent frame
-Derived from
-
-Public members
-
-Operations
-
-Attributes
-
-Protected members
-
-Operations
-
-Attributes
-
-Private members
-
-Operations
-
-Attributes
- wxWindow* mpFrame protected really, acessed only by plugins and serializers parent frame wxWindow* mpFrameClient client window cbDockPane* mPanes[MAX_PANES] panes in the panel wxCursor* mpHorizCursor misc. cursors wxCursor* mpNECursor no-entry cursor wxPen mDarkPen pens for decoration and shades default wxColour(128,128,128) wxPen mLightPen default white wxPen mGrayPen default wxColour(192,192,192) wxPen mBlackPen default wxColour( 0, 0, 0) wxPen mBorderPen default wxColour(128,192,192) wxPen mNullPen transparent pen cbDockPane* mpPaneInFocus pane to which the all mouse input is currently directed (caputred) cbDockPane* mpLRUPane pane, from which mouse pointer had just leaft wxRect mClntWndBounds bounds of client window in parent frame's coordinates cbPluginBase* mpTopPlugin current plugin (right-most) plugin which receives events first cbPluginBase* mpCaputesInput plugin, which currently has caputred all input events, otherwise NULL wxList mBarSpyList list of event handlers which are "pushed" onto each bar, to catch mouse events which are not handled by bars, and froward them to the , frome-layout and further to plugins wxList mFloatedFrames list of top-most frames which contain floated bars BarArrayT mAllBars linked list of references to all bars (docked/floated/hidden) bool mClientWndRefreshPending FOR NOW:: dirty stuff... cbUpdatesManagerBase* mpUpdatesMgr protected really (accessed only by plugins) refrence to custom updates manager void PositionClientWindow( ) called to set calculated layout to window objects cbDockPane* GetBarPane( cbBarInfo* pBar ) returns panes, to which the given bar belongs void ForwardMouseEvent( wxMouseEvent& event, cbDockPane* pToPane, int eventType ) delegated from "bar-spy" bool CanReparent( ) NOTE:: reparenting of windows may NOT work on all platforms (reparenting allows control-bars to be floated) cbUpdatesManagerBase* CreateUpdatesManager( ) factory method wxFrameLayout( ) public members used only while serializing ~wxFrameLayout( ) (doesn't destory bar windows) void EnableFloating( bool enable = TRUE ) (by default floating of control-bars is ON) void Activate( ) Can be called after some other layout has been deactivated, and this one must "take over" the current contents of frame window. Effectivelly hooks itself to the frame window, re-displays all not-hidden bar-windows and repaints decorations void Deactivate( ) unhooks itself from frame window, and hides all not-hidden windows NOTE:: two frame-layouts should not be active at the same time in the same frame window, it would cause messy overlapping of bar windows from both layouts void HideBarWindows( ) also hides the client window if presents void SetFrameClient( wxWindow* pFrameClient ) passes the client window (e.g. MDI-client frame) to be controled by frame layout, the size and position of which should be adjusted to be surrounded by controlbar panes, whenever frame is resized, or dimesnions of control panes change cbDockPane** GetPanesArray( ) used by updates-managers cbDockPane* GetPane( int alignment ) see pane alignment types void AddBar( wxWindow* pBarWnd, cbDimInfo& dimInfo, int alignment = wxTOP, int rowNo = 0, int columnPos = 0, const wxString& name = "bar", bool spyEvents = FALSE, int state = wxCBAR_DOCKED_HORIZONTALLY ) Adds bar information to frame-layout, appearence of layout is not refreshed immediatelly, RefreshNow() can be called if necessary. NOTES:: argument pBarWnd can by NULL, resulting bar decorations to be drawn around the empty rectangle (filled with default background colour). Argument dimInfo, can be re-used for adding any number of bars, since it is not used directly, instead it's members are copied. If dimensions- handler is present, it's instance shared (reference counted). Dimension handler should always be allocated on the heap!) bool RedockBar( cbBarInfo* pBar, const wxRect& shapeInParent, cbDockPane* pToPane = NULL, bool updateNow = TRUE ) can be used for repositioning already existing bars. The given bar is first removed from the pane it currently belongs to, and inserted into the pane, which "matches" the given recantular area. If pToPane is not NULL, bar is docked to this given pane to dock the bar which is floated, use wxFrameLayout::DockBar(..) method cbBarInfo* FindBarByName( const wxString& name ) methods for access and modification of bars in frame layout void SetBarState( cbBarInfo* pBar, int newStatem, bool updateNow ) changes bar's docking state (see possible control bar states) void ApplyBarProperties( cbBarInfo* pBar ) reflects changes in bar information structure visually (e.g. moves bar, changes it's dimension info, pane to which it is docked) void RemoveBar( cbBarInfo* pBar ) removes bar from layout permanently, hides it's corresponding window if present void RecalcLayout( bool repositionBarsNow = FALSE ) recalcualtes layout of panes, and all bars/rows in each pane cbUpdatesManagerBase& GetUpdatesManager( ) NOTE:: in future ubdates-manager will become a normal plugin void SetUpdatesManager( cbUpdatesManagerBase* pUMgr ) destroys the previous manager if any, set the new one void GetPaneProperties( cbCommonPaneProperties& props, int alignment = wxTOP ) NOTE:: changing properties of panes, does not result immediate on-screen update void SetMargins( int top, int bottom, int left, int right, int paneMask = wxALL_PANES ) TODO:: margins should go into cbCommonPaneProperties in the future NOTE:: this method should be called before any custom plugins are attached void RefreshNow( bool recalcLayout = TRUE ) recalculates layoute and performs on-screen update of all panes void OnSize( wxSizeEvent& event ) event handlers void FirePluginEvent( cbPluginEvent& event ) plugin-related methods ** should be used, instead of passing the event to ProcessEvent(..) method of the top-plugin directly. This method checks if events are currently captured and ensures that plugin-event is routed correctly. void CaptureEventsForPlugin( cbPluginBase* pPlugin ) captures/releases user-input event's for the given plugin Input events are: mouse movement, mouse clicks, keyboard input void CaptureEventsForPane( cbDockPane* toPane ) called by plugins ( also captures/releases mouse in parent frame) cbPluginBase& GetTopPlugin( ) returns current top-level plugin (the one which receives events first, with an exception if input-events are currently captured by some other plugin) void SetTopPlugin( cbPluginBase* pPlugin ) hooking custom plugins to frame layout NOTE:: when hooking one plugin on top of the other - use SetNextHandler(..) or similar methods of wxEvtHandler class to compose the chain of plugins, than pass the left-most handler in this chain to the above methods (assuming that events are delegated from left-most towards right-most handler) NOTE2:: this secenario is very inconvenient and "low-level", use Add/Push/PopPlugin methods instead void PushPlugin( cbPluginBase* pPugin ) similar to wxWindow's "push/pop-event-handler" methods, execept that plugin is *deleted* upon "popping" void PushDefaultPlugins( ) default plugins are : cbPaneDrawPlugin, cbRowLayoutPlugin, cbBarDragPlugin, cbAntiflickerPlugin, cbSimpleCustomizePlugin this method is automatically invoked, if no plugins were found upon fireing of the first plugin-event, i.e. wxFrameLayout *CONFIGURES* itself void AddPlugin( wxClassInfo* pPlInfo, int paneMask = wxALL_PANES ) "Advanced" methods for plugin-configuration using their dynamic class information (e.g. CLASSINFO(pluginClass) ) first checks if plugin of the given class is already "hooked up", if not, adds it to the top of plugins chain void AddPluginBefore( wxClassInfo* pNextPlInfo, wxClassInfo* pPlInfo, int paneMask = wxALL_PANES ) first checks if plugin of the givne class already hooked, if so, removes it, and then inserts it to the chain before plugin of the class given by "pNextPlInfo" NOTE:: this method is "handy" in some cases, where the order of plugin-chain could be important, e.g. one plugin overrides some functionallity of the other already hooked plugin, thefore the former should be hooked before the one who's functionality is being overriden void RemovePlugin( wxClassInfo* pPlInfo ) checks if plugin of the given class is hooked, removes it if found @param pPlInfo class information structure for the plugin @note @see wxFrameLayout::Method cbPluginBase* FindPlugin( wxClassInfo* pPlInfo ) returns NULL, if plugin of the given class is not hooked structure, which is present in each item of layout, it used by any specific updates-manager to store auxilary information to be used by it's specific updating algorithm
-Derived from
-
-Public members
-
-Operations
-
-Attributes
-
-Protected members
-
-Operations
-
-Attributes
-
-Private members
-
-Operations
-
-Attributes
- wxRect mPrevBounds previous state of layout item (in parent frame's coordinates) bool mIsDirty overrides result of current-against-previouse bounds comparison, wxObject* mpCustomData i.e. requires item to be updated, regardless of it's current area any custom data stored by specific updates mgr. cbUpdateMgrData( ) is-dirty flag is set TRUE initially Abstract inteface for bar-size handler classes. These objects receive notifications, whenever the docking state of the bar is changed, thus they have a possibility to adjust the values in cbDimInfo::mSizes accordingly. Specific handlers can be hooked to specific types of bars.
-Derived from
-
-Public members
-
-Operations
-
-Attributes
-
-Protected members
-
-Operations
-
-Attributes
-
-Private members
-
-Operations
-
-Attributes
- int mRefCount since one dim-handler can be asigned cbBarDimHandlerBase( ) to multiple bars, it's instance is refernce-counted inital refernce count is 0, since handler is not used, until the first invocation of AddRef() void OnChangeBarState( cbBarInfo* pBar, int newState ) "bar-state-changes" notification helper classes (used internally by wxFrameLayout class) holds and manages information about bar demensions
-Derived from
-
-Public members
-
-Operations
-
-Attributes
-
-Protected members
-
-Operations
-
-Attributes
-
-Private members
-
-Operations
-
-Attributes
- wxSize mSizes[MAX_BAR_STATES] preferred sizes for each possible bar state wxRect mBounds[MAX_BAR_STATES] saved positions and sizes for each int mLRUPane possible state, values contain (-1)s if not initialized yet pane to which this bar was docked before it was floated int mVertGap (wxTOP,wxBOTTOM,..) top/bottom gap, separates decorations from the bar's actual window, filled with frame's beckground color, default: 0 int mHorizGap left/right gap, separates decorations from the bar's actual window, filled with frame's beckground colour, default: 0 NOTE:: gaps are given in frame's coord. orientation bool mIsFixed TRUE, if vertical/horizotal dimensions cannot be mannualy adjusted by user using resizing handles. If FALSE, the frame-layout *automatically* places resizing handles among not-fixed bars cbBarDimHandlerBase* mpHandler NULL, if no handler present cbDimInfo( int dh_x, int dh_y, int dv_x, int dv_y, int f_x, int f_y, bool isFixed = TRUE, int horizGap = 6, int vertGap = 6, cbBarDimHandlerBase* pDimHandler = NULL ) dims when docked horizontally ~cbDimInfo( ) destroys handler automatically, if present
-
-Derived from
-
-Public members
-
-Operations
-
-Attributes
-
-Protected members
-
-Operations
-
-Attributes
-
-Private members
-
-Operations
-
-Attributes
- BarArrayT mBars row content bool mHasUpperHandle row flags (set up according to row-relations) wxRect mBoundsInParent stores precalculated row's bounds in parent frame's coordinates cbUpdateMgrData mUMgrData info stored for updates-manager cbBarInfo* mpExpandedBar NULL, if non of the bars is currently expanded cbArrayFloat mSavedRatios length-ratios bofore some of the bars was expanded cbBarInfo* GetFirstBar( ) convenience method
-
-Derived from
-
-Public members
-
-Operations
-
-Attributes
-
-Protected members
-
-Operations
-
-Attributes
-
-Private members
-
-Operations
-
-Attributes
- wxString mName textual name, by which this bar is refered in layout-costumization dialogs wxRect mBounds stores bar's bounds in pane's coordinates wxRect mBoundsInParent stores precalculated bar's bounds in parent frame's coordinates cbRowInfo* mpRow back-ref to the row, which contains this bar bool mHasLeftHandle are set up according to the types of the surrounding bars in the row cbDimInfo mDimInfo preferred sizes for each, control bar state int mState (see definition of controlbar states) int mAlignment alignment of the pane to which this int mRowNo bar is currently placed row, into which this bar would be placed, wxWindow* mpBarWnd when in the docking state the actual window object, NULL if no window double mLenRatio is attached to the control bar (possible!) length ratio among not-fixed-size bars wxPoint mPosIfFloated stored last position when bar was in "floated" state cbUpdateMgrData mUMgrData poistion is stored in parent-window's coordinates info stored for updates-manager cbBarInfo* mpNext next. bar in the row cbBarInfo* mpPrev prev. bar in the row used for storing original bar's postions in the row, when the "non-destructive-friction" option is turned ON
-Derived from
-
-Public members
-
-Operations
-
-Attributes
-
-Protected members
-
-Operations
-
-Attributes
-
-Private members
-
-Operations
-
-Attributes
- used for traversing through all bars of all rows in the pane
-Derived from
-
-Public members
-
-Operations
-
-Attributes
-
-Protected members
-
-Operations
-
-Attributes
-
-Private members
-
-Operations
-
-Attributes
- bool Next( ) TRUE, if next bar is available cbRowInfo& RowInfo( ) returns reference to currently traversed row structure holds configuration options, which are usually the same for all panes in frame layout
-Derived from
-
-Public members
-
-Operations
-
-Attributes
-
-Protected members
-
-Operations
-
-Attributes
-
-Private members
-
-Operations
-
-Attributes
- bool mRealTimeUpdatesOn look-and-feel configuration default: ON bool mOutOfPaneDragOn default: ON bool mExactDockPredictionOn default: OFF bool mNonDestructFirctionOn default: OFF bool mShow3DPaneBorderOn default: ON bool mBarFloatingOn FOR NOW:: the below properties are reserved for the "future" default: OFF bool mRowProportionsOn default: OFF bool mColProportionsOn default: ON bool mBarCollapseIconsOn default: OFF bool mBarDragHintsOn default: OFF wxSize mMinCBarDim minimal dimensions for not-fixed bars in this pane (16x16 default) int mResizeHandleSize width/height of resizing sash class manages containment and control of control-bars along one of the four edges of the parent frame
-Derived from
-
-Public members
-
-Operations
-
-Attributes
-
-Protected members
-
-Operations
-
-Attributes
-
-Private members
-
-Operations
-
-Attributes
- cbCommonPaneProperties mProps look-and-feel configuration for this pane int mLeftMargin pane margins (in frame's coordinate-syst. orientation) default: 2 pixels int mRightMargin default: 2 pixels int mTopMargin default: 2 pixels int mBottomMargin default: 2 pixels wxRect mBoundsInParent position of the pane in frame's coordinates int mPaneWidth pane width and height in pane's coordinates cbUpdateMgrData mUMgrData info stored for updates-manager RowArrayT mRows protected really wxFrameLayout* mpLayout back-ref wxList mRowShapeData transient properties shapes of bars of recently modified row, cbRowInfo* mpStoredRow stored when in "non-destructive-firction" mode row-info for which the shapes are stored cbRowInfo* GetRow( int row ) protected really (accessed only by plugins) int GetRowAt( int paneY ) return -1, if row is not present at given vertical position void SyncRowFlags( cbRowInfo* pRow ) re-setups flags in the row-information structure, so that the would match the changed state of row-items correctly bool IsFixedSize( cbBarInfo* pInfo ) layout "AI" helpers: void FrameToPane( long* x, long* y ) coordinate translation between parent's frame and this pane void SetRowHeight( cbRowInfo* pRow, int newHeight ) given row height includes height of row handles, if present void PaintBarDecorations( cbBarInfo* pBar, wxDC& dc ) protected really (accessed only by plugins) methods for incramental on-screen refreshing of the pane (simply, they are wrappers around corresponding plugin-events) cbDockPane( ) public members void SetMargins( int top, int bottom, int left, int right ) sets pane's margins in frame's coordinate orientations void RemoveBar( cbBarInfo* pBar ) does not destroys the info bar , only removes it's reference from this pane void InsertBar( cbBarInfo* pBar, const wxRect& atRect ) rect given in the parent frame's coordinates void InsertBar( cbBarInfo* pBar, cbRowInfo* pIntoRow ) inserts bar into the given row, with dimensions and position stored in pBarInfo->mBounds. Returns the node of inserted bar void InsertBar( cbBarInfo* pBarInfo ) inserts bar, sets its position according to the preferred settings given in (*pBarInfo) structure void RemoveRow( cbRowInfo* pRow ) does not destroy the row object, only removes the corresponding node from this pane void InsertRow( cbRowInfo* pRow, cbRowInfo* pBeforeRow ) does not refresh the inserted row immediatelly, if pBeforeRowNode arg. is NULL, row is appended to the end of pane's row list void SetPaneWidth( int width ) sets pane's width in pane's coordinates (including margins) void SetBoundsInParent( const wxRect& rect ) set the position and dims. of the pane in parent frame's coordinates RowArrayT& GetRowList( ) used by upadates-managers cbRowInfo* GetFirstRow( ) convenience method bool BarPresent( cbBarInfo* pBar ) TRUE, if the given bar node presents in this pane int GetPaneHeight( ) retuns height, in pane's coordinates int HitTestPaneItems( const wxPoint& pos, cbRowInfo** ppRow, cbBarInfo** ppBar ) returns result of hit-testing items in the pane, see CB_HITTEST_RESULTS enumeration position in pane's coorinates void DrawVertHandle( wxDC& dc, int x, int y, int height ) protected really (accessed only by plugins) row/bar resizing related helper-methods void GetRowShapeData( cbRowInfo* pRow, wxList* pLst ) cbBarShapeData objects will be placed to given pLst (see comments on cbBarShapeData) void SetRowShapeData( cbRowInfo* pRowNode, wxList* pLst ) sets the shape to the given row, using the data provided in pLst class declares abstract interface for optimized logic, which should refresh areas of frame layout - that actually need to be updated. Should be extanded, to implemnet custom updating strategy
-Derived from
-
-Public members
-
-Operations
-
-Attributes
-
-Protected members
-
-Operations
-
-Attributes
-
-Private members
-
-Operations
-
-Attributes
- wxFrameLayout* mpLayout protected really, accessed by serializer (if any) void OnStartChanges( ) notificiactions received from frame-layout (in the order, in which they usually would be invoked). Custom updates-managers may utilize these notifications to implement more "fine-grained" updating strategy void UpdateNow( ) refreshes parts of the frame layout, which need an update ------------------------------------------------------------ "API" for developing custom plugins of Frame Layout Engine TODO:: documentation ------------------------------------------------------------ base class for all control-bar plugin events
-Derived from
-
-Public members
-
-Operations
-
-Attributes
-
-Protected members
-
-Operations
-
-Attributes
-
-Private members
-
-Operations
-
-Attributes
- cbDockPane* mpPane NOTE:: plugin-event does not need to be a dynamic class NULL, if event is not addressed to any specific pane cbPluginEvent( int eventType, cbDockPane* pPane ) OLD STUFF:: // FOR NOW FOR NOW:: all-in-on plugin event structure wxNode* mpObjNode; wxNode* mpObjNodeAux; wxPoint mPos; wxSize mSize; wxDC* mpDC; bool mAuxBoolVal; abstract base class for all control-bar related plugins
-Derived from
-
-Public members
-
-Operations
-
-Attributes
-
-Protected members
-
-Operations
-
-Attributes
-
-Private members
-
-Operations
-
-Attributes
- wxFrameLayout* mpLayout back-reference to the frame layout bool mIsReady is TRUE, when plugin is ready to handle events int mPaneMask specifies panes, for which this plugin receives events (see pane masks definitions) ~cbPluginBase( ) NOTE:: pointer positions of mouse-events sent to plugins are always in pane's coordinates (pane's to which this plugin is hooked) destroys the whole plugin chain of connected plagins void OnInitPlugin( ) override this method to do plugin-specific initialization (at this point plugin is already attached to the frame layout, and pane masks are set) bool ProcessEvent( wxEvent& event ) overriden, to determine whether the target pane specified in the event, matches the pane mask of this plugin (specific plugins do not override this method) event classes, for each corresponding event type (24 currnetly...uhh) ** mouse-events category
-Derived from
-
-Public members
-
-Operations
-
-Attributes
-
-Protected members
-
-Operations
-
-Attributes
-
-Private members
-
-Operations
-
-Attributes
-
-
-Derived from
-
-Public members
-
-Operations
-
-Attributes
-
-Protected members
-
-Operations
-
-Attributes
-
-Private members
-
-Operations
-
-Attributes
-
-
-Derived from
-
-Public members
-
-Operations
-
-Attributes
-
-Protected members
-
-Operations
-
-Attributes
-
-Private members
-
-Operations
-
-Attributes
-
-
-Derived from
-
-Public members
-
-Operations
-
-Attributes
-
-Protected members
-
-Operations
-
-Attributes
-
-Private members
-
-Operations
-
-Attributes
-
-
-Derived from
-
-Public members
-
-Operations
-
-Attributes
-
-Protected members
-
-Operations
-
-Attributes
-
-Private members
-
-Operations
-
-Attributes
-
-
-Derived from
-
-Public members
-
-Operations
-
-Attributes
-
-Protected members
-
-Operations
-
-Attributes
-
-Private members
-
-Operations
-
-Attributes
- bar/row events category
-Derived from
-
-Public members
-
-Operations
-
-Attributes
-
-Protected members
-
-Operations
-
-Attributes
-
-Private members
-
-Operations
-
-Attributes
-
-
-Derived from
-
-Public members
-
-Operations
-
-Attributes
-
-Protected members
-
-Operations
-
-Attributes
-
-Private members
-
-Operations
-
-Attributes
-
-
-Derived from
-
-Public members
-
-Operations
-
-Attributes
-
-Protected members
-
-Operations
-
-Attributes
-
-Private members
-
-Operations
-
-Attributes
-
-
-Derived from
-
-Public members
-
-Operations
-
-Attributes
-
-Protected members
-
-Operations
-
-Attributes
-
-Private members
-
-Operations
-
-Attributes
-
-
-Derived from
-
-Public members
-
-Operations
-
-Attributes
-
-Protected members
-
-Operations
-
-Attributes
-
-Private members
-
-Operations
-
-Attributes
-
-
-Derived from
-
-Public members
-
-Operations
-
-Attributes
-
-Protected members
-
-Operations
-
-Attributes
-
-Private members
-
-Operations
-
-Attributes
-
-
-Derived from
-
-Public members
-
-Operations
-
-Attributes
-
-Protected members
-
-Operations
-
-Attributes
-
-Private members
-
-Operations
-
-Attributes
-
-
-Derived from
-
-Public members
-
-Operations
-
-Attributes
-
-Protected members
-
-Operations
-
-Attributes
-
-Private members
-
-Operations
-
-Attributes
-
-
-Derived from
-
-Public members
-
-Operations
-
-Attributes
-
-Protected members
-
-Operations
-
-Attributes
-
-Private members
-
-Operations
-
-Attributes
-
-
-Derived from
-
-Public members
-
-Operations
-
-Attributes
-
-Protected members
-
-Operations
-
-Attributes
-
-Private members
-
-Operations
-
-Attributes
-
-
-Derived from
-
-Public members
-
-Operations
-
-Attributes
-
-Protected members
-
-Operations
-
-Attributes
-
-Private members
-
-Operations
-
-Attributes
-
-
-Derived from
-
-Public members
-
-Operations
-
-Attributes
-
-Protected members
-
-Operations
-
-Attributes
-
-Private members
-
-Operations
-
-Attributes
-
-
-Derived from
-
-Public members
-
-Operations
-
-Attributes
-
-Protected members
-
-Operations
-
-Attributes
-
-Private members
-
-Operations
-
-Attributes
-
-
-Derived from
-
-Public members
-
-Operations
-
-Attributes
-
-Protected members
-
-Operations
-
-Attributes
-
-Private members
-
-Operations
-
-Attributes
-
-
-Derived from
-
-Public members
-
-Operations
-
-Attributes
-
-Protected members
-
-Operations
-
-Attributes
-
-Private members
-
-Operations
-
-Attributes
- wxPoint mPos is given in frame's coordinates
-
-Derived from
-
-Public members
-
-Operations
-
-Attributes
-
-Protected members
-
-Operations
-
-Attributes
-
-Private members
-
-Operations
-
-Attributes
- wxRect mRect is given in frame's coordinates bool mIsInClient in cleint area hint could be drawn differently, bool mEraseRect e.g. with fat/hatched border does not have any impact, if recangle is drawn using XOR-mask bool mLastTime indicates that this event finishes "session" of on-screen drawing, cbDrawHintRectEvent( const wxRect& rect, bool isInClient, bool eraseRect, bool lastTime ) thus associated resources can be freed now
-
-Derived from
-
-Public members
-
-Operations
-
-Attributes
-
-Protected members
-
-Operations
-
-Attributes
-
-Private members
-
-Operations
-
-Attributes
- wxDC** mppDc points to pointer, where the reference cbStartDrawInAreaEvent( const wxRect& area, wxDC** ppDCForArea, cbDockPane* pPane ) to the obtained buffer-context should be placed
-
-Derived from
-
-Public members
-
-Operations
-
-Attributes
-
-Protected members
-
-Operations
-
-Attributes
-
-Private members
-
-Operations
-
-Attributes
-
-
-Derived from
-
-Public members
-
-Operations
-
-Attributes
-
-Protected members
-
-Operations
-
-Attributes
-
-Private members
-
-Operations
-
-Attributes
- wxPoint mClickPos in parent frame's coordinates
-
-Derived from
-
-Public members
-
-Operations
-
-Attributes
-
-Protected members
-
-Operations
-
-Attributes
-
-Private members
-
-Operations
-
-Attributes
- wxPoint mClickPos in parent frame's coordinates
-
-Derived from
-
-Public members
-
-Operations
-
-Attributes
-
-Protected members
-
-Operations
-
-Attributes
-
-Private members
-
-Operations
-
-Attributes
- wxScreenDC* mpScrDc created while tracking hint-rect wxRect mCurRect FOR NOW:: try it without mutually exculisve locks bool mAnimStarted state variables int mMorphDelay delay between frames in miliseconds, default: 20 int mMaxFrames number of iterations for hint morphing, default: 30 int mInClientHintBorder (morph duration = mMorphDelay * mMaxFrames msec) default: 4 pixels bool mAccelerationOn TRUE, if morph accelerates, otherwise morph void StartTracking( ) speed is constant. Default: TRUE TBD:: get/set methods for above members helper classes
-Derived from
-
-Public members
-
-Operations
-
-Attributes
-
-Protected members
-
-Operations
-
-Attributes
-
-Private members
-
-Operations
-
-Attributes
-
-
-Derived from
-
-Public members
-
-Operations
-
-Attributes
-
-Protected members
-
-Operations
-
-Attributes
-
-Private members
-
-Operations
-
-Attributes
-
-
-Derived from
-
-Public members
-
-Operations
-
-Attributes
-
-Protected members
-
-Operations
-
-Attributes
-
-Private members
-
-Operations
-
-Attributes
- bool mBarDragStarted plugin is active only in bar-dragging state wxScreenDC* mpScrDc created while tracking hint-rect wxRect mPrevHintRect rectnagle shows the position/dimensions of the bar, if it would be docked now bool mCanStick flag used to prevent "bouncing" of hint-rectangle cbDockPane* mpSrcPane pane, from which the bar was originally taken cbBarInfo* mpDraggedBar bar, which is being dragged int mInClientHintBorder public properties ** when hint-rect moves within client window area, void AdjustHintRect( wxPoint& mousePos ) the thicker rectangle is drawn using hatched brush, the default border width for this rectangle is 8 pix. void StartTracking( ) on-screen hint-tracking related methods void OnMouseMove( cbMotionEvent& event ) handlers for plugin events void OnDrawHintRect( cbDrawHintRectEvent& event ) handles event, which oriniates from itself Plugin adds row-dragging fuctionality to the pane. Handles mouse/movement and pane-background erasing plugin-events. Behaviour and appearence resembles drag & drop posotioning of the toolbar-rows int Netscape Comunicator 4.xx.
-Derived from
-
-Public members
-
-Operations
-
-Attributes
-
-Protected members
-
-Operations
-
-Attributes
-
-Private members
-
-Operations
-
-Attributes
- wxColour mHightColor background colours for the highlighted/unhighlighted icons light-blue for NC-look wxColour mLowColor light-gray -/- wxColour mTrianInnerColor blue -/- wxPen mTrianInnerPen black -/- bool mDragStarted drag & drop state variables int mSvTopMargin saved margins of the pane wxBitmap* mpPaneImage on-screen drawing state variables cbRowInfo* mpRowInFocus NOTE:: if mpRowInFocus is not NULL, then mCollapsedIconInFocus is -1, and v.v. (two different items cannot be in focus at the same time) cbDockPane* mpPane is set up temorarely, while handling event int GetHRowsCountForPane( cbDockPane* pPane ) helpers for drag&drop void DrawTrianUp( wxRect& inRect, wxDC& dc ) "hard-coded metafile" for NN-look void OnMouseMove( cbMotionEvent& event ) handlers for plugin events (appearence-independent logic) void DrawCollapsedRowIcon( int index, wxDC& dc, bool isHighlighted ) overridables (appearence-depedent) internal helper-class
-Derived from
-
-Public members
-
-Operations
-
-Attributes
-
-Protected members
-
-Operations
-
-Attributes
-
-Private members
-
-Operations
-
-Attributes
- forward decl. sample classes
-Derived from
-
-Public members
-
-Operations
-
-Attributes
-
-Protected members
-
-Operations
-
-Attributes
-
-Private members
-
-Operations
-
-Attributes
-
-
-Derived from
-
-Public members
-
-Operations
-
-Attributes
-
-Protected members
-
-Operations
-
-Attributes
-
-Private members
-
-Operations
-
-Attributes
-
-
-Derived from
-
-Public members
-
-Operations
-
-Attributes
-
-Protected members
-
-Operations
-
-Attributes
-
-Private members
-
-Operations
-
-Attributes
- serialization handlers for the above classes
-Derived from
-
-Public members
-
-Operations
-
-Attributes
-
-Protected members
-
-Operations
-
-Attributes
-
-Private members
-
-Operations
-
-Attributes
- cast
-Derived from
-
-Public members
-
-Operations
-
-Attributes
-
-Protected members
-
-Operations
-
-Attributes
-
-Private members
-
-Operations
-
-Attributes
-
-
-Derived from
-
-Public members
-
-Operations
-
-Attributes
-
-Protected members
-
-Operations
-
-Attributes
-
-Private members
-
-Operations
-
-Attributes
- Simple implementaiton of plugin, which handles row-layouting requests sent from Frame Layout
-Derived from
-
-Public members
-
-Operations
-
-Attributes
-
-Protected members
-
-Operations
-
-Attributes
-
-Private members
-
-Operations
-
-Attributes
- cbDockPane* mpPane is set up temorarely, while handling event void FitBarsToRange( int from, int till, cbBarInfo* pTheBar, cbRowInfo* pRow ) not-fixed-bars layouting related helpers int CalcRowHeight( cbRowInfo& row ) row-layouting helpers (simulate "bar-friction") void OnResizeRow( cbResizeRowEvent& event ) event handlers
-
-Derived from
-
-Public members
-
-Operations
-
-Attributes
-
-Protected members
-
-Operations
-
-Attributes
-
-Private members
-
-Operations
-
-Attributes
- wxCheckBox* mpRTU_Check "nice thing" about wxWindows: bool mRealTimeUpdatesOn fields/properties void ExchgCheck( wxCheckBox* pChk, bool& value ) helpers Intercepts bar-decoration and sizing events, draws 3d-hints around fixed and flexible bars, similar to those in Microsoft DevStudio 6.x
-Derived from
-
-Public members
-
-Operations
-
-Attributes
-
-Protected members
-
-Operations
-
-Attributes
-
-Private members
-
-Operations
-
-Attributes
- cbDockPane* mpPane is set up temorarely, while handling event void Draw3DBox( wxDC& dc, const wxPoint& pos, bool pressed ) drawing helpers bool mCloseBoxOn public properties default: ON bool mCollapseBoxOn default: ON int mGrooveCount default: 2 (two shaded bars) int mHintGap default: 5 (pixels from above, below, right and left) int mXWeight default: 2 (width in pixels of lines which used for drawing cross) void OnSizeBarWindow( cbSizeBarWndEvent& event ) handlers of plugin-events classes declared in this header file alternative class for wxBmpButton
-Derived from
-
-Public members
-
-Operations
-
-Attributes
-
-Protected members
-
-Operations
-
-Attributes
-
-Private members
-
-Operations
-
-Attributes
- wxBitmap mDepressedBmp source image for rendering wxBitmap mFocusedBmp labels for particular state may not be always present - wxBitmap* mpDepressedImg only if mHasFocusedBmp is TRUE bool mDragStarted button state variables; int mFiredEventType type of event which is fired upon depression of this button wxPen mBlackPen pens for drawing decorations (borders) wxBitmap* GetStateLabel( ) returns the label which match the current button state wxNewBitmapButton( const wxString& bitmapFileName, const int bitmapFileType = wxBITMAP_TYPE_BMP, const wxString& labelText = "", int alignText = NB_ALIGN_TEXT_BOTTOM, bool isFlat = TRUE, int firedEventType = wxEVT_COMMAND_MENU_SELECTED, int marginX = 2, int marginY = 2, int textToLabelGap = 2, bool isSticky = FALSE ) use this constructor if buttons have to be persistant void SetLabel( const wxBitmap& labelBitmap, const wxString& labelText = "" ) overridables void OnLButtonDown( wxMouseEvent& event ) event handlers Simple, but all-in-one plugin implementation. Resembles look & feel of to MFC control-bars. Handles painting of pane and items in it. Fires bar/layout customization event, when user right-clicks bar/pane. Hooking an instance of this and row-layouting plugins per each pane, would be enough for the frame layout to function properly. (they are plugged in autimatically by wxFrameLayout class)
-Derived from
-
-Public members
-
-Operations
-
-Attributes
-
-Protected members
-
-Operations
-
-Attributes
-
-Private members
-
-Operations
-
-Attributes
- bool mResizeStarted resizing bars/rows state variables cbBarInfo* mpDraggedBar also used when in bar-drag action wxRect mHandleDragArea contstraints for dragging the handle wxClientDC* mpClntDc used for handling, start-draw-in-area events cbDockPane* mpPane is set up temorary short-cut, while handling event void DrawDraggedHandle( const wxPoint& pos, cbDockPane& pane ) helpers void OnLButtonDown( cbLeftDownEvent& event ) handlers for plugin-events
- class implements optimized logic for refreshing areas of frame layout - which actually need to be updated. Is used as default updates-manager by wxFrameLayout. it is called "Garbage Collecting" u.mgr for it's impelmentation tries to find out dependencies between bars, and to order them ito "hierarchy", this hierarchical sorting resembles impelmenation of heap-garbage collectors, which resolve dependencies between referencs. Example: there are situations where the order of moving the windows does matter: case 1) ------ --- | A | |B| ------ ---> | | --- --- ------ |B| | A | | | ------ --- (future) (past) past/future positions of A and B windows completely overlapp, i.e. depend on each other, and there is not solution for moving the windows witout refereshing both of them, -- we have cyclic dependency here. The gc. alg will find this cyclic dependecy and will force "refresh" after movement. case 2) ------ | A | ------ ---> --- |B| ------ | | | A | --- ------ --- |B| | | --- (future) (past) in this case past/future positions do not overlapp, thus it's enough only to move windows, without refreshing them. GC will "notice" it. there is also third case, when overlapping is partial in this case the refershing can be also avoided by moving windows in the order of "most-dependant" towards the "least-dependent". GC handles this automatically, by sorting windows by their dependency-level (or "hierarchy") See garbagec.h for more details of this method, garbagec.h/cpp implement sorting of generic-depenencies (does not deal with graphical objects directly) Summary: improves performance when complex/large windows are moved around, by reducing number of repaints. Also helps to avoid dirty non-client areas of moved windows in some sepcal cases of "overlapping anomalies"
-
-Derived from
-
-Public members
-
-Operations
-
-Attributes
-
-Protected members
-
-Operations
-
-Attributes
-
-Private members
-
-Operations
-
-Attributes
- void OnStartChanges( ) notificiactions received from Frame Layout : void UpdateNow( ) refreshes parts of the frame layout, which need an update Enumerations Reference
-
-
- enum CB_HITTEST_RESULT
-{
- CB_NO_ITEMS_HITTED,
-
- CB_UPPER_ROW_HANDLE_HITTED,
- CB_LOWER_ROW_HANDLE_HITTED,
- CB_LEFT_BAR_HANDLE_HITTED,
- CB_RIGHT_BAR_HANDLE_HITTED,
- CB_BAR_CONTENT_HITTED
-} enumeration of hittest results, see cbDockPane::HitTestPaneItems(..) Type Definitions Reference
-
-
- FOR NOW:: void (*wxObjectSerializationFn) (wxObject*, wxObjectStorage& )void (*wxObjectSerializationFn) (wxObject*, wxObjectStorage& ) wxObjectSerializationFn abstract classes declared classes which implement the above interfaces prototypes for serialzatoin/initialization functions helpers, to ease the creation of serializers for derivatives of wxWindow forward declarations void (wxEvtHandler::*cbLeftDownHandler )(cbLeftDownEvent&)void (wxEvtHandler::*cbLeftDownHandler )(cbLeftDownEvent&) wxEvtHandler::*cbLeftDownHandler forward decls, separated by categories defs. for handler-methods Macros Reference
-
-
- layouting orientations for tools fixed settings layout types for title bars of the tabs (are selected up by evaluating the available free space ) forward decl. ID for the menu commands macros for declaring and implementing serializers both as classes and as a pair of (serialize/init) functions for serializers, which are dedicated for specific versions of persistant classes (further referred as "versioned" serializers) control bar states the states are enumerated above one pane for each alignment masks for each pane event types handled by plugins macros for creating event table entries for plugin-events button lable-text alignment types Global Variables Reference
-
-
- Global Functions Reference
-
-
- void wxCreateClassInfoTree( wxTreeCtrl* pTree, long parentBranchId = 0, long classImageNo = -1 ) creates tree with hierarchically cauptured information about wxWindows dynamic classes (at "current run-time") existing tree control void wxCreateSerializerInfoTree( wxTreeCtrl* pTree, long parentBranchId = 0, long classImageNo = -1 ) creates tree with information about serializer-classes (at current run-time) NOTE:: "objstore.cpp" should be compiled in existing tree control void test_obj_storage( ) cast --------------------------- Main testing function --------------------------- include this header and .cpp file into any of your wxWindows projects, and invoke the below function to peform tests Constants Reference
-
-
-
-cbAntiflickerPlugin
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-cbAntiflickerPlugin::mpVertBuf
-cbAntiflickerPlugin::mpLRUBufDc
-cbAntiflickerPlugin::mLRUArea
-cbAntiflickerPlugin::FindSuitableBuffer
-cbAntiflickerPlugin::OnStartDrawInArea
-cbFloatedWindow
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-wxFrameView
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-wxFrameView::OnInit
-wxFrameView::OnRecreate
-wxFrameManager
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-wxFrameManager::Init
-wxFrameManager::GetParentFrame
-wxToolLayoutItem
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-LayoutManagerBase
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-BagLayout
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-wxDynToolInfo
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-wxDynamicToolBar
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-wxDynamicToolBar::mSepartorSize
-wxDynamicToolBar::mVertGap
-wxDynamicToolBar::mHorizGap
-wxDynamicToolBar::AddTool
-wxDynamicToolBar::AddTool
-wxDynamicToolBar::DrawSeparator
-wxDynamicToolBar::Layout
-wxDynamicToolBar::OnSize
-wxDynamicToolBar::Realize
-wxToolWindow
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-wxToolWindow::mButtons
-wxToolWindow::mDragOrigin
-wxToolWindow::AddMiniButton
-wxToolWindow::GetPreferredSize
-cbMiniButton
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-cbCloseBox
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-cbCollapseBox
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-cbDockBox
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-cbFloatedBarWindow
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-cbFloatedBarWindow::PositionFloatedWnd
-cbFloatedBarWindow::GetPreferredSize
-MyApp
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-MyFrame
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-wxTabbedWindow
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-wxTabbedWindow::GetLabelFont
-wxTabbedWindow::mpTabScroll
-wxTabbedWindow::mWhitePen
-wxTabbedWindow::mGrayPen
-wxTabbedWindow::mDarkPen
-wxTabbedWindow::mBlackPen
-wxTabbedWindow::mVertGap
-wxTabbedWindow::mHorizGap
-wxTabbedWindow::mTitleVertGap
-wxTabbedWindow::mTitleHorizGap
-wxTabbedWindow::mImageTextGap
-wxTabbedWindow::mFirstTitleGap
-wxTabbedWindow::mBorderOnlyWidth
-wxTabbedWindow::OnTabAdded
-wxTabbedWindow::AddTab
-wxTabbedWindow::AddTab
-wxTabbedWindow::GetTabCount
-wxTabbedWindow::HitTest
-wxTabbedWindow::RecalcLayout
-wxTabbedWindow::OnPaint
-wxPaggedWindow
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-wxPaggedWindow::mIsDragged
-wxPaggedWindow::OnTabAdded
-wxPaggedWindow::GetLabelFont
-wxPaggedWindow::mTitleRowLen
-wxPaggedWindow::mAdjustableTitleRowLen
-wxPaggedWindow::mCurentRowOfs
-wxPaggedWindow::GetVerticalScrollBar
-wxPaggedWindow::HitTest
-wxPaggedWindow::OnPaint
-twTabInfo
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-twTabInfo::mImageFile
-MyApp
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-MyFrame
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-MyFrame::CreateTxtCtrl
-MyFrame::CreateDevLayout
-MyFrame::MyFrame
-MyFrame::OnClose
-cbSimpleCustomizationPlugin
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-cbSimpleCustomizationPlugin::OnCustomizeBar
-cbSimpleCustomizationPlugin::OnMenuItemSelected
-wxSerializerInfo
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-wxSerializerInfo::classInfo
-wxSerializerInfo::serFn
-wxSerializerInfo::serInfoHash
-wxSerializerInfo::SerializeInherited
-wxSerializerInfo::InitializeSerializers
-wxSerializerBase
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-wxDataStreamBase
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-wxObjectStorage
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-wxObjectStorage::mVerSepartorCh
-wxObjectStorage::mMinorMajorSepartorCh
-wxObjectStorage::AddInitialRef
-wxObjectStorage::SetDataStream
-wxObjectStorage::Finalize
-wxObjectStorage::XchgChar
-wxObjectStorage::XchgObj
-wxObjectStorage::XchgWxStr
-wxColourSerializer
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-wxPenSerializer
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-wxBrushSerializer
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-wxObjectListSerializer
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-wxEvtHandlerSerializer
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-wxWindowSerializer
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-wxTextCtrlSerializer
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-wxButtonSerializer
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-wxStaticTextSerializer
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-wxScrollBarSerializer
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-wxTreeCtrlSerializer
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-wxIOStreamWrapper
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-wxIOStreamWrapper::mStreamPos
-wxIOStreamWrapper::Close
-wxIOStreamWrapper::wxIOStreamWrapper
-wxIOStreamWrapper::wxIOStreamWrapper
-wxIOStreamWrapper::Create
-wxIOStreamWrapper::Attach
-GCItem
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-GCItem::mRefs
-GarbageCollector
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-GarbageCollector::AddObject
-GarbageCollector::ArrangeCollection
-GarbageCollector::GetRegularObjects
-GarbageCollector::Reset
-cbSimpleUpdatesMgr
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-cbSimpleUpdatesMgr::OnStartChanges
-cbSimpleUpdatesMgr::UpdateNow
-wxFrameLayoutSerializer
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-cbBarSpySerializer
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-cbBarDimHandlerBaseSerializer
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-cbDimInfoSerializer
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-cbRowInfoSerializer
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-cbBarInfoSerializer
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-cbCommonPanePropertiesSerializer
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-cbDockPaneSerializer
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-cbUpdatesManagerBaseSerializer
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-cbPluginBaseSerializer
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-cbRowDragPluginSerializer
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-cbHiddenBarInfoSerializer
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-cbFloatedBarWindowSerializer
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-wxNewBitmapButtonSerializer
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-wxDynamicToolBarSerializer
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-wxDynToolInfoSerializer
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-wxTabbedWindowSerializer
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-twTabInfoSerializer
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-cbBarSpy
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-cbBarSpy::ProcessEvent
-wxFrameLayout
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-wxFrameLayout::mpFrame
-wxFrameLayout::mpFrameClient
-wxFrameLayout::mPanes[MAX_PANES]
-wxFrameLayout::mpHorizCursor
-wxFrameLayout::mpNECursor
-wxFrameLayout::mDarkPen
-wxFrameLayout::mLightPen
-wxFrameLayout::mGrayPen
-wxFrameLayout::mBlackPen
-wxFrameLayout::mBorderPen
-wxFrameLayout::mNullPen
-wxFrameLayout::mpPaneInFocus
-wxFrameLayout::mpLRUPane
-wxFrameLayout::mClntWndBounds
-wxFrameLayout::mpTopPlugin
-wxFrameLayout::mpCaputesInput
-wxFrameLayout::mBarSpyList
-wxFrameLayout::mFloatedFrames
-wxFrameLayout::mAllBars
-wxFrameLayout::mClientWndRefreshPending
-wxFrameLayout::mpUpdatesMgr
-wxFrameLayout::PositionClientWindow
-wxFrameLayout::GetBarPane
-wxFrameLayout::ForwardMouseEvent
-wxFrameLayout::CanReparent
-wxFrameLayout::CreateUpdatesManager
-wxFrameLayout::wxFrameLayout
-wxFrameLayout::~wxFrameLayout
-wxFrameLayout::EnableFloating
-wxFrameLayout::Activate
-wxFrameLayout::Deactivate
-wxFrameLayout::HideBarWindows
-wxFrameLayout::SetFrameClient
-wxFrameLayout::GetPanesArray
-wxFrameLayout::GetPane
-wxFrameLayout::AddBar
-wxFrameLayout::RedockBar
-wxFrameLayout::FindBarByName
-wxFrameLayout::SetBarState
-wxFrameLayout::ApplyBarProperties
-wxFrameLayout::RemoveBar
-wxFrameLayout::RecalcLayout
-wxFrameLayout::GetUpdatesManager
-wxFrameLayout::SetUpdatesManager
-wxFrameLayout::GetPaneProperties
-wxFrameLayout::SetMargins
-wxFrameLayout::RefreshNow
-wxFrameLayout::OnSize
-wxFrameLayout::FirePluginEvent
-wxFrameLayout::CaptureEventsForPlugin
-wxFrameLayout::CaptureEventsForPane
-wxFrameLayout::GetTopPlugin
-wxFrameLayout::SetTopPlugin
-wxFrameLayout::PushPlugin
-wxFrameLayout::PushDefaultPlugins
-wxFrameLayout::AddPlugin
-wxFrameLayout::AddPluginBefore
-wxFrameLayout::RemovePlugin
-wxFrameLayout::FindPlugin
-cbUpdateMgrData
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-cbUpdateMgrData::mPrevBounds
-cbUpdateMgrData::mIsDirty
-cbUpdateMgrData::mpCustomData
-cbUpdateMgrData::cbUpdateMgrData
-cbBarDimHandlerBase
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-cbBarDimHandlerBase::mRefCount
-cbBarDimHandlerBase::cbBarDimHandlerBase
-cbBarDimHandlerBase::OnChangeBarState
-cbDimInfo
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-cbDimInfo::mSizes[MAX_BAR_STATES]
-cbDimInfo::mBounds[MAX_BAR_STATES]
-cbDimInfo::mLRUPane
-cbDimInfo::mVertGap
-cbDimInfo::mHorizGap
-cbDimInfo::mIsFixed
-cbDimInfo::mpHandler
-cbDimInfo::cbDimInfo
-cbDimInfo::~cbDimInfo
-cbRowInfo
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-cbRowInfo::mBars
-cbRowInfo::mHasUpperHandle
-cbRowInfo::mBoundsInParent
-cbRowInfo::mUMgrData
-cbRowInfo::mpExpandedBar
-cbRowInfo::mSavedRatios
-cbRowInfo::GetFirstBar
-cbBarInfo
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-cbBarInfo::mName
-cbBarInfo::mBounds
-cbBarInfo::mBoundsInParent
-cbBarInfo::mpRow
-cbBarInfo::mHasLeftHandle
-cbBarInfo::mDimInfo
-cbBarInfo::mState
-cbBarInfo::mAlignment
-cbBarInfo::mRowNo
-cbBarInfo::mpBarWnd
-cbBarInfo::mLenRatio
-cbBarInfo::mPosIfFloated
-cbBarInfo::mUMgrData
-cbBarInfo::mpNext
-cbBarInfo::mpPrev
-cbBarShapeData
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-wxBarIterator
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-wxBarIterator::Next
-wxBarIterator::RowInfo
-cbCommonPaneProperties
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-cbCommonPaneProperties::mRealTimeUpdatesOn
-cbCommonPaneProperties::mOutOfPaneDragOn
-cbCommonPaneProperties::mExactDockPredictionOn
-cbCommonPaneProperties::mNonDestructFirctionOn
-cbCommonPaneProperties::mShow3DPaneBorderOn
-cbCommonPaneProperties::mBarFloatingOn
-cbCommonPaneProperties::mRowProportionsOn
-cbCommonPaneProperties::mColProportionsOn
-cbCommonPaneProperties::mBarCollapseIconsOn
-cbCommonPaneProperties::mBarDragHintsOn
-cbCommonPaneProperties::mMinCBarDim
-cbCommonPaneProperties::mResizeHandleSize
-cbDockPane
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-cbDockPane::mProps
-cbDockPane::mLeftMargin
-cbDockPane::mRightMargin
-cbDockPane::mTopMargin
-cbDockPane::mBottomMargin
-cbDockPane::mBoundsInParent
-cbDockPane::mPaneWidth
-cbDockPane::mUMgrData
-cbDockPane::mRows
-cbDockPane::mpLayout
-cbDockPane::mRowShapeData
-cbDockPane::mpStoredRow
-cbDockPane::GetRow
-cbDockPane::GetRowAt
-cbDockPane::SyncRowFlags
-cbDockPane::IsFixedSize
-cbDockPane::FrameToPane
-cbDockPane::SetRowHeight
-cbDockPane::PaintBarDecorations
-cbDockPane::cbDockPane
-cbDockPane::SetMargins
-cbDockPane::RemoveBar
-cbDockPane::InsertBar
-cbDockPane::InsertBar
-cbDockPane::InsertBar
-cbDockPane::RemoveRow
-cbDockPane::InsertRow
-cbDockPane::SetPaneWidth
-cbDockPane::SetBoundsInParent
-cbDockPane::GetRowList
-cbDockPane::GetFirstRow
-cbDockPane::BarPresent
-cbDockPane::GetPaneHeight
-cbDockPane::HitTestPaneItems
-cbDockPane::DrawVertHandle
-cbDockPane::GetRowShapeData
-cbDockPane::SetRowShapeData
-cbUpdatesManagerBase
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-cbUpdatesManagerBase::mpLayout
-cbUpdatesManagerBase::OnStartChanges
-cbUpdatesManagerBase::UpdateNow
-cbPluginEvent
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-cbPluginEvent::mpPane
-cbPluginEvent::cbPluginEvent
-cbPluginBase
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-cbPluginBase::mpLayout
-cbPluginBase::mIsReady
-cbPluginBase::mPaneMask
-cbPluginBase::~cbPluginBase
-cbPluginBase::OnInitPlugin
-cbPluginBase::ProcessEvent
-cbLeftDownEvent
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-cbLeftUpEvent
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-cbRightDownEvent
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-cbRightUpEvent
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-cbMotionEvent
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-cbLeftDClickEvent
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-cbLayoutRowEvent
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-cbResizeRowEvent
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-cbLayoutRowsEvent
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-cbInsertBarEvent
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-cbResizeBarEvent
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-cbRemoveBarEvent
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-cbSizeBarWndEvent
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-cbDrawBarDecorEvent
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-cbDrawRowDecorEvent
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-cbDrawPaneDecorEvent
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-cbDrawBarHandlesEvent
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-cbDrawRowHandlesEvent
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-cbDrawRowBkGroundEvent
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-cbDrawPaneBkGroundEvent
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-cbStartBarDraggingEvent
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-cbStartBarDraggingEvent::mPos
-cbDrawHintRectEvent
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-cbDrawHintRectEvent::mRect
-cbDrawHintRectEvent::mIsInClient
-cbDrawHintRectEvent::mEraseRect
-cbDrawHintRectEvent::mLastTime
-cbDrawHintRectEvent::cbDrawHintRectEvent
-cbStartDrawInAreaEvent
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-cbStartDrawInAreaEvent::mppDc
-cbStartDrawInAreaEvent::cbStartDrawInAreaEvent
-cbFinishDrawInAreaEvent
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-cbCustomizeBarEvent
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-cbCustomizeBarEvent::mClickPos
-cbCustomizeLayoutEvent
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-cbCustomizeLayoutEvent::mClickPos
-cbHintAnimationPlugin
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-cbHintAnimationPlugin::mpScrDc
-cbHintAnimationPlugin::mCurRect
-cbHintAnimationPlugin::mAnimStarted
-cbHintAnimationPlugin::mMorphDelay
-cbHintAnimationPlugin::mMaxFrames
-cbHintAnimationPlugin::mInClientHintBorder
-cbHintAnimationPlugin::mAccelerationOn
-cbHintAnimationPlugin::StartTracking
-MorphInfoT
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-cbHintAnimTimer
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-cbBarDragPlugin
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-cbBarDragPlugin::mBarDragStarted
-cbBarDragPlugin::mpScrDc
-cbBarDragPlugin::mPrevHintRect
-cbBarDragPlugin::mCanStick
-cbBarDragPlugin::mpSrcPane
-cbBarDragPlugin::mpDraggedBar
-cbBarDragPlugin::mInClientHintBorder
-cbBarDragPlugin::AdjustHintRect
-cbBarDragPlugin::StartTracking
-cbBarDragPlugin::OnMouseMove
-cbBarDragPlugin::OnDrawHintRect
-cbRowDragPlugin
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-cbRowDragPlugin::mHightColor
-cbRowDragPlugin::mLowColor
-cbRowDragPlugin::mTrianInnerColor
-cbRowDragPlugin::mTrianInnerPen
-cbRowDragPlugin::mDragStarted
-cbRowDragPlugin::mSvTopMargin
-cbRowDragPlugin::mpPaneImage
-cbRowDragPlugin::mpRowInFocus
-cbRowDragPlugin::mpPane
-cbRowDragPlugin::GetHRowsCountForPane
-cbRowDragPlugin::DrawTrianUp
-cbRowDragPlugin::OnMouseMove
-cbRowDragPlugin::DrawCollapsedRowIcon
-cbHiddenBarInfo
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-notStorableClass
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-classA
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-classB
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-classASerializer
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-classBSerializer
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-cbDynToolBarDimHandler
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-cbRowLayoutPlugin
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-cbRowLayoutPlugin::mpPane
-cbRowLayoutPlugin::FitBarsToRange
-cbRowLayoutPlugin::CalcRowHeight
-cbRowLayoutPlugin::OnResizeRow
-SettingsDlg
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-SettingsDlg::mpRTU_Check
-SettingsDlg::mRealTimeUpdatesOn
-SettingsDlg::ExchgCheck
-cbBarHintsPlugin
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-cbBarHintsPlugin::mpPane
-cbBarHintsPlugin::Draw3DBox
-cbBarHintsPlugin::mCloseBoxOn
-cbBarHintsPlugin::mCollapseBoxOn
-cbBarHintsPlugin::mGrooveCount
-cbBarHintsPlugin::mHintGap
-cbBarHintsPlugin::mXWeight
-cbBarHintsPlugin::OnSizeBarWindow
-wxNewBitmapButton
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-wxNewBitmapButton::mDepressedBmp
-wxNewBitmapButton::mFocusedBmp
-wxNewBitmapButton::mpDepressedImg
-wxNewBitmapButton::mDragStarted
-wxNewBitmapButton::mFiredEventType
-wxNewBitmapButton::mBlackPen
-wxNewBitmapButton::GetStateLabel
-wxNewBitmapButton::wxNewBitmapButton
-wxNewBitmapButton::SetLabel
-wxNewBitmapButton::OnLButtonDown
-cbPaneDrawPlugin
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-cbPaneDrawPlugin::mResizeStarted
-cbPaneDrawPlugin::mpDraggedBar
-cbPaneDrawPlugin::mHandleDragArea
-cbPaneDrawPlugin::mpClntDc
-cbPaneDrawPlugin::mpPane
-cbPaneDrawPlugin::DrawDraggedHandle
-cbPaneDrawPlugin::OnLButtonDown
-cbGCUpdatesMgr
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-cbGCUpdatesMgr::OnStartChanges
-cbGCUpdatesMgr::UpdateNow
-
-CB_HITTEST_RESULT
-
-
-MyTestPanel
wxPanel
wxPanel MyTestPanel
-wxObjectSerializationFn
-wndCreationFn
(*wndCreationFn)(wxWindow*, wxWindow*,
const wxWindowID,
- const wxPoint&, const wxSize&, long, const wxString& )(*wndCreationFn)(wxWindow*, wxWindow*, const wxWindowID,
- const wxPoint&, const wxSize&, long, const wxString& ) wndCreationFn
-BarInfoPtrT
cbBarInfo*
cbBarInfo* BarInfoPtrT
-wxEvtHandler::*cbLeftDownHandler
-
-
-LO_HORIZONTAL
#define LO_HORIZONTAL 0
-BTN_BOX_HEIGHT
#define BTN_BOX_HEIGHT 12
-wxTITLE_IMG_AND_TEXT
#define wxTITLE_IMG_AND_TEXT 0
-MINIMAL_QUIT
#define MINIMAL_QUIT 1
-DECLARE_SERIALIZER_CLASS
#define DECLARE_SERIALIZER_CLASS(serializerName) \
- public:\
- static wxSerializerInfo info;;
-IMPLEMENT_SERIALIZER_CLASS_FOR_VERSION
#define IMPLEMENT_SERIALIZER_CLASS_FOR_VERSION( name, serializerName, serFn, initFn, versionName) \
- wxSerializerInfo \
- serializerName::info( #name, serFn, initFn, #versionName );
-wxCBAR_DOCKED_HORIZONTALLY
#define wxCBAR_DOCKED_HORIZONTALLY 0
-MAX_BAR_STATES
#define MAX_BAR_STATES 4
-MAX_PANES
#define MAX_PANES 4
-wxTOP_PANE
#define wxTOP_PANE 0x0001
-cbEVT_PL_LEFT_DOWN
#define cbEVT_PL_LEFT_DOWN 0
-EVT_PL_LEFT_DOWN
#define EVT_PL_LEFT_DOWN(func) { cbEVT_PL_LEFT_DOWN, -1, -1, (wxObjectEventFunction) (wxEventFunction) (cbLeftDownHandler ) & func },
-NB_ALIGN_TEXT_RIGHT
#define NB_ALIGN_TEXT_RIGHT 0
-
-
-
-
-wxCreateClassInfoTree
-wxCreateSerializerInfoTree
-test_obj_storage
-
-