class WXDLLEXPORT wxMacPortSaver
{
- DECLARE_NO_COPY_CLASS(wxMacPortSaver)
+ wxDECLARE_NO_COPY_CLASS(wxMacPortSaver);
public:
wxMacPortSaver( GrafPtr port );
class WXDLLEXPORT wxMacWindowClipper : public wxMacPortSaver
{
- DECLARE_NO_COPY_CLASS(wxMacWindowClipper)
+ wxDECLARE_NO_COPY_CLASS(wxMacWindowClipper);
public:
wxMacWindowClipper( const wxWindow* win );
{
::InstallControlEventHandler( m_controlRef , GetwxMacUnicodeTextControlEventHandlerUPP(),
GetEventTypeCount(unicodeTextControlEventList), unicodeTextControlEventList, this,
- NULL);
+ (EventHandlerRef*) &m_macTextCtrlEventHandler);
}
wxMacUnicodeTextControl::~wxMacUnicodeTextControl()
{
+ ::RemoveEventHandler((EventHandlerRef) m_macTextCtrlEventHandler);
}
void wxMacUnicodeTextControl::VisibilityChanged(bool shown)
static inline int wxConvertToTXN(int x)
{
- return wx_static_cast(int, x / 254.0 * 72 + 0.5);
+ return static_cast<int>(x / 254.0 * 72 + 0.5);
}
void wxMacMLTEControl::TXNSetAttribute( const wxTextAttr& style , long from , long to )
if ( typeAttrCount > 0 )
{
verify_noerr( TXNSetTypeAttributes( m_txn , typeAttrCount, typeAttr, from , to ) );
- relayout = true;
+ if (from != to)
+ relayout = true;
}
if ( tabs != NULL )
#else
wxMBConvUTF16 converter ;
ByteCount byteBufferLen = converter.WC2MB( NULL, st.wc_str(), 0 ) ;
- UniChar *unibuf = (UniChar*)malloc( byteBufferLen ) ;
- converter.WC2MB( (char*)unibuf, st.wc_str(), byteBufferLen ) ;
+ wxASSERT_MSG( byteBufferLen != wxCONV_FAILED,
+ _T("Conversion to UTF-16 unexpectedly failed") );
+ UniChar *unibuf = (UniChar*)malloc( byteBufferLen + 2 ) ; // 2 for NUL in UTF-16
+ converter.WC2MB( (char*)unibuf, st.wc_str(), byteBufferLen + 2 ) ;
TXNSetData( m_txn, kTXNUnicodeTextData, (void*)unibuf, byteBufferLen, start, end ) ;
free( unibuf ) ;
#endif
MAC_WXHWND(wxPeer->GetParent()->MacGetTopLevelWindowRef()),
&bounds, featureSet, &m_controlRef );
verify_noerr( err );
+ SetControlReference( m_controlRef , (URefCon) wxPeer );
DoCreate();
{
HIViewAddSubview( m_scrollView , m_textView ) ;
m_controlRef = m_scrollView ;
- wxMacControl::MacInstallEventHandler( m_textView, wxPeer ) ;
+ InstallEventHandler( (WXWidget) m_textView ) ;
}
else
{