git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20974
c3d73ce0-8a6f-49c7-b76d-
6d57e0e08775
m_startRadioGroup = -1;
// create the menu
m_startRadioGroup = -1;
// create the menu
- m_macMenuId = s_macNextMenuId++;
+ m_macMenuId = s_macNextMenuId++;
m_hMenu = UMANewMenu(m_macMenuId, m_title);
if ( !m_hMenu )
m_hMenu = UMANewMenu(m_macMenuId, m_title);
if ( !m_hMenu )
else
MacInsertMenuItem(MAC_WXHMENU(m_hMenu), "\p-" , pos);
}
else
MacInsertMenuItem(MAC_WXHMENU(m_hMenu), "\p-" , pos);
}
{
wxMenu *pSubMenu = pItem->GetSubMenu() ;
if ( pSubMenu != NULL )
{
wxASSERT_MSG( pSubMenu->m_hMenu != NULL , wxT("invalid submenu added"));
pSubMenu->m_menuParent = this ;
{
wxMenu *pSubMenu = pItem->GetSubMenu() ;
if ( pSubMenu != NULL )
{
wxASSERT_MSG( pSubMenu->m_hMenu != NULL , wxT("invalid submenu added"));
pSubMenu->m_menuParent = this ;
-
- if (wxMenuBar::MacGetInstalledMenuBar() == m_menuBar)
+
+ if (wxMenuBar::MacGetInstalledMenuBar() == m_menuBar)
{
pSubMenu->MacBeforeDisplay( true ) ;
}
{
pSubMenu->MacBeforeDisplay( true ) ;
}
if ( pos == (size_t)-1 )
UMAAppendSubMenuItem(MAC_WXHMENU(m_hMenu), pItem->GetText(), pSubMenu->m_macMenuId);
else
if ( pos == (size_t)-1 )
UMAAppendSubMenuItem(MAC_WXHMENU(m_hMenu), pItem->GetText(), pSubMenu->m_macMenuId);
else
UMAInsertMenuItem(MAC_WXHMENU(m_hMenu), wxT("a") , pos);
}
UMAInsertMenuItem(MAC_WXHMENU(m_hMenu), wxT("a") , pos);
}
- SetMenuItemCommandID( MAC_WXHMENU(m_hMenu) , pos , pItem->GetId() ) ;
+ SetMenuItemCommandID( MAC_WXHMENU(m_hMenu) , pos+1 , pItem->GetId() ) ;
pItem->UpdateItemText() ;
pItem->UpdateItemBitmap() ;
pItem->UpdateItemStatus() ;
pItem->UpdateItemText() ;
pItem->UpdateItemBitmap() ;
pItem->UpdateItemStatus() ;
- if ( pItem->GetId() == idMenuTitle )
+ if ( pItem->GetId() == idMenuTitle )
{
UMAEnableMenuItem(MAC_WXHMENU(m_hMenu) , pos , false ) ;
}
{
UMAEnableMenuItem(MAC_WXHMENU(m_hMenu) , pos , false ) ;
}
-// helper functions returning the mac menu position for a certain item, note that this is
+// helper functions returning the mac menu position for a certain item, note that this is
// mac-wise 1 - based, i.e. the first item has index 1 whereas on MSWin it has pos 0
// mac-wise 1 - based, i.e. the first item has index 1 whereas on MSWin it has pos 0
-int wxMenu::MacGetIndexFromId( int id )
+int wxMenu::MacGetIndexFromId( int id )
{
size_t pos;
wxMenuItemList::Node *node = GetMenuItems().GetFirst();
{
size_t pos;
wxMenuItemList::Node *node = GetMenuItems().GetFirst();
node = node->GetNext();
}
node = node->GetNext();
}
-int wxMenu::MacGetIndexFromItem( wxMenuItem *pItem )
+int wxMenu::MacGetIndexFromItem( wxMenuItem *pItem )
{
size_t pos;
wxMenuItemList::Node *node = GetMenuItems().GetFirst();
{
size_t pos;
wxMenuItemList::Node *node = GetMenuItems().GetFirst();
-void wxMenu::MacEnableMenu( bool bDoEnable )
+void wxMenu::MacEnableMenu( bool bDoEnable )
{
UMAEnableMenuItem(MAC_WXHMENU(m_hMenu) , 0 , bDoEnable ) ;
{
UMAEnableMenuItem(MAC_WXHMENU(m_hMenu) , 0 , bDoEnable ) ;
::DrawMenuBar() ;
}
// MacOS needs to know about submenus somewhere within this menu
// before it can be displayed , also hide special menu items like preferences
// that are handled by the OS
::DrawMenuBar() ;
}
// MacOS needs to know about submenus somewhere within this menu
// before it can be displayed , also hide special menu items like preferences
// that are handled by the OS
-void wxMenu::MacBeforeDisplay( bool isSubMenu )
+void wxMenu::MacBeforeDisplay( bool isSubMenu )
{
wxMenuItem* previousItem = NULL ;
size_t pos ;
wxMenuItemList::Node *node;
wxMenuItem *item;
{
wxMenuItem* previousItem = NULL ;
size_t pos ;
wxMenuItemList::Node *node;
wxMenuItem *item;
- for (pos = 0, node = GetMenuItems().GetFirst(); node; node = node->GetNext(), pos++)
+ for (pos = 0, node = GetMenuItems().GetFirst(); node; node = node->GetNext(), pos++)
{
item = (wxMenuItem *)node->GetData();
wxMenu* subMenu = item->GetSubMenu() ;
{
item = (wxMenuItem *)node->GetData();
wxMenu* subMenu = item->GetSubMenu() ;
{
subMenu->MacBeforeDisplay( true ) ;
}
{
subMenu->MacBeforeDisplay( true ) ;
}
}
previousItem = item ;
}
}
previousItem = item ;
}
}
// undo all changes from the MacBeforeDisplay call
}
// undo all changes from the MacBeforeDisplay call
-void wxMenu::MacAfterDisplay( bool isSubMenu )
+void wxMenu::MacAfterDisplay( bool isSubMenu )
{
if ( isSubMenu )
::DeleteMenu(MacGetMenuId());
{
if ( isSubMenu )
::DeleteMenu(MacGetMenuId());
int pos ;
wxMenuItemList::Node *node;
wxMenuItem *item;
int pos ;
wxMenuItemList::Node *node;
wxMenuItem *item;
- for (pos = 0, node = GetMenuItems().GetFirst(); node; node = node->GetNext(), pos++)
+ for (pos = 0, node = GetMenuItems().GetFirst(); node; node = node->GetNext(), pos++)
{
item = (wxMenuItem *)node->GetData();
wxMenu* subMenu = item->GetSubMenu() ;
{
item = (wxMenuItem *)node->GetData();
wxMenu* subMenu = item->GetSubMenu() ;
{
subMenu->MacAfterDisplay( true ) ;
}
{
subMenu->MacAfterDisplay( true ) ;
}
Mac Implementation note :
Mac Implementation note :
active menubar from a frame, we currently don't take into account mdi-frames
which would ask for menu-merging
active menubar from a frame, we currently don't take into account mdi-frames
which would ask for menu-merging
-Secondly there is no mac api for changing a menubar that is not the current
+Secondly there is no mac api for changing a menubar that is not the current
menubar, so we have to wait for preparing the actual menubar until the
wxMenubar is to be used
menubar, so we have to wait for preparing the actual menubar until the
wxMenubar is to be used
-We can in subsequent versions use MacInstallMenuBar to provide some sort of
+We can in subsequent versions use MacInstallMenuBar to provide some sort of
auto-merge for MDI in case this will be necessary
*/
auto-merge for MDI in case this will be necessary
*/
-void wxMenuBar::MacInstallMenuBar()
+void wxMenuBar::MacInstallMenuBar()
{
if ( s_macInstalledMenuBar == this )
return ;
{
if ( s_macInstalledMenuBar == this )
return ;
wxStAppResource resload ;
wxStAppResource resload ;
Handle menubar = ::GetNewMBar( kwxMacMenuBarResource ) ;
wxString message ;
wxCHECK_RET( menubar != NULL, wxT("can't read MBAR resource") );
Handle menubar = ::GetNewMBar( kwxMacMenuBarResource ) ;
wxString message ;
wxCHECK_RET( menubar != NULL, wxT("can't read MBAR resource") );
::AppendResMenu(menu, 'DRVR');
}
#endif
::AppendResMenu(menu, 'DRVR');
}
#endif
// clean-up the help menu before adding new items
MenuHandle mh = NULL ;
if ( UMAGetHelpMenu( &mh , &firstUserHelpMenuItem) == noErr )
// clean-up the help menu before adding new items
MenuHandle mh = NULL ;
if ( UMAGetHelpMenu( &mh , &firstUserHelpMenuItem) == noErr )
-
- for (pos = 0 , node = menu->GetMenuItems().GetFirst(); node; node = node->GetNext(), pos++)
+
+ for (pos = 0 , node = menu->GetMenuItems().GetFirst(); node; node = node->GetNext(), pos++)
{
item = (wxMenuItem *)node->GetData();
subMenu = item->GetSubMenu() ;
{
item = (wxMenuItem *)node->GetData();
subMenu = item->GetSubMenu() ;
{
// we don't support hierarchical menus in the help menu yet
}
{
// we don't support hierarchical menus in the help menu yet
}
{
if ( item->IsSeparator() )
{
{
if ( item->IsSeparator() )
{
wxAcceleratorEntry* entry = wxGetAccelFromString( item->GetText() ) ;
if ( item->GetId() == wxApp::s_macAboutMenuItemId )
wxAcceleratorEntry* entry = wxGetAccelFromString( item->GetText() ) ;
if ( item->GetId() == wxApp::s_macAboutMenuItemId )
UMASetMenuItemText( GetMenuHandle( kwxMacAppleMenuId ) , 1 , item->GetText() );
UMAEnableMenuItem( GetMenuHandle( kwxMacAppleMenuId ) , 1 , true );
SetMenuItemCommandID( GetMenuHandle( kwxMacAppleMenuId ) , 1 , item->GetId() ) ;
UMASetMenuItemText( GetMenuHandle( kwxMacAppleMenuId ) , 1 , item->GetText() );
UMAEnableMenuItem( GetMenuHandle( kwxMacAppleMenuId ) , 1 , true );
SetMenuItemCommandID( GetMenuHandle( kwxMacAppleMenuId ) , 1 , item->GetId() ) ;
SetMenuItemCommandID( mh , CountMenuItems(mh) , item->GetId() ) ;
}
}
SetMenuItemCommandID( mh , CountMenuItems(mh) , item->GetId() ) ;
}
}
{
wxString title = wxStripMenuCodes(m_titles[i]);
if ( menuTitle == title )
{
wxString title = wxStripMenuCodes(m_titles[i]);
if ( menuTitle == title )
return FALSE;
m_titles.Add(title);
return FALSE;
m_titles.Add(title);
UMASetMenuTitle( MAC_WXHMENU(menu->GetHMenu()) , title ) ;
if ( IsAttached() )
UMASetMenuTitle( MAC_WXHMENU(menu->GetHMenu()) , title ) ;
if ( IsAttached() )
// since we have decided that we only support 8.6 upwards we are
// checking for these minimum requirements in the startup code of
// the application so all wxWindows code can safely assume that appearance 1.1
// since we have decided that we only support 8.6 upwards we are
// checking for these minimum requirements in the startup code of
// the application so all wxWindows code can safely assume that appearance 1.1
-// windows manager, control manager, navigation services etc. are
+// windows manager, control manager, navigation services etc. are
// present
static bool sUMAHasAppearance = false ;
// present
static bool sUMAHasAppearance = false ;
if ( Gestalt(gestaltSystemVersion, &sUMASystemVersion) != noErr)
sUMASystemVersion = 0x0000 ;
if ( Gestalt(gestaltSystemVersion, &sUMASystemVersion) != noErr)
sUMASystemVersion = 0x0000 ;
long theAppearance ;
if ( Gestalt( gestaltAppearanceAttr, &theAppearance ) == noErr )
{
long theAppearance ;
if ( Gestalt( gestaltAppearanceAttr, &theAppearance ) == noErr )
{
{
sUMAHasWindowManager = sUMAWindowManagerAttr & gestaltWindowMgrPresent ;
}
{
sUMAHasWindowManager = sUMAWindowManagerAttr & gestaltWindowMgrPresent ;
}
#if TARGET_CARBON
// Call currently implicitely done : InitFloatingWindows() ;
#else
#if TARGET_CARBON
// Call currently implicitely done : InitFloatingWindows() ;
#else
sUMAHasAquaLayout = true ;
if ( TXNInitTextension != (void*) kUnresolvedCFragSymbolAddress )
sUMAHasAquaLayout = true ;
if ( TXNInitTextension != (void*) kUnresolvedCFragSymbolAddress )
FontFamilyID fontId ;
Str255 fontName ;
SInt16 fontSize ;
FontFamilyID fontId ;
Str255 fontName ;
SInt16 fontSize ;
{ fontId , (fontSize << 16) ,kTXNDefaultFontStyle, kTXNSystemDefaultEncoding } ,
} ;
int noOfFontDescriptions = sizeof( fontDescriptions ) / sizeof(TXNMacOSPreferredFontDescription) ;
{ fontId , (fontSize << 16) ,kTXNDefaultFontStyle, kTXNSystemDefaultEncoding } ,
} ;
int noOfFontDescriptions = sizeof( fontDescriptions ) / sizeof(TXNMacOSPreferredFontDescription) ;
--noOfFontDescriptions ;
#endif
// kTXNAlwaysUseQuickDrawTextMask might be desirable because of speed increases but it crashes the app under OS X upon key stroke
--noOfFontDescriptions ;
#endif
// kTXNAlwaysUseQuickDrawTextMask might be desirable because of speed increases but it crashes the app under OS X upon key stroke
-long UMAGetProcessMode()
+long UMAGetProcessMode()
ProcessInfoRec processinfo;
ProcessSerialNumber procno ;
ProcessInfoRec processinfo;
ProcessSerialNumber procno ;
procno.highLongOfPSN = NULL ;
procno.lowLongOfPSN = kCurrentProcess ;
processinfo.processInfoLength = sizeof(ProcessInfoRec);
procno.highLongOfPSN = NULL ;
procno.lowLongOfPSN = kCurrentProcess ;
processinfo.processInfoLength = sizeof(ProcessInfoRec);
return processinfo.processMode ;
}
return processinfo.processMode ;
}
-bool UMAGetProcessModeDoesActivateOnFGSwitch()
+bool UMAGetProcessModeDoesActivateOnFGSwitch()
{
return UMAGetProcessMode() & modeDoesActivateOnFGSwitch ;
}
{
return UMAGetProcessMode() & modeDoesActivateOnFGSwitch ;
}
-void UMASetMenuItemText( MenuRef menu, MenuItemIndex item, const wxString& title )
+void UMASetMenuItemText( MenuRef menu, MenuItemIndex item, const wxString& title )
{
wxString str = wxStripMenuCodes( title ) ;
#if TARGET_CARBON
{
wxString str = wxStripMenuCodes( title ) ;
#if TARGET_CARBON
return MenuEvent( inEvent ) ;
}
return MenuEvent( inEvent ) ;
}
-void UMAEnableMenuItem( MenuRef inMenu , MenuItemIndex inItem , bool enable)
+void UMAEnableMenuItem( MenuRef inMenu , MenuItemIndex inItem , bool enable)
{
if ( enable )
EnableMenuItem( inMenu , inItem ) ;
{
if ( enable )
EnableMenuItem( inMenu , inItem ) ;
DisableMenuItem( inMenu , inItem ) ;
}
DisableMenuItem( inMenu , inItem ) ;
}
-void UMAAppendSubMenuItem( MenuRef menu , const wxString& title , SInt16 id )
+void UMAAppendSubMenuItem( MenuRef menu , const wxString& title , SInt16 id )
{
MacAppendMenu(menu, "\pA");
UMASetMenuItemText(menu, (SInt16) ::CountMenuItems(menu), title );
SetMenuItemHierarchicalID( menu , CountMenuItems( menu ) , id ) ;
}
{
MacAppendMenu(menu, "\pA");
UMASetMenuItemText(menu, (SInt16) ::CountMenuItems(menu), title );
SetMenuItemHierarchicalID( menu , CountMenuItems( menu ) , id ) ;
}
-void UMAInsertSubMenuItem( MenuRef menu , const wxString& title , MenuItemIndex item , SInt16 id )
+void UMAInsertSubMenuItem( MenuRef menu , const wxString& title , MenuItemIndex item , SInt16 id )
{
MacInsertMenuItem(menu, "\pA" , item);
UMASetMenuItemText(menu, item , title );
{
MacInsertMenuItem(menu, "\pA" , item);
UMASetMenuItemText(menu, item , title );
UInt8 modifiers = 0 ;
SInt16 key = entry->GetKeyCode() ;
if ( key )
{
bool explicitCommandKey = false ;
UInt8 modifiers = 0 ;
SInt16 key = entry->GetKeyCode() ;
if ( key )
{
bool explicitCommandKey = false ;
- if ( entry->GetFlags() & wxACCEL_CTRL )
+ if ( entry->GetFlags() & wxACCEL_CTRL )
{
explicitCommandKey = true ;
}
{
explicitCommandKey = true ;
}
- if (entry->GetFlags() & wxACCEL_ALT )
+ if (entry->GetFlags() & wxACCEL_ALT )
{
modifiers |= kMenuOptionModifier ;
}
{
modifiers |= kMenuOptionModifier ;
}
- if (entry->GetFlags() & wxACCEL_SHIFT)
+ if (entry->GetFlags() & wxACCEL_SHIFT)
{
modifiers |= kMenuShiftModifier ;
}
{
modifiers |= kMenuShiftModifier ;
}
glyph += 13 ;
if ( !explicitCommandKey )
modifiers |= kMenuNoCommandModifier ;
glyph += 13 ;
if ( !explicitCommandKey )
modifiers |= kMenuNoCommandModifier ;
switch( key )
{
case WXK_F1 :
switch( key )
{
case WXK_F1 :
-void UMAAppendMenuItem( MenuRef menu , const wxString& title , wxAcceleratorEntry *entry )
+void UMAAppendMenuItem( MenuRef menu , const wxString& title , wxAcceleratorEntry *entry )
{
MacAppendMenu(menu, "\pA");
UMASetMenuItemText(menu, (SInt16) ::CountMenuItems(menu), title );
UMASetMenuItemShortcut( menu , (SInt16) ::CountMenuItems(menu), entry ) ;
}
{
MacAppendMenu(menu, "\pA");
UMASetMenuItemText(menu, (SInt16) ::CountMenuItems(menu), title );
UMASetMenuItemShortcut( menu , (SInt16) ::CountMenuItems(menu), entry ) ;
}
-void UMAInsertMenuItem( MenuRef menu , const wxString& title , MenuItemIndex item , wxAcceleratorEntry *entry )
+void UMAInsertMenuItem( MenuRef menu , const wxString& title , MenuItemIndex item , wxAcceleratorEntry *entry )
- MacInsertMenuItem( menu , "\p" , item) ;
- UMASetMenuItemText(menu, item , title );
- UMASetMenuItemShortcut( menu , item , entry ) ;
+ MacInsertMenuItem( menu , "\pA" , item) ;
+ UMASetMenuItemText(menu, item+1 , title );
+ UMASetMenuItemShortcut( menu , item+1 , entry ) ;
-void UMAShowWatchCursor()
+void UMAShowWatchCursor()
// SetQDGlobalsArrow (*watchFob);
// InitCursor ( );
// SetQDGlobalsArrow (&preservedArrow);
// SetQDGlobalsArrow (*watchFob);
// InitCursor ( );
// SetQDGlobalsArrow (&preservedArrow);
-void UMAShowArrowCursor()
+void UMAShowArrowCursor()
{
#if TARGET_CARBON
Cursor arrow;
{
#if TARGET_CARBON
Cursor arrow;
-GrafPtr UMAGetWindowPort( WindowRef inWindowRef )
+GrafPtr UMAGetWindowPort( WindowRef inWindowRef )
{
wxASSERT( inWindowRef != NULL ) ;
{
wxASSERT( inWindowRef != NULL ) ;
-#if TARGET_CARBON
- return (GrafPtr) GetWindowPort( inWindowRef ) ;
+#if TARGET_CARBON
+ return (GrafPtr) GetWindowPort( inWindowRef ) ;
#else
return (GrafPtr) inWindowRef ;
#endif
}
#else
return (GrafPtr) inWindowRef ;
#endif
}
-void UMADisposeWindow( WindowRef inWindowRef )
+void UMADisposeWindow( WindowRef inWindowRef )
{
wxASSERT( inWindowRef != NULL ) ;
DisposeWindow( inWindowRef ) ;
}
{
wxASSERT( inWindowRef != NULL ) ;
DisposeWindow( inWindowRef ) ;
}
-void UMASetWTitle( WindowRef inWindowRef , const wxString& title )
+void UMASetWTitle( WindowRef inWindowRef , const wxString& title )
{
#if TARGET_CARBON
SetWindowTitleWithCFString( inWindowRef , wxMacCFStringHolder(title) ) ;
{
#if TARGET_CARBON
SetWindowTitleWithCFString( inWindowRef , wxMacCFStringHolder(title) ) ;
-void UMAGetWTitleC( WindowRef inWindowRef , char *title )
+void UMAGetWTitleC( WindowRef inWindowRef , char *title )
{
GetWTitle( inWindowRef , (unsigned char*)title ) ;
#if TARGET_CARBON
{
GetWTitle( inWindowRef , (unsigned char*)title ) ;
#if TARGET_CARBON
-void UMASetControlTitle( ControlHandle inControl , const wxString& title )
+void UMASetControlTitle( ControlHandle inControl , const wxString& title )
{
#if TARGET_CARBON
SetControlTitleWithCFString( inControl , wxMacCFStringHolder(title) ) ;
{
#if TARGET_CARBON
SetControlTitleWithCFString( inControl , wxMacCFStringHolder(title) ) ;
-void UMAActivateControl( ControlHandle inControl )
+void UMAActivateControl( ControlHandle inControl )
{
// we have to add the control after again to the update rgn
// otherwise updates get lost
{
// we have to add the control after again to the update rgn
// otherwise updates get lost
-void UMADrawControl( ControlHandle inControl )
+void UMADrawControl( ControlHandle inControl )
{
WindowRef theWindow = GetControlOwner(inControl) ;
RgnHandle updateRgn = NewRgn() ;
{
WindowRef theWindow = GetControlOwner(inControl) ;
RgnHandle updateRgn = NewRgn() ;
DisposeRgn( updateRgn ) ;
}
DisposeRgn( updateRgn ) ;
}
-void UMAMoveControl( ControlHandle inControl , short x , short y )
+void UMAMoveControl( ControlHandle inControl , short x , short y )
{
bool visible = IsControlVisible( inControl ) ;
if ( visible ) {
{
bool visible = IsControlVisible( inControl ) ;
if ( visible ) {
-void UMASizeControl( ControlHandle inControl , short x , short y )
+void UMASizeControl( ControlHandle inControl , short x , short y )
{
bool visible = IsControlVisible( inControl ) ;
if ( visible ) {
SetControlVisibility( inControl , false , false ) ;
Rect ctrlBounds ;
InvalWindowRect(GetControlOwner(inControl),GetControlBounds(inControl,&ctrlBounds) ) ;
{
bool visible = IsControlVisible( inControl ) ;
if ( visible ) {
SetControlVisibility( inControl , false , false ) ;
Rect ctrlBounds ;
InvalWindowRect(GetControlOwner(inControl),GetControlBounds(inControl,&ctrlBounds) ) ;
::SizeControl( inControl , x , y ) ;
if ( visible ) {
SetControlVisibility( inControl , true , false ) ;
::SizeControl( inControl , x , y ) ;
if ( visible ) {
SetControlVisibility( inControl , true , false ) ;
-void UMADeactivateControl( ControlHandle inControl )
+void UMADeactivateControl( ControlHandle inControl )
{
// we have to add the control after again to the update rgn
// otherwise updates get lost
{
// we have to add the control after again to the update rgn
// otherwise updates get lost
-void UMAUpdateControls( WindowPtr inWindow , RgnHandle inRgn )
+void UMAUpdateControls( WindowPtr inWindow , RgnHandle inRgn )
{
RgnHandle updateRgn = NewRgn() ;
GetWindowUpdateRgn( inWindow , updateRgn ) ;
{
RgnHandle updateRgn = NewRgn() ;
GetWindowUpdateRgn( inWindow , updateRgn ) ;
Point zero = { 0 , 0 } ;
LocalToGlobal( &zero ) ;
OffsetRgn( updateRgn , -zero.h , -zero.v ) ;
Point zero = { 0 , 0 } ;
LocalToGlobal( &zero ) ;
OffsetRgn( updateRgn , -zero.h , -zero.v ) ;
UpdateControls( inWindow , inRgn ) ;
InvalWindowRgn( inWindow, updateRgn) ;
DisposeRgn( updateRgn ) ;
}
UpdateControls( inWindow , inRgn ) ;
InvalWindowRgn( inWindow, updateRgn) ;
DisposeRgn( updateRgn ) ;
}
-bool UMAIsWindowFloating( WindowRef inWindow )
+bool UMAIsWindowFloating( WindowRef inWindow )
GetWindowClass( inWindow , &cl ) ;
return cl == kFloatingWindowClass ;
}
GetWindowClass( inWindow , &cl ) ;
return cl == kFloatingWindowClass ;
}
-bool UMAIsWindowModal( WindowRef inWindow )
+bool UMAIsWindowModal( WindowRef inWindow )
GetWindowClass( inWindow , &cl ) ;
return cl < kFloatingWindowClass ;
}
GetWindowClass( inWindow , &cl ) ;
return cl < kFloatingWindowClass ;
}
UMAActivateControl( control ) ;
else
UMADeactivateControl( control ) ;
UMAActivateControl( control ) ;
else
UMADeactivateControl( control ) ;
-OSStatus UMADrawThemePlacard( const Rect *inRect , ThemeDrawState inState )
+OSStatus UMADrawThemePlacard( const Rect *inRect , ThemeDrawState inState )
{
return ::DrawThemePlacard( inRect , inState ) ;
}
{
return ::DrawThemePlacard( inRect , inState ) ;
}
-wxMacPortStateHelper::wxMacPortStateHelper( GrafPtr newport)
+wxMacPortStateHelper::wxMacPortStateHelper( GrafPtr newport)
{
m_clip = NULL ;
Setup( newport ) ;
{
m_clip = NULL ;
Setup( newport ) ;
m_textFont = GetPortTextFont( (CGrafPtr) newport);
m_textSize = GetPortTextSize( (CGrafPtr) newport);
m_textStyle = GetPortTextFace( (CGrafPtr) newport);
m_textFont = GetPortTextFont( (CGrafPtr) newport);
m_textSize = GetPortTextSize( (CGrafPtr) newport);
m_textStyle = GetPortTextFace( (CGrafPtr) newport);
- m_textMode = GetPortTextMode( (CGrafPtr) newport);
+ m_textMode = GetPortTextMode( (CGrafPtr) newport);
GetThemeDrawingState( &m_drawingState ) ;
m_currentPort = newport ;
}
GetThemeDrawingState( &m_drawingState ) ;
m_currentPort = newport ;
}
err = PutScrap( size , type , data ) ;
#else
ScrapRef scrap;
err = PutScrap( size , type , data ) ;
#else
ScrapRef scrap;
- err = GetCurrentScrap (&scrap);
+ err = GetCurrentScrap (&scrap);
if ( !err )
{
err = PutScrapFlavor (scrap, type , 0, size, data);
if ( !err )
{
err = PutScrapFlavor (scrap, type , 0, size, data);
m_startRadioGroup = -1;
// create the menu
m_startRadioGroup = -1;
// create the menu
- m_macMenuId = s_macNextMenuId++;
+ m_macMenuId = s_macNextMenuId++;
m_hMenu = UMANewMenu(m_macMenuId, m_title);
if ( !m_hMenu )
m_hMenu = UMANewMenu(m_macMenuId, m_title);
if ( !m_hMenu )
else
MacInsertMenuItem(MAC_WXHMENU(m_hMenu), "\p-" , pos);
}
else
MacInsertMenuItem(MAC_WXHMENU(m_hMenu), "\p-" , pos);
}
{
wxMenu *pSubMenu = pItem->GetSubMenu() ;
if ( pSubMenu != NULL )
{
wxASSERT_MSG( pSubMenu->m_hMenu != NULL , wxT("invalid submenu added"));
pSubMenu->m_menuParent = this ;
{
wxMenu *pSubMenu = pItem->GetSubMenu() ;
if ( pSubMenu != NULL )
{
wxASSERT_MSG( pSubMenu->m_hMenu != NULL , wxT("invalid submenu added"));
pSubMenu->m_menuParent = this ;
-
- if (wxMenuBar::MacGetInstalledMenuBar() == m_menuBar)
+
+ if (wxMenuBar::MacGetInstalledMenuBar() == m_menuBar)
{
pSubMenu->MacBeforeDisplay( true ) ;
}
{
pSubMenu->MacBeforeDisplay( true ) ;
}
if ( pos == (size_t)-1 )
UMAAppendSubMenuItem(MAC_WXHMENU(m_hMenu), pItem->GetText(), pSubMenu->m_macMenuId);
else
if ( pos == (size_t)-1 )
UMAAppendSubMenuItem(MAC_WXHMENU(m_hMenu), pItem->GetText(), pSubMenu->m_macMenuId);
else
UMAInsertMenuItem(MAC_WXHMENU(m_hMenu), wxT("a") , pos);
}
UMAInsertMenuItem(MAC_WXHMENU(m_hMenu), wxT("a") , pos);
}
- SetMenuItemCommandID( MAC_WXHMENU(m_hMenu) , pos , pItem->GetId() ) ;
+ SetMenuItemCommandID( MAC_WXHMENU(m_hMenu) , pos+1 , pItem->GetId() ) ;
pItem->UpdateItemText() ;
pItem->UpdateItemBitmap() ;
pItem->UpdateItemStatus() ;
pItem->UpdateItemText() ;
pItem->UpdateItemBitmap() ;
pItem->UpdateItemStatus() ;
- if ( pItem->GetId() == idMenuTitle )
+ if ( pItem->GetId() == idMenuTitle )
{
UMAEnableMenuItem(MAC_WXHMENU(m_hMenu) , pos , false ) ;
}
{
UMAEnableMenuItem(MAC_WXHMENU(m_hMenu) , pos , false ) ;
}
-// helper functions returning the mac menu position for a certain item, note that this is
+// helper functions returning the mac menu position for a certain item, note that this is
// mac-wise 1 - based, i.e. the first item has index 1 whereas on MSWin it has pos 0
// mac-wise 1 - based, i.e. the first item has index 1 whereas on MSWin it has pos 0
-int wxMenu::MacGetIndexFromId( int id )
+int wxMenu::MacGetIndexFromId( int id )
{
size_t pos;
wxMenuItemList::Node *node = GetMenuItems().GetFirst();
{
size_t pos;
wxMenuItemList::Node *node = GetMenuItems().GetFirst();
node = node->GetNext();
}
node = node->GetNext();
}
-int wxMenu::MacGetIndexFromItem( wxMenuItem *pItem )
+int wxMenu::MacGetIndexFromItem( wxMenuItem *pItem )
{
size_t pos;
wxMenuItemList::Node *node = GetMenuItems().GetFirst();
{
size_t pos;
wxMenuItemList::Node *node = GetMenuItems().GetFirst();
-void wxMenu::MacEnableMenu( bool bDoEnable )
+void wxMenu::MacEnableMenu( bool bDoEnable )
{
UMAEnableMenuItem(MAC_WXHMENU(m_hMenu) , 0 , bDoEnable ) ;
{
UMAEnableMenuItem(MAC_WXHMENU(m_hMenu) , 0 , bDoEnable ) ;
::DrawMenuBar() ;
}
// MacOS needs to know about submenus somewhere within this menu
// before it can be displayed , also hide special menu items like preferences
// that are handled by the OS
::DrawMenuBar() ;
}
// MacOS needs to know about submenus somewhere within this menu
// before it can be displayed , also hide special menu items like preferences
// that are handled by the OS
-void wxMenu::MacBeforeDisplay( bool isSubMenu )
+void wxMenu::MacBeforeDisplay( bool isSubMenu )
{
wxMenuItem* previousItem = NULL ;
size_t pos ;
wxMenuItemList::Node *node;
wxMenuItem *item;
{
wxMenuItem* previousItem = NULL ;
size_t pos ;
wxMenuItemList::Node *node;
wxMenuItem *item;
- for (pos = 0, node = GetMenuItems().GetFirst(); node; node = node->GetNext(), pos++)
+ for (pos = 0, node = GetMenuItems().GetFirst(); node; node = node->GetNext(), pos++)
{
item = (wxMenuItem *)node->GetData();
wxMenu* subMenu = item->GetSubMenu() ;
{
item = (wxMenuItem *)node->GetData();
wxMenu* subMenu = item->GetSubMenu() ;
{
subMenu->MacBeforeDisplay( true ) ;
}
{
subMenu->MacBeforeDisplay( true ) ;
}
}
previousItem = item ;
}
}
previousItem = item ;
}
}
// undo all changes from the MacBeforeDisplay call
}
// undo all changes from the MacBeforeDisplay call
-void wxMenu::MacAfterDisplay( bool isSubMenu )
+void wxMenu::MacAfterDisplay( bool isSubMenu )
{
if ( isSubMenu )
::DeleteMenu(MacGetMenuId());
{
if ( isSubMenu )
::DeleteMenu(MacGetMenuId());
int pos ;
wxMenuItemList::Node *node;
wxMenuItem *item;
int pos ;
wxMenuItemList::Node *node;
wxMenuItem *item;
- for (pos = 0, node = GetMenuItems().GetFirst(); node; node = node->GetNext(), pos++)
+ for (pos = 0, node = GetMenuItems().GetFirst(); node; node = node->GetNext(), pos++)
{
item = (wxMenuItem *)node->GetData();
wxMenu* subMenu = item->GetSubMenu() ;
{
item = (wxMenuItem *)node->GetData();
wxMenu* subMenu = item->GetSubMenu() ;
{
subMenu->MacAfterDisplay( true ) ;
}
{
subMenu->MacAfterDisplay( true ) ;
}
Mac Implementation note :
Mac Implementation note :
active menubar from a frame, we currently don't take into account mdi-frames
which would ask for menu-merging
active menubar from a frame, we currently don't take into account mdi-frames
which would ask for menu-merging
-Secondly there is no mac api for changing a menubar that is not the current
+Secondly there is no mac api for changing a menubar that is not the current
menubar, so we have to wait for preparing the actual menubar until the
wxMenubar is to be used
menubar, so we have to wait for preparing the actual menubar until the
wxMenubar is to be used
-We can in subsequent versions use MacInstallMenuBar to provide some sort of
+We can in subsequent versions use MacInstallMenuBar to provide some sort of
auto-merge for MDI in case this will be necessary
*/
auto-merge for MDI in case this will be necessary
*/
-void wxMenuBar::MacInstallMenuBar()
+void wxMenuBar::MacInstallMenuBar()
{
if ( s_macInstalledMenuBar == this )
return ;
{
if ( s_macInstalledMenuBar == this )
return ;
wxStAppResource resload ;
wxStAppResource resload ;
Handle menubar = ::GetNewMBar( kwxMacMenuBarResource ) ;
wxString message ;
wxCHECK_RET( menubar != NULL, wxT("can't read MBAR resource") );
Handle menubar = ::GetNewMBar( kwxMacMenuBarResource ) ;
wxString message ;
wxCHECK_RET( menubar != NULL, wxT("can't read MBAR resource") );
::AppendResMenu(menu, 'DRVR');
}
#endif
::AppendResMenu(menu, 'DRVR');
}
#endif
// clean-up the help menu before adding new items
MenuHandle mh = NULL ;
if ( UMAGetHelpMenu( &mh , &firstUserHelpMenuItem) == noErr )
// clean-up the help menu before adding new items
MenuHandle mh = NULL ;
if ( UMAGetHelpMenu( &mh , &firstUserHelpMenuItem) == noErr )
-
- for (pos = 0 , node = menu->GetMenuItems().GetFirst(); node; node = node->GetNext(), pos++)
+
+ for (pos = 0 , node = menu->GetMenuItems().GetFirst(); node; node = node->GetNext(), pos++)
{
item = (wxMenuItem *)node->GetData();
subMenu = item->GetSubMenu() ;
{
item = (wxMenuItem *)node->GetData();
subMenu = item->GetSubMenu() ;
{
// we don't support hierarchical menus in the help menu yet
}
{
// we don't support hierarchical menus in the help menu yet
}
{
if ( item->IsSeparator() )
{
{
if ( item->IsSeparator() )
{
wxAcceleratorEntry* entry = wxGetAccelFromString( item->GetText() ) ;
if ( item->GetId() == wxApp::s_macAboutMenuItemId )
wxAcceleratorEntry* entry = wxGetAccelFromString( item->GetText() ) ;
if ( item->GetId() == wxApp::s_macAboutMenuItemId )
UMASetMenuItemText( GetMenuHandle( kwxMacAppleMenuId ) , 1 , item->GetText() );
UMAEnableMenuItem( GetMenuHandle( kwxMacAppleMenuId ) , 1 , true );
SetMenuItemCommandID( GetMenuHandle( kwxMacAppleMenuId ) , 1 , item->GetId() ) ;
UMASetMenuItemText( GetMenuHandle( kwxMacAppleMenuId ) , 1 , item->GetText() );
UMAEnableMenuItem( GetMenuHandle( kwxMacAppleMenuId ) , 1 , true );
SetMenuItemCommandID( GetMenuHandle( kwxMacAppleMenuId ) , 1 , item->GetId() ) ;
SetMenuItemCommandID( mh , CountMenuItems(mh) , item->GetId() ) ;
}
}
SetMenuItemCommandID( mh , CountMenuItems(mh) , item->GetId() ) ;
}
}
{
wxString title = wxStripMenuCodes(m_titles[i]);
if ( menuTitle == title )
{
wxString title = wxStripMenuCodes(m_titles[i]);
if ( menuTitle == title )
return FALSE;
m_titles.Add(title);
return FALSE;
m_titles.Add(title);
UMASetMenuTitle( MAC_WXHMENU(menu->GetHMenu()) , title ) ;
if ( IsAttached() )
UMASetMenuTitle( MAC_WXHMENU(menu->GetHMenu()) , title ) ;
if ( IsAttached() )
// since we have decided that we only support 8.6 upwards we are
// checking for these minimum requirements in the startup code of
// the application so all wxWindows code can safely assume that appearance 1.1
// since we have decided that we only support 8.6 upwards we are
// checking for these minimum requirements in the startup code of
// the application so all wxWindows code can safely assume that appearance 1.1
-// windows manager, control manager, navigation services etc. are
+// windows manager, control manager, navigation services etc. are
// present
static bool sUMAHasAppearance = false ;
// present
static bool sUMAHasAppearance = false ;
if ( Gestalt(gestaltSystemVersion, &sUMASystemVersion) != noErr)
sUMASystemVersion = 0x0000 ;
if ( Gestalt(gestaltSystemVersion, &sUMASystemVersion) != noErr)
sUMASystemVersion = 0x0000 ;
long theAppearance ;
if ( Gestalt( gestaltAppearanceAttr, &theAppearance ) == noErr )
{
long theAppearance ;
if ( Gestalt( gestaltAppearanceAttr, &theAppearance ) == noErr )
{
{
sUMAHasWindowManager = sUMAWindowManagerAttr & gestaltWindowMgrPresent ;
}
{
sUMAHasWindowManager = sUMAWindowManagerAttr & gestaltWindowMgrPresent ;
}
#if TARGET_CARBON
// Call currently implicitely done : InitFloatingWindows() ;
#else
#if TARGET_CARBON
// Call currently implicitely done : InitFloatingWindows() ;
#else
sUMAHasAquaLayout = true ;
if ( TXNInitTextension != (void*) kUnresolvedCFragSymbolAddress )
sUMAHasAquaLayout = true ;
if ( TXNInitTextension != (void*) kUnresolvedCFragSymbolAddress )
FontFamilyID fontId ;
Str255 fontName ;
SInt16 fontSize ;
FontFamilyID fontId ;
Str255 fontName ;
SInt16 fontSize ;
{ fontId , (fontSize << 16) ,kTXNDefaultFontStyle, kTXNSystemDefaultEncoding } ,
} ;
int noOfFontDescriptions = sizeof( fontDescriptions ) / sizeof(TXNMacOSPreferredFontDescription) ;
{ fontId , (fontSize << 16) ,kTXNDefaultFontStyle, kTXNSystemDefaultEncoding } ,
} ;
int noOfFontDescriptions = sizeof( fontDescriptions ) / sizeof(TXNMacOSPreferredFontDescription) ;
--noOfFontDescriptions ;
#endif
// kTXNAlwaysUseQuickDrawTextMask might be desirable because of speed increases but it crashes the app under OS X upon key stroke
--noOfFontDescriptions ;
#endif
// kTXNAlwaysUseQuickDrawTextMask might be desirable because of speed increases but it crashes the app under OS X upon key stroke
-long UMAGetProcessMode()
+long UMAGetProcessMode()
ProcessInfoRec processinfo;
ProcessSerialNumber procno ;
ProcessInfoRec processinfo;
ProcessSerialNumber procno ;
procno.highLongOfPSN = NULL ;
procno.lowLongOfPSN = kCurrentProcess ;
processinfo.processInfoLength = sizeof(ProcessInfoRec);
procno.highLongOfPSN = NULL ;
procno.lowLongOfPSN = kCurrentProcess ;
processinfo.processInfoLength = sizeof(ProcessInfoRec);
return processinfo.processMode ;
}
return processinfo.processMode ;
}
-bool UMAGetProcessModeDoesActivateOnFGSwitch()
+bool UMAGetProcessModeDoesActivateOnFGSwitch()
{
return UMAGetProcessMode() & modeDoesActivateOnFGSwitch ;
}
{
return UMAGetProcessMode() & modeDoesActivateOnFGSwitch ;
}
-void UMASetMenuItemText( MenuRef menu, MenuItemIndex item, const wxString& title )
+void UMASetMenuItemText( MenuRef menu, MenuItemIndex item, const wxString& title )
{
wxString str = wxStripMenuCodes( title ) ;
#if TARGET_CARBON
{
wxString str = wxStripMenuCodes( title ) ;
#if TARGET_CARBON
return MenuEvent( inEvent ) ;
}
return MenuEvent( inEvent ) ;
}
-void UMAEnableMenuItem( MenuRef inMenu , MenuItemIndex inItem , bool enable)
+void UMAEnableMenuItem( MenuRef inMenu , MenuItemIndex inItem , bool enable)
{
if ( enable )
EnableMenuItem( inMenu , inItem ) ;
{
if ( enable )
EnableMenuItem( inMenu , inItem ) ;
DisableMenuItem( inMenu , inItem ) ;
}
DisableMenuItem( inMenu , inItem ) ;
}
-void UMAAppendSubMenuItem( MenuRef menu , const wxString& title , SInt16 id )
+void UMAAppendSubMenuItem( MenuRef menu , const wxString& title , SInt16 id )
{
MacAppendMenu(menu, "\pA");
UMASetMenuItemText(menu, (SInt16) ::CountMenuItems(menu), title );
SetMenuItemHierarchicalID( menu , CountMenuItems( menu ) , id ) ;
}
{
MacAppendMenu(menu, "\pA");
UMASetMenuItemText(menu, (SInt16) ::CountMenuItems(menu), title );
SetMenuItemHierarchicalID( menu , CountMenuItems( menu ) , id ) ;
}
-void UMAInsertSubMenuItem( MenuRef menu , const wxString& title , MenuItemIndex item , SInt16 id )
+void UMAInsertSubMenuItem( MenuRef menu , const wxString& title , MenuItemIndex item , SInt16 id )
{
MacInsertMenuItem(menu, "\pA" , item);
UMASetMenuItemText(menu, item , title );
{
MacInsertMenuItem(menu, "\pA" , item);
UMASetMenuItemText(menu, item , title );
UInt8 modifiers = 0 ;
SInt16 key = entry->GetKeyCode() ;
if ( key )
{
bool explicitCommandKey = false ;
UInt8 modifiers = 0 ;
SInt16 key = entry->GetKeyCode() ;
if ( key )
{
bool explicitCommandKey = false ;
- if ( entry->GetFlags() & wxACCEL_CTRL )
+ if ( entry->GetFlags() & wxACCEL_CTRL )
{
explicitCommandKey = true ;
}
{
explicitCommandKey = true ;
}
- if (entry->GetFlags() & wxACCEL_ALT )
+ if (entry->GetFlags() & wxACCEL_ALT )
{
modifiers |= kMenuOptionModifier ;
}
{
modifiers |= kMenuOptionModifier ;
}
- if (entry->GetFlags() & wxACCEL_SHIFT)
+ if (entry->GetFlags() & wxACCEL_SHIFT)
{
modifiers |= kMenuShiftModifier ;
}
{
modifiers |= kMenuShiftModifier ;
}
glyph += 13 ;
if ( !explicitCommandKey )
modifiers |= kMenuNoCommandModifier ;
glyph += 13 ;
if ( !explicitCommandKey )
modifiers |= kMenuNoCommandModifier ;
switch( key )
{
case WXK_F1 :
switch( key )
{
case WXK_F1 :
-void UMAAppendMenuItem( MenuRef menu , const wxString& title , wxAcceleratorEntry *entry )
+void UMAAppendMenuItem( MenuRef menu , const wxString& title , wxAcceleratorEntry *entry )
{
MacAppendMenu(menu, "\pA");
UMASetMenuItemText(menu, (SInt16) ::CountMenuItems(menu), title );
UMASetMenuItemShortcut( menu , (SInt16) ::CountMenuItems(menu), entry ) ;
}
{
MacAppendMenu(menu, "\pA");
UMASetMenuItemText(menu, (SInt16) ::CountMenuItems(menu), title );
UMASetMenuItemShortcut( menu , (SInt16) ::CountMenuItems(menu), entry ) ;
}
-void UMAInsertMenuItem( MenuRef menu , const wxString& title , MenuItemIndex item , wxAcceleratorEntry *entry )
+void UMAInsertMenuItem( MenuRef menu , const wxString& title , MenuItemIndex item , wxAcceleratorEntry *entry )
- MacInsertMenuItem( menu , "\p" , item) ;
- UMASetMenuItemText(menu, item , title );
- UMASetMenuItemShortcut( menu , item , entry ) ;
+ MacInsertMenuItem( menu , "\pA" , item) ;
+ UMASetMenuItemText(menu, item+1 , title );
+ UMASetMenuItemShortcut( menu , item+1 , entry ) ;
-void UMAShowWatchCursor()
+void UMAShowWatchCursor()
// SetQDGlobalsArrow (*watchFob);
// InitCursor ( );
// SetQDGlobalsArrow (&preservedArrow);
// SetQDGlobalsArrow (*watchFob);
// InitCursor ( );
// SetQDGlobalsArrow (&preservedArrow);
-void UMAShowArrowCursor()
+void UMAShowArrowCursor()
{
#if TARGET_CARBON
Cursor arrow;
{
#if TARGET_CARBON
Cursor arrow;
-GrafPtr UMAGetWindowPort( WindowRef inWindowRef )
+GrafPtr UMAGetWindowPort( WindowRef inWindowRef )
{
wxASSERT( inWindowRef != NULL ) ;
{
wxASSERT( inWindowRef != NULL ) ;
-#if TARGET_CARBON
- return (GrafPtr) GetWindowPort( inWindowRef ) ;
+#if TARGET_CARBON
+ return (GrafPtr) GetWindowPort( inWindowRef ) ;
#else
return (GrafPtr) inWindowRef ;
#endif
}
#else
return (GrafPtr) inWindowRef ;
#endif
}
-void UMADisposeWindow( WindowRef inWindowRef )
+void UMADisposeWindow( WindowRef inWindowRef )
{
wxASSERT( inWindowRef != NULL ) ;
DisposeWindow( inWindowRef ) ;
}
{
wxASSERT( inWindowRef != NULL ) ;
DisposeWindow( inWindowRef ) ;
}
-void UMASetWTitle( WindowRef inWindowRef , const wxString& title )
+void UMASetWTitle( WindowRef inWindowRef , const wxString& title )
{
#if TARGET_CARBON
SetWindowTitleWithCFString( inWindowRef , wxMacCFStringHolder(title) ) ;
{
#if TARGET_CARBON
SetWindowTitleWithCFString( inWindowRef , wxMacCFStringHolder(title) ) ;
-void UMAGetWTitleC( WindowRef inWindowRef , char *title )
+void UMAGetWTitleC( WindowRef inWindowRef , char *title )
{
GetWTitle( inWindowRef , (unsigned char*)title ) ;
#if TARGET_CARBON
{
GetWTitle( inWindowRef , (unsigned char*)title ) ;
#if TARGET_CARBON
-void UMASetControlTitle( ControlHandle inControl , const wxString& title )
+void UMASetControlTitle( ControlHandle inControl , const wxString& title )
{
#if TARGET_CARBON
SetControlTitleWithCFString( inControl , wxMacCFStringHolder(title) ) ;
{
#if TARGET_CARBON
SetControlTitleWithCFString( inControl , wxMacCFStringHolder(title) ) ;
-void UMAActivateControl( ControlHandle inControl )
+void UMAActivateControl( ControlHandle inControl )
{
// we have to add the control after again to the update rgn
// otherwise updates get lost
{
// we have to add the control after again to the update rgn
// otherwise updates get lost
-void UMADrawControl( ControlHandle inControl )
+void UMADrawControl( ControlHandle inControl )
{
WindowRef theWindow = GetControlOwner(inControl) ;
RgnHandle updateRgn = NewRgn() ;
{
WindowRef theWindow = GetControlOwner(inControl) ;
RgnHandle updateRgn = NewRgn() ;
DisposeRgn( updateRgn ) ;
}
DisposeRgn( updateRgn ) ;
}
-void UMAMoveControl( ControlHandle inControl , short x , short y )
+void UMAMoveControl( ControlHandle inControl , short x , short y )
{
bool visible = IsControlVisible( inControl ) ;
if ( visible ) {
{
bool visible = IsControlVisible( inControl ) ;
if ( visible ) {
-void UMASizeControl( ControlHandle inControl , short x , short y )
+void UMASizeControl( ControlHandle inControl , short x , short y )
{
bool visible = IsControlVisible( inControl ) ;
if ( visible ) {
SetControlVisibility( inControl , false , false ) ;
Rect ctrlBounds ;
InvalWindowRect(GetControlOwner(inControl),GetControlBounds(inControl,&ctrlBounds) ) ;
{
bool visible = IsControlVisible( inControl ) ;
if ( visible ) {
SetControlVisibility( inControl , false , false ) ;
Rect ctrlBounds ;
InvalWindowRect(GetControlOwner(inControl),GetControlBounds(inControl,&ctrlBounds) ) ;
::SizeControl( inControl , x , y ) ;
if ( visible ) {
SetControlVisibility( inControl , true , false ) ;
::SizeControl( inControl , x , y ) ;
if ( visible ) {
SetControlVisibility( inControl , true , false ) ;
-void UMADeactivateControl( ControlHandle inControl )
+void UMADeactivateControl( ControlHandle inControl )
{
// we have to add the control after again to the update rgn
// otherwise updates get lost
{
// we have to add the control after again to the update rgn
// otherwise updates get lost
-void UMAUpdateControls( WindowPtr inWindow , RgnHandle inRgn )
+void UMAUpdateControls( WindowPtr inWindow , RgnHandle inRgn )
{
RgnHandle updateRgn = NewRgn() ;
GetWindowUpdateRgn( inWindow , updateRgn ) ;
{
RgnHandle updateRgn = NewRgn() ;
GetWindowUpdateRgn( inWindow , updateRgn ) ;
Point zero = { 0 , 0 } ;
LocalToGlobal( &zero ) ;
OffsetRgn( updateRgn , -zero.h , -zero.v ) ;
Point zero = { 0 , 0 } ;
LocalToGlobal( &zero ) ;
OffsetRgn( updateRgn , -zero.h , -zero.v ) ;
UpdateControls( inWindow , inRgn ) ;
InvalWindowRgn( inWindow, updateRgn) ;
DisposeRgn( updateRgn ) ;
}
UpdateControls( inWindow , inRgn ) ;
InvalWindowRgn( inWindow, updateRgn) ;
DisposeRgn( updateRgn ) ;
}
-bool UMAIsWindowFloating( WindowRef inWindow )
+bool UMAIsWindowFloating( WindowRef inWindow )
GetWindowClass( inWindow , &cl ) ;
return cl == kFloatingWindowClass ;
}
GetWindowClass( inWindow , &cl ) ;
return cl == kFloatingWindowClass ;
}
-bool UMAIsWindowModal( WindowRef inWindow )
+bool UMAIsWindowModal( WindowRef inWindow )
GetWindowClass( inWindow , &cl ) ;
return cl < kFloatingWindowClass ;
}
GetWindowClass( inWindow , &cl ) ;
return cl < kFloatingWindowClass ;
}
UMAActivateControl( control ) ;
else
UMADeactivateControl( control ) ;
UMAActivateControl( control ) ;
else
UMADeactivateControl( control ) ;
-OSStatus UMADrawThemePlacard( const Rect *inRect , ThemeDrawState inState )
+OSStatus UMADrawThemePlacard( const Rect *inRect , ThemeDrawState inState )
{
return ::DrawThemePlacard( inRect , inState ) ;
}
{
return ::DrawThemePlacard( inRect , inState ) ;
}
-wxMacPortStateHelper::wxMacPortStateHelper( GrafPtr newport)
+wxMacPortStateHelper::wxMacPortStateHelper( GrafPtr newport)
{
m_clip = NULL ;
Setup( newport ) ;
{
m_clip = NULL ;
Setup( newport ) ;
m_textFont = GetPortTextFont( (CGrafPtr) newport);
m_textSize = GetPortTextSize( (CGrafPtr) newport);
m_textStyle = GetPortTextFace( (CGrafPtr) newport);
m_textFont = GetPortTextFont( (CGrafPtr) newport);
m_textSize = GetPortTextSize( (CGrafPtr) newport);
m_textStyle = GetPortTextFace( (CGrafPtr) newport);
- m_textMode = GetPortTextMode( (CGrafPtr) newport);
+ m_textMode = GetPortTextMode( (CGrafPtr) newport);
GetThemeDrawingState( &m_drawingState ) ;
m_currentPort = newport ;
}
GetThemeDrawingState( &m_drawingState ) ;
m_currentPort = newport ;
}
err = PutScrap( size , type , data ) ;
#else
ScrapRef scrap;
err = PutScrap( size , type , data ) ;
#else
ScrapRef scrap;
- err = GetCurrentScrap (&scrap);
+ err = GetCurrentScrap (&scrap);
if ( !err )
{
err = PutScrapFlavor (scrap, type , 0, size, data);
if ( !err )
{
err = PutScrapFlavor (scrap, type , 0, size, data);