#endif
else
{
+#ifndef __LP64__
info->contentType = kControlContentPictHandle ;
info->u.picture = bmap->GetPictHandle() ;
+#endif
}
}
}
m_hBitmap = NULL ;
Rect rect = { 0 , 0 , m_height , m_width } ;
+#ifndef __LP64__
verify_noerr( NewGWorldFromPtr( (GWorldPtr*) &m_hBitmap , k32ARGBPixelFormat , &rect , NULL , NULL , 0 ,
(char*) data , m_bytesPerRow ) ) ;
wxASSERT_MSG( m_hBitmap , wxT("Unable to create GWorld context") ) ;
-
+#endif
m_ok = ( m_hBitmap != NULL ) ;
return m_ok ;
memset( data , 0 , size ) ;
Rect rect = { 0 , 0 , height , width } ;
+#ifndef __LP64__
verify_noerr( NewGWorldFromPtr( (GWorldPtr*) &m_hMaskBitmap , k32ARGBPixelFormat , &rect , NULL , NULL , 0 ,
(char*) data , m_maskBytesPerRow ) ) ;
wxASSERT_MSG( m_hMaskBitmap , wxT("Unable to create GWorld context for alpha mask") ) ;
+#endif
m_maskMemBuf.UngetWriteBuf(size) ;
#if !wxMAC_USE_CORE_GRAPHICS
}
else
{
+#ifndef __LP64__
DisposeGWorld( m_hMaskBitmap ) ;
+#endif
m_hMaskBitmap = NULL ;
m_maskBytesPerRow = 0 ;
}
{
if ( m_pictHandle == NULL )
{
+#ifndef __LP64__
CGrafPtr origPort = NULL ;
GDHandle origDev = NULL ;
GWorldPtr wp = NULL ;
SetGWorld( origPort , origDev ) ;
if ( clipRgn )
DisposeRgn( clipRgn ) ;
+#endif
}
return m_pictHandle ;
m_iconRef = NULL ;
}
+#ifndef __LP64__
if ( m_pictHandle )
{
KillPicture( m_pictHandle ) ;
DisposeGWorld( MAC_WXHBITMAP(m_hMaskBitmap) ) ;
m_hMaskBitmap = NULL ;
}
-
+#endif
if (m_bitmapMask)
{
delete m_bitmapMask;
wxMask::~wxMask()
{
+#ifndef __LP64__
if ( m_maskBitmap )
{
DisposeGWorld( (GWorldPtr)m_maskBitmap ) ;
m_maskBitmap = NULL ;
}
+#endif
}
void wxMask::Init()
void wxMask::RealizeNative()
{
+#ifndef __LP64__
if ( m_maskBitmap )
{
DisposeGWorld( (GWorldPtr)m_maskBitmap ) ;
(GWorldPtr*) &m_maskBitmap , k32ARGBPixelFormat , &rect , NULL , NULL , 0 ,
(char*) m_memBuf.GetData() , m_bytesPerRow ) ;
verify_noerr( err ) ;
+#endif
}
// Create a mask from a mono bitmap (copies the bitmap).
{
if ( m_isColorCursor )
{
- ::DisposeCCursor( (CCrsrHandle) m_hCursor ) ;
+#ifndef __LP64__
+ ::DisposeCCursor( (CCrsrHandle) m_hCursor ) ;
+#endif
}
else if ( m_disposeHandle )
{
{
m_refData = new wxCursorRefData;
+#ifndef __LP64__
int w = 16;
int h = 16;
HUnlock( (Handle)ch ) ;
M_CURSORDATA->m_hCursor = ch ;
M_CURSORDATA->m_isColorCursor = true ;
+#endif
+
}
#endif //wxUSE_IMAGE
m_refData = new wxCursorRefData;
if ( flags == wxBITMAP_TYPE_MACCURSOR_RESOURCE )
{
+#ifndef __LP64__
Str255 theName ;
wxMacStringToPascal( cursor_file , theName ) ;
M_CURSORDATA->m_releaseHandle = true ;
}
}
+#endif
}
else
{
}
else if ( m_refData && M_CURSORDATA->m_hCursor )
{
- if ( M_CURSORDATA->m_isColorCursor )
+#ifndef __LP64__
+ if ( M_CURSORDATA->m_isColorCursor )
::SetCCursor( (CCrsrHandle) M_CURSORDATA->m_hCursor ) ;
else
::SetCursor( * (CursHandle) M_CURSORDATA->m_hCursor ) ;
+#endif
}
else
{
extern TECObjectRef s_TECNativeCToUnicode ;
+#ifndef __LP64__
// TODO: update
// The textctrl implementation still needs that (needs what?) for the non-HIView implementation
{
// m_dc->MacCleanupPort(&m_ph) ;
}
+#endif
//-----------------------------------------------------------------------------
// Local functions
CGContextRestoreGState( m_cgContext ) ;
CGContextRestoreGState( m_cgContext ) ;
}
-
+#ifndef __LP64__
if ( m_qdPort )
QDEndCGContext( m_qdPort, &m_cgContext ) ;
+#endif
}
if ( m_cgContext == NULL )
{
Rect bounds ;
+ OSStatus status = noErr;
+#ifndef __LP64__
GetPortBounds( (CGrafPtr) m_qdPort , &bounds ) ;
- OSStatus status = QDBeginCGContext((CGrafPtr) m_qdPort , &m_cgContext) ;
+ status = QDBeginCGContext((CGrafPtr) m_qdPort , &m_cgContext) ;
+#endif
CGContextSaveGState( m_cgContext ) ;
wxASSERT_MSG( status == noErr , wxT("Cannot nest wxDCs on the same window") ) ;
{
wxCHECK_MSG( Ok(), false, wxT("wxDC(cg)::DoGetPixel - invalid DC") );
- wxMacPortSaver helper((CGrafPtr)m_macPort) ;
RGBColor colour;
-
+#ifndef __LP64__
+ wxMacPortSaver helper((CGrafPtr)m_macPort) ;
// NB: GetCPixel is a deprecated QD call, and a slow one at that
GetCPixel(
XLOG2DEVMAC(x) + m_macLocalOriginInPort.x - m_macLocalOrigin.x,
YLOG2DEVMAC(y) + m_macLocalOriginInPort.y - m_macLocalOrigin.y, &colour );
-
+#endif
// convert from Mac colour to wx
col->Set( colour.red >> 8, colour.green >> 8, colour.blue >> 8 );
virtual void GetSize( int *w , int *h) const ;
virtual wxSize GetPPI() const ;
private :
+#if !wxMAC_USE_CORE_GRAPHICS
GrafPtr m_macPrintFormerPort ;
+#endif
wxCoord m_maxX ;
wxCoord m_maxY ;
wxSize m_ppi ;
wxMacCarbonPrinterDC::wxMacCarbonPrinterDC( wxPrintData* data )
{
+#if !wxMAC_USE_CORE_GRAPHICS
::GetPort( & m_macPrintFormerPort ) ;
-
+#endif
m_err = noErr ;
wxMacCarbonPrintData *native = (wxMacCarbonPrintData*) data->GetNativeData() ;
m_maxY = wxCoord(rPage.bottom - rPage.top);
PMResolution res;
+#if MAC_OS_X_VERSION_MIN_REQUIRED >= MAC_OS_X_VERSION_10_5
+ PMPrinter printer;
+ PMSessionGetCurrentPrinter(native->m_macPrintSession, &printer);
+ PMPrinterGetOutputResolution( printer, native->m_macPrintSettings, &res) ;
+#else
m_err = PMGetResolution((PMPageFormat) (native->m_macPageFormat), &res);
m_ppi = wxSize(int(res.hRes), int(res.vRes));
+#endif
}
wxMacCarbonPrinterDC::~wxMacCarbonPrinterDC()
{
+#if !wxMAC_USE_CORE_GRAPHICS
// nothing to release from print data, as wxPrinterDC has all data in its wxPrintData member
::SetPort( m_macPrintFormerPort ) ;
+#endif
}
wxNativePrinterDC* wxNativePrinterDC::Create(wxPrintData* data)
wxMacCarbonPrintData *native = (wxMacCarbonPrintData*) dc->GetPrintData().GetNativeData() ;
-#if wxMAC_USE_CORE_GRAPHICS
+#if MAC_OS_X_VERSION_MIN_REQUIRED < MAC_OS_X_VERSION_10_4 && wxMAC_USE_CORE_GRAPHICS
{
CFStringRef s[1] = { kPMGraphicsContextCoreGraphics };
CFArrayRef graphicsContextsArray = CFArrayCreate(NULL, (const void**)s, 1, &kCFTypeArrayCallBacks);
CFRelease(graphicsContextsArray);
}
#endif
-
+#if MAC_OS_X_VERSION_MIN_REQUIRED >= MAC_OS_X_VERSION_10_4 && wxMAC_USE_CORE_GRAPHICS
+ m_err = PMSessionBeginCGDocument(native->m_macPrintSession,
+ native->m_macPrintSettings,
+ native->m_macPageFormat);
+#else
m_err = PMSessionBeginDocument(native->m_macPrintSession,
native->m_macPrintSettings,
native->m_macPageFormat);
+
+#endif
+
if ( m_err != noErr )
return false;
m_maxY = wxCoord(rPage.bottom - rPage.top);
PMResolution res;
+#if MAC_OS_X_VERSION_MIN_REQUIRED >= MAC_OS_X_VERSION_10_5
+ PMPrinter printer;
+ PMSessionGetCurrentPrinter(native->m_macPrintSession, &printer);
+ PMPrinterGetOutputResolution( printer, native->m_macPrintSettings, &res) ;
+#else
m_err = PMGetResolution((PMPageFormat) (native->m_macPageFormat), &res);
+#endif
m_ppi = wxSize(int(res.hRes), int(res.vRes));
return true ;
}
if ( m_err == noErr )
{
#if wxMAC_USE_CORE_GRAPHICS
+#if MAC_OS_X_VERSION_MIN_REQUIRED >= MAC_OS_X_VERSION_10_4
+ m_err = PMSessionGetCGGraphicsContext(native->m_macPrintSession,
+ &pageContext );
+
+#else
m_err = PMSessionGetGraphicsContext(native->m_macPrintSession,
kPMGraphicsContextCoreGraphics,
(void**) &pageContext );
+#endif
dc->MacSetCGContext(pageContext) ;
#else
m_err = PMSessionGetGraphicsContext(native->m_macPrintSession,
// Create a DC representing the whole screen
wxScreenDC::wxScreenDC()
{
+#ifndef __LP64__
m_macPort = CreateNewPort() ;
GrafPtr port ;
GetPort( &port ) ;
CopyRgn( (RgnHandle) m_macBoundaryClipRgn , (RgnHandle) m_macCurrentClipRgn ) ;
#endif
m_ok = true ;
+#endif
}
wxScreenDC::~wxScreenDC()
m_graphicContext = NULL ;
#endif
+#ifndef __LP64__
if ( m_macPort )
DisposePort( (CGrafPtr) m_macPort ) ;
+#endif
}
if ( pItem->IsSeparator() )
{
if ( pos == (size_t)-1 )
- MacAppendMenu(MAC_WXHMENU(m_hMenu), "\p-");
+ AppendMenuItemTextWithCFString( MAC_WXHMENU(m_hMenu),
+ CFSTR(""), kMenuItemAttrSeparator, 0,NULL);
else
- MacInsertMenuItem(MAC_WXHMENU(m_hMenu), "\p-" , pos);
+ InsertMenuItemTextWithCFString( MAC_WXHMENU(m_hMenu),
+ CFSTR(""), pos, kMenuItemAttrSeparator, 0);
}
else
{
}
SetMenuItemCommandID( MAC_WXHMENU(m_hMenu) , pos , wxIdToMacCommand ( pItem->GetId() ) ) ;
- SetMenuItemRefCon( MAC_WXHMENU(m_hMenu) , pos , (UInt32) pItem ) ;
+ SetMenuItemRefCon( MAC_WXHMENU(m_hMenu) , pos , (URefCon) pItem ) ;
pItem->UpdateItemText() ;
pItem->UpdateItemBitmap() ;
pItem->UpdateItemStatus() ;
::SetMenuBar( menubar ) ;
DisposeMenuBar( menubar ) ;
MenuHandle appleMenu = NULL ;
- char appleMenuTitle[3] = { 01 , kMenuAppleLogoFilledGlyph , 0 } ;
verify_noerr( CreateNewMenu( kwxMacAppleMenuId , 0 , &appleMenu ) ) ;
- verify_noerr( SetMenuTitle( appleMenu , (ConstStr255Param) appleMenuTitle ) );
+ verify_noerr( SetMenuTitleWithCFString( appleMenu , CFSTR( "\x14" ) ) );
// Add About/Preferences separator only on OS X
// KH/RN: Separator is always present on 10.3 but not on 10.2
// However, the change from 10.2 to 10.3 suggests it is preferred
#if TARGET_API_MAC_OSX
- MacInsertMenuItem( appleMenu , "\p-" , 0 ) ;
+ InsertMenuItemTextWithCFString( appleMenu,
+ CFSTR(""), 0, kMenuItemAttrSeparator, 0);
#endif
-
- MacInsertMenuItem( appleMenu , "\pAbout..." , 0 ) ;
+ InsertMenuItemTextWithCFString( appleMenu,
+ CFSTR("About..."), 0, kMenuItemAttrSeparator, 0);
MacInsertMenu( appleMenu , 0 ) ;
// clean-up the help menu before adding new items
if ( item->IsSeparator() )
{
if ( mh )
- MacAppendMenu(mh, "\p-" );
+ AppendMenuItemTextWithCFString( mh,
+ CFSTR(""), kMenuItemAttrSeparator, 0,NULL);
}
else
{
{
UMAAppendMenuItem(mh, wxStripMenuCodes(item->GetText()) , wxFont::GetDefaultEncoding(), entry);
SetMenuItemCommandID( mh , CountMenuItems(mh) , wxIdToMacCommand ( item->GetId() ) ) ;
- SetMenuItemRefCon( mh , CountMenuItems(mh) , (UInt32)item ) ;
+ SetMenuItemRefCon( mh , CountMenuItems(mh) , (URefCon) item ) ;
}
}
UMASetMenuItemText( GetMenuHandle( kwxMacAppleMenuId ) , 1 , wxStripMenuCodes ( aboutMenuItem->GetText() ) , wxFont::GetDefaultEncoding() );
UMAEnableMenuItem( GetMenuHandle( kwxMacAppleMenuId ) , 1 , true );
SetMenuItemCommandID( GetMenuHandle( kwxMacAppleMenuId ) , 1 , kHICommandAbout ) ;
- SetMenuItemRefCon(GetMenuHandle( kwxMacAppleMenuId ) , 1 , (UInt32)aboutMenuItem ) ;
+ SetMenuItemRefCon(GetMenuHandle( kwxMacAppleMenuId ) , 1 , (URefCon)aboutMenuItem ) ;
UMASetMenuItemShortcut( GetMenuHandle( kwxMacAppleMenuId ) , 1 , entry ) ;
}
}
{
if (m_metafile)
{
+#ifndef __LP64__
KillPicture( (PicHandle)m_metafile );
m_metafile = NULL;
#if wxMAC_USE_CORE_GRAPHICS
QDPictRelease( m_qdPictRef );
m_qdPictRef = NULL;
+#endif
#endif
}
}
membuf, data, sz, wxMacMemoryBufferReleaseProc );
M_METAFILEDATA->m_qdPictRef = NULL;
+#ifndef __LP64__
if (provider != NULL)
{
M_METAFILEDATA->m_qdPictRef = QDPictCreateWithProvider( provider );
CGDataProviderRelease( provider );
}
#endif
+#endif
}
bool wxMetaFile::Play(wxDC *dc)
{
#if wxMAC_USE_CORE_GRAPHICS
+#ifndef __LP64__
QDPictRef cgPictRef = M_METAFILEDATA->m_qdPictRef;
CGContextRef cg = ((wxMacCGContext*)(dc->GetGraphicContext()))->GetNativeContext();
CGRect bounds = QDPictGetBounds( cgPictRef );
CGContextScaleCTM( cg, 1, -1 );
QDPictDrawToCGContext( cg, bounds, cgPictRef );
CGContextRestoreGState( cg );
+#endif
#else
PicHandle pict = (PicHandle)GetHMETAFILE();
wxMacPortSetter helper( dc );
if (Ok())
{
- PicHandle pict = (PicHandle)GetHMETAFILE();
+#ifndef __LP64__
+ PicHandle pict = (PicHandle)GetHMETAFILE();
Rect r;
wxMacGetPictureBounds( pict, &r );
dataSize.x = r.right - r.left;
dataSize.y = r.bottom - r.top;
+#endif
}
return dataSize;
wxMetaFile *wxMetaFileDC::Close()
{
+#ifndef __LP64__
ClosePicture();
-
+#endif
return m_metaFile;
}
#include <CoreServices.h>
#endif
-
+#ifndef __LP64__
// START CODE SAMPLE FROM TECHNOTE 1002 (http://developer.apple.com/technotes/tn/tn1002.html)
// IsRemoteVolume can be used to find out if the
return result;
}
-
+#endif
//
// On the mac there are two ways to open a file - one is through apple events and the
// finder, another is through mime types.
#else //carbon/classic implementation
+
wxString wxFileTypeImpl::GetCommand(const wxString& verb) const
{
wxASSERT_MSG( m_manager != NULL , wxT("Bad wxFileType") );
infoRec.processInfoLength = sizeof(ProcessInfoRec);
infoRec.processName = NULL;
+#ifndef __LP64__
infoRec.processAppSpec = NULL;
+#endif
if ( pPSN == NULL )
{
if (status == noErr)
{
Str255 psCreatorName;
+#ifndef __LP64__
FSSpec dummySpec;
status = FindApplication(creator, false, psCreatorName, &dummySpec);
+#else
+ FSRef fsref;
+ status = LSFindApplicationForInfo( creator, NULL, NULL, &fsref ,NULL);
+ HFSUniStr255 name;
+ status = FSGetCatalogInfo(&fsref, kFSCatInfoNone, NULL, &name, NULL, NULL);
+ CFStringRef str = FSCreateStringFromHFSUniStr( 0 , &name );
+ CFStringGetPascalString(str, psCreatorName, 256, CFStringGetSystemEncoding());
+ CFRelease( str );
+#endif
if (status == noErr)
{
<1> 1/25/02 JL MoreFilesX 1.0
*/
+#ifndef __LP64__
+
#if defined(__MACH__)
#include <Carbon/Carbon.h>
#include <string.h>
/*****************************************************************************/
+#ifndef __LP64__
+
OSErr
FSGetVolParms(
FSVolumeRefNum volRefNum,
return ( result );
}
+#endif
+
/*****************************************************************************/
OSErr
/*****************************************************************************/
+#ifndef __LP64__
+
OSErr
FSLockRangeMoreFilesX(
SInt16 refNum,
/*****************************************************************************/
OSErr
-FSVolumeMount(
+FSVolumeMountX(
const void *volMountInfo,
FSVolumeRefNum *volRefNum)
{
return ( result );
}
+#endif
+
/*****************************************************************************/
#pragma mark ----- Utility Routines -----
}
/*****************************************************************************/
+
+#endif
#pragma mark FSVolumeMount
OSErr
-FSVolumeMount(
+FSVolumeMountX(
const void *volMountInfo,
FSVolumeRefNum *volRefNum);
m_peer->SetTabEnabled( ii + 1, true ) ;
}
+#if wxMAC_USE_CORE_GRAPHICS
+ Refresh();
+#else
Rect bounds;
m_peer->GetRectInWindowCoords( &bounds ) ;
InvalWindowRect( (WindowRef)MacGetTopLevelWindowRef(), &bounds );
+#endif
}
wxRect wxNotebook::GetPageRect() const
if ( !m_printerName.empty() )
PMSessionSetCurrentPrinter( (PMPrintSession) m_macPrintSession , wxMacCFStringHolder( m_printerName , wxFont::GetDefaultEncoding() ) ) ;
#endif
+#ifndef __LP64__
PMColorMode color ;
PMGetColorMode( (PMPrintSettings) m_macPrintSettings, &color ) ;
if ( data.GetColour() )
}
else
PMSetColorMode( (PMPrintSettings) m_macPrintSettings, kPMBlackAndWhite ) ;
+#endif
// PMDuplexMode not yet accessible via API
// PMQualityMode not yet accessible via API
// todo paperSize
+
PMResolution res;
PMPrinter printer;
- PMTag tag = kPMMaxSquareResolution;
PMSessionGetCurrentPrinter(m_macPrintSession, &printer);
+#if MAC_OS_X_VERSION_MIN_REQUIRED >= MAC_OS_X_VERSION_10_5
+ PMPrinterGetOutputResolution( printer,
+ (PMPrintSettings) m_macPrintSettings, &res) ;
+ // TODO transfer ? into page format ?
+#else
+ PMTag tag = kPMMaxSquareResolution;
PMPrinterGetPrinterResolution(printer, tag, &res);
PMSetResolution((PMPageFormat) m_macPageFormat, &res);
+#endif
// after setting the new resolution the format has to be updated, otherwise the page rect remains
// at the 'old' scaling
PMSessionValidatePageFormat((PMPrintSession) m_macPrintSession,
}
#endif
+#ifndef __LP64__
PMColorMode color ;
err = PMGetColorMode( m_macPrintSettings, &color ) ;
if ( err == noErr )
data.SetColour( !(color == kPMBlackAndWhite) ) ;
-
+#endif
// PMDuplexMode not yet accessible via API
// PMQualityMode not yet accessible via API
// todo paperSize
PMResolution res;
wxMacCarbonPrintData* nativeData = (wxMacCarbonPrintData*)
(m_printDialogData.GetPrintData().GetNativeData());
+#if MAC_OS_X_VERSION_MIN_REQUIRED >= MAC_OS_X_VERSION_10_5
+ PMPrinter printer;
+ PMSessionGetCurrentPrinter(nativeData->m_macPrintSession, &printer);
+ PMPrinterGetOutputResolution( printer, nativeData->m_macPrintSettings, &res) ;
+#else
PMGetResolution((PMPageFormat) (nativeData->m_macPageFormat), &res);
+#endif
printout->SetPPIPrinter(int(res.hRes), int(res.vRes));
// Set printout parameters
if ( UMAGetSystemVersion() >= 0x1000 )
#endif
{
+#if !wxMAC_USE_CORE_GRAPHICS
GrafPtr thePort ;
GetPort( &thePort ) ;
+#endif
wxSafeYield(win,true);
+#if !wxMAC_USE_CORE_GRAPHICS
SetPort( thePort ) ;
+#endif
}
dc->StartPage();
keepGoing = printout->OnPrintPage(pn);
wxMenuItem *item = NULL;
if (id != 0) // get the wxMenuItem reference from the MenuRef
- GetMenuItemRefCon( menuRef, menuItemIndex, (UInt32*) &item );
+ GetMenuItemRefCon( menuRef, menuItemIndex, (URefCon*) &item );
if (item)
{
forceMLTE = true ;
}
#endif
+#if MAC_OS_X_VERSION_MAX_ALLOWED >= MAC_OS_X_VERSION_10_5
+ forceMLTE = false;
+#endif
#ifdef __WXMAC_OSX__
#if MAC_OS_X_VERSION_MAX_ALLOWED > MAC_OS_X_VERSION_10_2
if ( !m_peer )
{
+#if MAC_OS_X_VERSION_MAX_ALLOWED < MAC_OS_X_VERSION_10_5
if ( !(m_windowStyle & wxTE_MULTILINE) && !forceMLTE )
+#endif
+ {
m_peer = new wxMacUnicodeTextControl( this , str , pos , size , style ) ;
+ }
}
#endif
+ // the horizontal single line scrolling bug that made us keep
+#if MAC_OS_X_VERSION_MAX_ALLOWED < MAC_OS_X_VERSION_10_5
if ( !m_peer )
m_peer = new wxMacMLTEClassicControl( this , str , pos , size , style ) ;
+#endif
MacPostControlCreate(pos, size) ;
wxMacConvertNewlines10To13( &st );
{
- wxMacWindowClipper c( m_peer );
+#ifndef __LP64__
+ wxMacWindowClipper c( m_peer ) ;
+#endif
{
wxMacEditHelper help( m_txn );
#else
typeAttr[attrCount].tag = kTXNATSUIStyle ;
typeAttr[attrCount].size = kTXNATSUIStyleSize ;
- typeAttr[attrCount].data.dataValue = (UInt32)font.MacGetATSUStyle() ;
+ typeAttr[attrCount].data.dataPtr = font.MacGetATSUStyle() ;
attrCount++ ;
#endif
}
wxMacConvertNewlines10To13( &value ) ;
wxMacEditHelper help( m_txn ) ;
+#ifndef __LP64__
wxMacWindowClipper c( m_peer ) ;
+#endif
TXNSetSelection( m_txn, from, to ) ;
TXNClear( m_txn ) ;
void wxMacMLTEControl::Remove( long from , long to )
{
+#ifndef __LP64__
wxMacWindowClipper c( m_peer ) ;
+#endif
wxMacEditHelper help( m_txn ) ;
TXNSetSelection( m_txn , from , to ) ;
TXNClear( m_txn ) ;
void wxMacMLTEControl::SetSelection( long from , long to )
{
+#ifndef __LP64__
wxMacWindowClipper c( m_peer ) ;
+#endif
// change the selection
if ((from == -1) && (to == -1))
long start , end , dummy ;
GetSelection( &start , &dummy ) ;
+#ifndef __LP64__
wxMacWindowClipper c( m_peer ) ;
+#endif
{
wxMacEditHelper helper( m_txn ) ;
void wxMacMLTEControl::Clear()
{
+#ifndef __LP64__
wxMacWindowClipper c( m_peer ) ;
+#endif
wxMacEditHelper st( m_txn ) ;
TXNSetSelection( m_txn , kTXNStartOffset , kTXNEndOffset ) ;
TXNClear( m_txn ) ;
void wxMacMLTEControl::ShowPosition( long pos )
{
-#if TARGET_RT_MAC_MACHO && defined(AVAILABLE_MAC_OS_X_VERSION_10_2_AND_LATER)
- {
- Point current, desired ;
- TXNOffset selstart, selend;
+ Point current, desired ;
+ TXNOffset selstart, selend;
- TXNGetSelection( m_txn, &selstart, &selend );
- TXNOffsetToPoint( m_txn, selstart, ¤t );
- TXNOffsetToPoint( m_txn, pos, &desired );
+ TXNGetSelection( m_txn, &selstart, &selend );
+ TXNOffsetToPoint( m_txn, selstart, ¤t );
+ TXNOffsetToPoint( m_txn, pos, &desired );
- // TODO: use HIPoints for 10.3 and above
- if ( (UInt32)TXNScroll != (UInt32)kUnresolvedCFragSymbolAddress )
- {
- OSErr theErr = noErr;
- SInt32 dv = desired.v - current.v;
- SInt32 dh = desired.h - current.h;
- TXNShowSelection( m_txn, kTXNShowStart ) ; // NB: should this be kTXNShowStart or kTXNShowEnd ??
- theErr = TXNScroll( m_txn, kTXNScrollUnitsInPixels, kTXNScrollUnitsInPixels, &dv, &dh );
-
- // there will be an error returned for classic MLTE implementation when the control is
- // invisible, but HITextView works correctly, so we don't assert that one
- // wxASSERT_MSG( theErr == noErr, _T("TXNScroll returned an error!") );
- }
- }
-#endif
+ // TODO: use HIPoints for 10.3 and above
+
+ OSErr theErr = noErr;
+ long dv = desired.v - current.v;
+ long dh = desired.h - current.h;
+ TXNShowSelection( m_txn, kTXNShowStart ) ; // NB: should this be kTXNShowStart or kTXNShowEnd ??
+ theErr = TXNScroll( m_txn, kTXNScrollUnitsInPixels, kTXNScrollUnitsInPixels, &dv, &dh );
+
+ // there will be an error returned for classic MLTE implementation when the control is
+ // invisible, but HITextView works correctly, so we don't assert that one
+ // wxASSERT_MSG( theErr == noErr, _T("TXNScroll returned an error!") );
}
void wxMacMLTEControl::SetTXNData( const wxString& st, TXNOffset start, TXNOffset end )
return theLength ;
}
+#if MAC_OS_X_VERSION_MAX_ALLOWED < MAC_OS_X_VERSION_10_5
+
// ----------------------------------------------------------------------------
// MLTE control implementation (classic part)
// ----------------------------------------------------------------------------
return err;
}
+#endif
// ----------------------------------------------------------------------------
// MLTE control implementation (OSX part)
}
AdjustCreationAttributes( *wxWHITE , true ) ;
-
+#ifndef __LP64__
wxMacWindowClipper c( m_peer ) ;
+#endif
SetTXNData( st , kTXNStartOffset, kTXNEndOffset ) ;
TXNSetSelection( m_txn, 0, 0 );
UInt32 when = EventTimeToTicks( GetEventTime( event ) ) ;
UniChar* charBuf = NULL;
- UInt32 dataSize = 0 ;
+ ByteCount dataSize = 0 ;
int numChars = 0 ;
UniChar buf[2] ;
if ( GetEventParameter( event, kEventParamTextInputSendText, typeUnicodeText, NULL, 0 , &dataSize, NULL ) == noErr )
{
wxASSERT_MSG( m_peer != NULL && m_peer->Ok() , wxT("No valid mac control") ) ;
- m_peer->SetReference( (long)this ) ;
+ m_peer->SetReference( (URefCon) this ) ;
GetParent()->AddChild( this );
MacInstallEventHandler( (WXWidget) m_peer->GetControlRef() );
if (y)
localwhere.v = *y ;
- QDGlobalToLocalPoint( GetWindowPort( window ) , &localwhere ) ;
+ wxMacGlobalToLocal( window , &localwhere ) ;
if (x)
*x = localwhere.h ;
if (y)
localwhere.v = *y ;
- QDLocalToGlobalPoint( GetWindowPort( window ) , &localwhere ) ;
+ wxMacLocalToGlobal( window, &localwhere ) ;
if (x)
*x = localwhere.h ;
{
wxTopLevelWindowMac *tlw = MacGetTopLevelWindow() ;
WindowRef window = (WindowRef) ( tlw ? tlw->MacGetWindowRef() : 0 ) ;
+
+ ControlPartCode part ;
+ ControlRef control ;
+ Point pt ;
+ #if MAC_OS_X_VERSION_MIN_REQUIRED >= MAC_OS_X_VERSION_10_5
+ HIPoint hiPoint ;
+ HIGetMousePosition(kHICoordSpaceWindow, window, &hiPoint);
+ pt.h = hiPoint.x;
+ pt.v = hiPoint.y;
+ #else
CGrafPtr savePort ;
Boolean swapped = QDSwapPort( GetWindowPort( window ) , &savePort ) ;
// TODO: If we ever get a GetCurrentEvent... replacement
// for the mouse position, use it...
- Point pt ;
- ControlPartCode part ;
- ControlRef control ;
GetMouse( &pt ) ;
+#endif
control = wxMacFindControlUnderMouse( tlw , pt , window , &part ) ;
if ( control )
mouseWin = wxFindControlFromMacControl( control ) ;
- if ( swapped )
+#if MAC_OS_X_VERSION_MIN_REQUIRED < MAC_OS_X_VERSION_10_5
+ if ( swapped )
QDSwapPort( savePort , NULL ) ;
+#endif
}
if ( mouseWin == this && !wxIsBusy() )
m_peer->GetRect( &rect ) ;
InsetRect( &rect, -1 , -1 ) ;
-#if wxMAC_USE_CORE_GRAPHICS && MAC_OS_X_VERSION_MAX_ALLOWED >= MAC_OS_X_VERSION_10_3
- if ( UMAGetSystemVersion() >= 0x1030 )
+#if wxMAC_USE_CORE_GRAPHICS
{
CGRect cgrect = CGRectMake( rect.left , rect.top , rect.right - rect.left ,
rect.bottom - rect.top ) ;
HIThemeDrawGrowBox( &cgpoint , &info , cgContext , kHIThemeOrientationNormal ) ;
}
}
- else
-#endif
+ #else
{
wxTopLevelWindowMac* top = MacGetTopLevelWindow();
if ( top )
// DrawThemeStandaloneNoGrowBox
}
}
+#endif
}
void wxWindowMac::RemoveChild( wxWindowBase *child )
int width , height ;
GetClientSize( &width , &height ) ;
-#if TARGET_API_MAC_OSX
- if ( true )
{
// note there currently is a bug in OSX which makes inefficient refreshes in case an entire control
// area is scrolled, this does not occur if width and height are 2 pixels less,
#else
// this would be the preferred version for fast drawing controls
-#if MAC_OS_X_VERSION_MAX_ALLOWED >= MAC_OS_X_VERSION_10_3
- if ( UMAGetSystemVersion() >= 0x1030 )
- HIViewRender(m_peer->GetControlRef()) ;
- else
-#endif
- Update() ;
+ HIViewRender(m_peer->GetControlRef()) ;
#endif
}
- else
-#endif
- {
- wxPoint pos;
- pos.x =
- pos.y = 0;
-
- Rect scrollrect;
- RgnHandle updateRgn = NewRgn() ;
-
- {
- wxClientDC dc(this) ;
- wxMacPortSetter helper(&dc) ;
-
- m_peer->GetRectInWindowCoords( &scrollrect ) ;
- //scrollrect.top += MacGetTopBorderSize() ;
- //scrollrect.left += MacGetLeftBorderSize() ;
- scrollrect.bottom = scrollrect.top + height ;
- scrollrect.right = scrollrect.left + width ;
-
- if ( rect )
- {
- Rect r = { dc.YLOG2DEVMAC(rect->y) , dc.XLOG2DEVMAC(rect->x) , dc.YLOG2DEVMAC(rect->y + rect->height) ,
- dc.XLOG2DEVMAC(rect->x + rect->width) } ;
- SectRect( &scrollrect , &r , &scrollrect ) ;
- }
-
- ScrollRect( &scrollrect , dx , dy , updateRgn ) ;
-
- // now scroll the former update region as well and add the new update region
- WindowRef rootWindow = (WindowRef) MacGetTopLevelWindowRef() ;
- RgnHandle formerUpdateRgn = NewRgn() ;
- RgnHandle scrollRgn = NewRgn() ;
- RectRgn( scrollRgn , &scrollrect ) ;
- GetWindowUpdateRgn( rootWindow , formerUpdateRgn ) ;
- Point pt = {0, 0} ;
- LocalToGlobal( &pt ) ;
- OffsetRgn( formerUpdateRgn , -pt.h , -pt.v ) ;
- SectRgn( formerUpdateRgn , scrollRgn , formerUpdateRgn ) ;
-
- if ( !EmptyRgn( formerUpdateRgn ) )
- {
- MacOffsetRgn( formerUpdateRgn , dx , dy ) ;
- SectRgn( formerUpdateRgn , scrollRgn , formerUpdateRgn ) ;
- InvalWindowRgn( rootWindow, formerUpdateRgn ) ;
- }
-
- InvalWindowRgn(rootWindow, updateRgn ) ;
- DisposeRgn( updateRgn ) ;
- DisposeRgn( formerUpdateRgn ) ;
- DisposeRgn( scrollRgn ) ;
- }
-
- Update() ;
- }
wxWindowMac *child;
int x, y, w, h;
eventNc.SetEventObject( child );
if ( !child->GetEventHandler()->ProcessEvent( eventNc ) )
{
-#if wxMAC_USE_CORE_GRAPHICS && MAC_OS_X_VERSION_MAX_ALLOWED >= MAC_OS_X_VERSION_10_3
- if ( UMAGetSystemVersion() >= 0x1030 )
- {
- child->MacPaintBorders(0, 0) ;
- }
- else
-#endif
+#if wxMAC_USE_CORE_GRAPHICS
+ child->MacPaintBorders(0, 0) ;
+#else
{
wxWindowDC dc(this) ;
dc.SetClippingRegion(wxRegion(updatergn));
wxMacPortSetter helper(&dc) ;
child->MacPaintBorders(0, 0) ;
}
+#endif
}
}
}