]> git.saurik.com Git - wxWidgets.git/blobdiff - contrib/src/fl/controlbar.cpp
Fixed bug with SetValue on read-only combobox; don't call ::SetWindowText,
[wxWidgets.git] / contrib / src / fl / controlbar.cpp
index 93234730f6736f0ea32765774caeb7a0bdd37f02..afe63e5af0990485fdfcac11a3917c00bcd93e67 100644 (file)
@@ -387,7 +387,7 @@ void wxFrameLayout::ReparentWindow( wxWindow* pChild, wxWindow* pNewParent )
     pChild->Reparent(pNewParent);
 
     return;
-#elif defined(__WXGTK__)
+#elif defined(__WXGTK__) || defined(__WXX11__)
     // FOR NOW:: floating with wxGtk still very buggy
 
     return;
@@ -749,6 +749,11 @@ void wxFrameLayout::SetBarState( cbBarInfo* pBar, int newState, bool updateNow )
         }
     }
 
+    if ( pBar->mDimInfo.GetDimHandler() )
+    {
+        pBar->mDimInfo.GetDimHandler()->OnChangeBarState( pBar, newState );
+    }
+
     pBar->mState = newState;
 
     DoSetBarState( pBar );
@@ -891,7 +896,9 @@ void wxFrameLayout::DoSetBarState( cbBarInfo* pBar )
         pMiniFrm->Create( &GetParentFrame(), -1, pBar->mName, 
                           wxPoint( 50,50 ),
                           wxSize ( 0, 0  ),
-                          wxFRAME_FLOAT_ON_PARENT  |  wxFRAME_TOOL_WINDOW
+                          wxFRAME_FLOAT_ON_PARENT |
+                          wxFRAME_TOOL_WINDOW |
+                          wxFRAME_NO_TASKBAR
                         );
 
         pMiniFrm->SetClient( pBar->mpBarWnd );
@@ -1149,8 +1156,13 @@ void wxFrameLayout::PositionPanes()
 void wxFrameLayout::OnSize( wxSizeEvent& event )
 {
     if ( event.GetEventObject() == (wxObject*) mpFrame )
-    
+    {
+        GetUpdatesManager().OnStartChanges();
         RecalcLayout(TRUE);
+        GetUpdatesManager().OnFinishChanges();
+        GetUpdatesManager().UpdateNow();
+    }
+
 }
 
 /*** protected members ***/
@@ -1551,9 +1563,11 @@ void wxFrameLayout::SetPaneBackground( const wxColour& colour )
 
 void wxFrameLayout::RefreshNow( bool recalcLayout )
 {
-    if ( recalcLayout ) RecalcLayout( TRUE );
+    if ( recalcLayout )
+        RecalcLayout( TRUE );
 
-    if ( mpFrame ) mpFrame->Refresh();
+    if ( mpFrame )
+        mpFrame->Refresh();
 }
 
 /*** plugin-related methods ***/
@@ -2036,7 +2050,7 @@ cbCommonPaneProperties::cbCommonPaneProperties(void)
     : mRealTimeUpdatesOn    ( TRUE  ),
       mOutOfPaneDragOn      ( TRUE  ),
       mExactDockPredictionOn( FALSE ),
-      mNonDestructFirctionOn( FALSE ),
+      mNonDestructFrictionOn( FALSE ),
       mShow3DPaneBorderOn   ( TRUE  ),
       mBarFloatingOn        ( FALSE ),
       mRowProportionsOn     ( FALSE ),
@@ -2048,6 +2062,43 @@ cbCommonPaneProperties::cbCommonPaneProperties(void)
       mResizeHandleSize( 4 )
 {}
 
+cbCommonPaneProperties::cbCommonPaneProperties(const cbCommonPaneProperties& props)
+
+    : wxObject(),
+      mRealTimeUpdatesOn    (props.mRealTimeUpdatesOn),
+      mOutOfPaneDragOn      (props.mOutOfPaneDragOn),
+      mExactDockPredictionOn(props.mExactDockPredictionOn),
+      mNonDestructFrictionOn(props.mNonDestructFrictionOn),
+      mShow3DPaneBorderOn   (props.mShow3DPaneBorderOn),
+      mBarFloatingOn        (props.mBarFloatingOn),
+      mRowProportionsOn     (props.mRowProportionsOn),
+      mColProportionsOn     (props.mColProportionsOn),
+      mBarCollapseIconsOn   (props.mBarCollapseIconsOn),
+      mBarDragHintsOn       (props.mBarDragHintsOn),
+
+      mMinCBarDim(props.mMinCBarDim),
+      mResizeHandleSize(props.mResizeHandleSize)
+{}
+
+cbCommonPaneProperties& cbCommonPaneProperties::operator=(const cbCommonPaneProperties& props)
+{
+    mRealTimeUpdatesOn     = props.mRealTimeUpdatesOn;
+    mOutOfPaneDragOn       = props.mOutOfPaneDragOn;
+    mExactDockPredictionOn = props.mExactDockPredictionOn;
+    mNonDestructFrictionOn = props.mNonDestructFrictionOn;
+    mShow3DPaneBorderOn    = props.mShow3DPaneBorderOn;
+    mBarFloatingOn         = props.mBarFloatingOn;
+    mRowProportionsOn      = props.mRowProportionsOn;
+    mColProportionsOn      = props.mColProportionsOn;
+    mBarCollapseIconsOn    = props.mBarCollapseIconsOn;
+    mBarDragHintsOn        = props.mBarDragHintsOn;
+    
+    mMinCBarDim            = props.mMinCBarDim;
+    mResizeHandleSize      = props.mResizeHandleSize;
+
+    return *this;
+}
+
 /***** Implementation for class cbRowInfo *****/
 
 IMPLEMENT_DYNAMIC_CLASS( cbRowInfo, wxObject )
@@ -2296,7 +2347,7 @@ int cbDockPane::GetNotFixedBarsCount( cbRowInfo* pRow )
 
 void cbDockPane::RemoveBar( cbBarInfo* pBar )
 {
-    bool needsRestoring = mProps.mNonDestructFirctionOn && 
+    bool needsRestoring = mProps.mNonDestructFrictionOn && 
                           mpStoredRow == pBar->mpRow;
 
     cbRemoveBarEvent evt( pBar, this );
@@ -2744,7 +2795,7 @@ void cbDockPane::DoInsertBar( cbBarInfo* pBar, int rowNo )
     {
         pRow = mRows[rowNo];
 
-        if ( mProps.mNonDestructFirctionOn == TRUE )
+        if ( mProps.mNonDestructFrictionOn == TRUE )
         {
             // store original shape of the row (before the bar is inserted)