virtual void ShowPosition( long WXUNUSED(pos) ) ;
virtual int GetLineLength(long lineNo) const ;
virtual wxString GetLineText(long lineNo) const ;
+ virtual bool SetupCursor( const wxPoint& pt ) { return false ; }
#ifndef __WXMAC_OSX__
virtual void MacControlUserPaneDrawProc(wxInt16 part) = 0 ;
virtual wxInt16 MacControlUserPaneFocusProc(wxInt16 action) ;
virtual void MacControlUserPaneBackgroundProc(void* info) ;
+ virtual bool SetupCursor( const wxPoint& WXUNUSED(pt) ) { MacControlUserPaneIdleProc() ; return true ;}
+
virtual void SetRect( Rect *r ) ;
protected :
{
SetEditable( false ) ;
}
+
+ SetCursor( wxCursor( wxCURSOR_IBEAM ) ) ;
return true;
}
bool wxTextCtrl::MacSetupCursor( const wxPoint& pt )
{
- return true ;
+ if ( !GetPeer()->SetupCursor(pt) )
+ return wxWindow::MacSetupCursor( pt ) ;
+ else
+ return true ;
}
#if !TARGET_API_MAC_OSX
iControlTags, iControlData )) ;
// setting the default font
+ // under 10.2 this causes a visible caret, therefore we avoid it
- Str255 fontName ;
- SInt16 fontSize ;
- Style fontStyle ;
-
- GetThemeFont(kThemeSystemFont , GetApplicationScript() , fontName , &fontSize , &fontStyle ) ;
-
- TXNTypeAttributes typeAttr[] =
+ if ( UMAGetSystemVersion() >= 0x1030 )
{
- { kTXNQDFontNameAttribute , kTXNQDFontNameAttributeSize , { (void*) fontName } } ,
- { kTXNQDFontSizeAttribute , kTXNFontSizeAttributeSize , { (void*) (fontSize << 16) } } ,
- { kTXNQDFontStyleAttribute , kTXNQDFontStyleAttributeSize , { (void*) normal } } ,
- } ;
+ Str255 fontName ;
+ SInt16 fontSize ;
+ Style fontStyle ;
- verify_noerr( TXNSetTypeAttributes (m_txn, sizeof( typeAttr ) / sizeof(TXNTypeAttributes) , typeAttr,
- kTXNStartOffset,
- kTXNEndOffset) );
+ GetThemeFont(kThemeSystemFont , GetApplicationScript() , fontName , &fontSize , &fontStyle ) ;
+
+ TXNTypeAttributes typeAttr[] =
+ {
+ { kTXNQDFontNameAttribute , kTXNQDFontNameAttributeSize , { (void*) fontName } } ,
+ { kTXNQDFontSizeAttribute , kTXNFontSizeAttributeSize , { (void*) (fontSize << 16) } } ,
+ { kTXNQDFontStyleAttribute , kTXNQDFontStyleAttributeSize , { (void*) normal } } ,
+ } ;
+ verify_noerr( TXNSetTypeAttributes (m_txn, sizeof( typeAttr ) / sizeof(TXNTypeAttributes) , typeAttr,
+ kTXNStartOffset,
+ kTXNEndOffset) );
+ }
+
if ( m_windowStyle & wxTE_PASSWORD )
{
UniChar c = 0xA5 ;
{
SetKeyboardFocus( m_txnWindow , m_controlRef , kControlFocusNoPart ) ;
}
+
+ TXNControlTag iControlTags[1] = { kTXNVisibilityTag };
+ TXNControlData iControlData[1] = { {(UInt32) false } };
+
+ verify_noerr( TXNGetTXNObjectControls( m_txn , 1,
+ iControlTags, iControlData ) ) ;
+
+ if ( iControlData[0].uValue != vis )
+ {
+ iControlData[0].uValue = vis ;
+ verify_noerr( TXNSetTXNObjectControls( m_txn, false , 1,
+ iControlTags, iControlData )) ;
+ }
// we right now are always clipping as partial visibility (overlapped) visibility
// is also a problem, if we run into further problems we might set the FrameBounds to an empty
// rect here
ev.modifiers = modifiers ;
ev.message = (( keyCode << 8 ) & keyCodeMask ) + ( charCode & charCodeMask ) ;
TXNKeyDown( m_txn , &ev);
-
+
return kControlEntireControl;
}
DoCreate();
- MacSetObjectVisibility( wxPeer->MacIsReallyShown() ) ;
-
AdjustCreationAttributes( *wxWHITE , true) ;
+ MacSetObjectVisibility( wxPeer->MacIsReallyShown() ) ;
+
wxMacWindowClipper clipper( m_peer ) ;
SetTXNData( st , kTXNStartOffset, kTXNEndOffset ) ;
TXNSetSelection( m_txn, 0, 0);
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