SetKeyboardFocus( m_txnWindow , m_controlRef , kControlFocusNoPart ) ;
}
- TXNControlTag iControlTags[] =
- {
- kTXNVisibilityTag ,
- };
- TXNControlData iControlData[] =
- {
- {(UInt32) false },
- };
-
- int toptag = WXSIZEOF( iControlTags ) ;
+ TXNControlTag iControlTags[1] = { kTXNVisibilityTag };
+ TXNControlData iControlData[1] = { {(UInt32) false } };
- verify_noerr( TXNGetTXNObjectControls( m_txn , toptag,
+ verify_noerr( TXNGetTXNObjectControls( m_txn , 1,
iControlTags, iControlData ) ) ;
if ( iControlData[0].uValue != vis )
{
iControlData[0].uValue = vis ;
- verify_noerr( TXNSetTXNObjectControls( m_txn, false , toptag,
+ verify_noerr( TXNSetTXNObjectControls( m_txn, false , 1,
iControlTags, iControlData )) ;
}
// we right now are always clipping as partial visibility (overlapped) visibility
Rect oldBounds = m_txnControlBounds ;
m_txnControlBounds = bounds ;
wxMacWindowClipper cl(textctrl) ;
+ wxRect visRect = textctrl->MacGetClippedRect() ;
+ Rect visBounds = { visRect.y , visRect.x , visRect.y + visRect.height , visRect.x + visRect.width } ;
#ifdef __WXMAC_OSX__
bool isCompositing = textctrl->MacGetTopLevelWindow()->MacUsesCompositing() ;
SetControlViewSize( m_sbVertical , h ) ;
}
}
+ int x , y ;
+ x = y = 0 ;
+ textctrl->MacWindowToRootWindow( &x , &y ) ;
+ OffsetRect( &visBounds , x , y ) ;
+
+ Rect oldviewRect ;
+ TXNLongRect olddestRect ;
+ TXNGetRectBounds( m_txn , &oldviewRect , &olddestRect , NULL ) ;
+
+ Rect viewRect = { m_txnControlBounds.top, m_txnControlBounds.left,
+ m_txnControlBounds.bottom - ( m_sbHorizontal ? 14 : 0 ) , m_txnControlBounds.right - ( m_sbVertical ? 14 : 0 ) } ;
+ TXNLongRect destRect = { m_txnControlBounds.top, m_txnControlBounds.left,
+ m_txnControlBounds.bottom - ( m_sbHorizontal ? 14 : 0 ) , m_txnControlBounds.right - ( m_sbVertical ? 14 : 0 ) } ;
+
+ if ( olddestRect.right >= 10000 )
+ destRect.right = destRect.left + 32000 ;
+
+ if ( olddestRect.bottom >= 0x20000000 )
+ destRect.bottom = destRect.top + 0x40000000 ;
+
+ SectRect( &viewRect , &visBounds , &viewRect ) ;
+ TXNSetRectBounds( m_txn , &viewRect , &destRect , false ) ;
+/*
TXNSetFrameBounds( m_txn, m_txnControlBounds.top, m_txnControlBounds.left,
m_txnControlBounds.bottom - ( m_sbHorizontal ? 14 : 0 ) , m_txnControlBounds.right - ( m_sbVertical ? 14 : 0 ), m_txnFrameID);
+*/
#else
TXNSetFrameBounds( m_txn, m_txnControlBounds.top, m_txnControlBounds.left,
kTXNTextensionFile,
kTXNSystemDefaultEncoding,
&m_txn, &m_txnFrameID, NULL ) );
+/*
+ TXNCarbonEventInfo cInfo ;
+
+ cInfo.useCarbonEvents = false ;
+ cInfo.filler = 0 ;
+ cInfo.flags = 0 ;
+ cInfo.fDictionary = NULL ;
+
+ TXNControlTag iControlTags[] =
+ {
+ kTXNUseCarbonEvents ,
+ };
+ TXNControlData iControlData[] =
+ {
+ {(UInt32) &cInfo },
+ };
+
+ int toptag = WXSIZEOF( iControlTags ) ;
+ verify_noerr( TXNSetTXNObjectControls( m_txn, false , toptag,
+ iControlTags, iControlData )) ;
+
+*/
#ifdef __WXMAC_OSX__
TXNRegisterScrollInfoProc( m_txn, gTXNScrollInfoProc, (SInt32) this);
#endif