Hi Nicolas,
how about refactoring like this: ?
MacMenubarPlugin>>oopAsMenuHandle: menuHandleOop <returnTypeC: #MenuHandle> ^self cCoerce: (interpreterProxy positiveMachineIntegerValueOf: menuHandleOop) to: #MenuHandle
primitiveSetMenuItemKeyGlyph: menuHandleOop item: anInteger glyph: inGlyphInteger | menuHandle | self primitive: 'primitiveSetMenuItemKeyGlyph' parameters: #(Oop SmallInteger SmallInteger).
menuHandle := self oopAsMenuHandle: menuHandleOop. (self ioCheckMenuHandle: menuHandle) ifFalse: [^interpreterProxy success: false]. self cCode: 'SetMenuItemKeyGlyph(menuHandle,anInteger,inGlyphInteger)' inSmalltalk:[menuHandle]. ^nil
or this? MacMenubarPlugin>>checkedMenuHandle: menuHandleOop | menuHandle | <returnTypeC: #MenuHandle> menuHandle := self cCoerce: (interpreterProxy positiveMachineIntegerValueOf: menuHandleOop) to: #MenuHandle. self ioCheckMenuHandle: menuHandle. ^ menuHandle
primitiveSetMenuItemKeyGlyph: menuHandleOop item: anInteger glyph: inGlyphInteger | menuHandle | self primitive: 'primitiveSetMenuItemKeyGlyph' parameters: #(Oop SmallInteger SmallInteger).
menuHandle := self checkedMenuHandle: menuHandleOop. interpreterProxy failed ifFalse: [self SetMenu: menuHandle ItemKey: anInteger Glyph: inGlyphInteger]
On Fri, Mar 4, 2016 at 5:33 PM, commits@source.squeak.org wrote:
Nicolas Cellier uploaded a new version of VMMaker to project VM Maker: http://source.squeak.org/VMMaker/VMMaker.oscog-nice.1712.mcz
==================== Summary ====================
Name: VMMaker.oscog-nice.1712 Author: nice Time: 5 March 2016, 2:32:35.84 am UUID: 5c7fb203-b18c-4143-a2b9-cd59c2acc47c Ancestors: VMMaker.oscog-nice.1711
Make the MacMenubarPlugin 64bits aware: the menuHandle does not necessarily fit on a 32bits int.
=============== Diff against VMMaker.oscog-nice.1711 ===============
Item was changed: ----- Method: MacMenubarPlugin>>primitiveAppendMenu:data: (in category 'system primitives') ----- primitiveAppendMenu: menuHandleOop data: str255 | menuHandle constStr255 | self primitive: 'primitiveAppendMenu' parameters: #(Oop ByteArray). self var: 'menuHandle' type: 'MenuHandle'. self var: 'constStr255' type: 'ConstStr255Param'.
menuHandle := self cCoerce: (interpreterProxy
positiveMachineIntegerValueOf: menuHandleOop) to: 'MenuHandle'.
menuHandle := self cCoerce: (interpreterProxy
positive32BitValueOf: menuHandleOop) to: 'MenuHandle'. (self ioCheckMenuHandle: menuHandle) ifFalse: [^interpreterProxy success: false]. constStr255 := self cCoerce: str255 to: 'ConstStr255Param'. self cCode: 'AppendMenu(menuHandle,constStr255)' inSmalltalk:[menuHandle]. ^nil!
Item was changed: ----- Method: MacMenubarPlugin>>primitiveAppendMenuItemText:data: (in category 'system primitives') ----- primitiveAppendMenuItemText: menuHandleOop data: str255 | menuHandle constStr255 | self primitive: 'primitiveAppendMenuItemText' parameters: #(Oop ByteArray). self var: 'menuHandle' type: 'MenuHandle'. self var: 'constStr255' type: 'ConstStr255Param'.
menuHandle := self cCoerce: (interpreterProxy
positiveMachineIntegerValueOf: menuHandleOop) to: 'MenuHandle'.
menuHandle := self cCoerce: (interpreterProxy
positive32BitValueOf: menuHandleOop) to: 'MenuHandle'. (self ioCheckMenuHandle: menuHandle) ifFalse: [^interpreterProxy success: false]. constStr255 := self cCoerce: str255 to: 'ConstStr255Param'. self cCode: 'AppendMenuItemText(menuHandle,constStr255)' inSmalltalk:[menuHandle]. ^nil!
Item was changed: ----- Method: MacMenubarPlugin>>primitiveCheckMenuItem:item:checked: (in category 'system primitives') ----- primitiveCheckMenuItem: menuHandleOop item: anInteger checked: aBoolean | menuHandle | self primitive: 'primitiveCheckMenuItem' parameters: #(Oop SmallInteger Boolean). self var: 'menuHandle' type: 'MenuHandle'.
menuHandle := self cCoerce: (interpreterProxy
positiveMachineIntegerValueOf: menuHandleOop) to: 'MenuHandle'.
menuHandle := self cCoerce: (interpreterProxy
positive32BitValueOf: menuHandleOop) to: 'MenuHandle'. (self ioCheckMenuHandle: menuHandle) ifFalse: [^interpreterProxy success: false]. self cCode: 'CheckMenuItem(menuHandle,anInteger,aBoolean)' inSmalltalk:[menuHandle]. ^nil
!
Item was changed: ----- Method: MacMenubarPlugin>>primitiveCountMenuItems: (in category 'system primitives') ----- primitiveCountMenuItems: menuHandleOop | menuHandle returnValue | self primitive: 'primitiveCountMenuItems' parameters: #(Oop). self var: 'menuHandle' type: 'MenuHandle'.
menuHandle := self cCoerce: (interpreterProxy
positiveMachineIntegerValueOf: menuHandleOop) to: 'MenuHandle'.
menuHandle := self cCoerce: (interpreterProxy
positive32BitValueOf: menuHandleOop) to: 'MenuHandle'. (self ioCheckMenuHandle: menuHandle) ifFalse: [^interpreterProxy success: false]. returnValue := self cCode: 'CountMenuItems(menuHandle)' inSmalltalk:[0]. ^returnValue asSmallIntegerObj !
Item was changed: ----- Method: MacMenubarPlugin>>primitiveCreateStandardWindowMenu: (in category 'system primitives') ----- primitiveCreateStandardWindowMenu: inOptions
| menuHandle result | self primitive: 'primitiveCreateStandardWindowMenu' parameters: #(SmallInteger). self var: 'menuHandle' type: 'MenuHandle'. self cCode: '#if TARGET_API_MAC_CARBON
'. result := self cCode: 'CreateStandardWindowMenu(inOptions,&menuHandle); #endif' inSmalltalk:[0].
^interpreterProxy positiveMachineIntegerFor: (self cCoerce:
menuHandle to: 'long')!
^interpreterProxy positive32BitIntegerFor: (self cCoerce:
menuHandle to: 'long')!
Item was changed: ----- Method: MacMenubarPlugin>>primitiveDeleteMenuItem:item: (in category 'system primitives') ----- primitiveDeleteMenuItem: menuHandleOop item: anInteger | menuHandle | self primitive: 'primitiveDeleteMenuItem' parameters: #(Oop SmallInteger). self var: 'menuHandle' type: 'MenuHandle'.
menuHandle := self cCoerce: (interpreterProxy
positiveMachineIntegerValueOf: menuHandleOop) to: 'MenuHandle'.
menuHandle := self cCoerce: (interpreterProxy
positive32BitValueOf: menuHandleOop) to: 'MenuHandle'. (self ioCheckMenuHandle: menuHandle) ifFalse: [^interpreterProxy success: false]. self cCode: 'DeleteMenuItem(menuHandle,anInteger)' inSmalltalk:[menuHandle]. ^nil !
Item was changed: ----- Method: MacMenubarPlugin>>primitiveDisableMenuCommand:item: (in category 'system primitives') ----- primitiveDisableMenuCommand: menuHandleOop item: anInteger | menuHandle commandID | self primitive: 'primitiveDisableMenuCommand' parameters: #(Oop Oop). self var: 'menuHandle' type: 'MenuHandle'. self var: 'commandID' type: 'MenuCommand'.
menuHandle := self cCoerce: (interpreterProxy
positiveMachineIntegerValueOf: menuHandleOop) to: 'MenuHandle'.
menuHandle := self cCoerce: (interpreterProxy
positive32BitValueOf: menuHandleOop) to: 'MenuHandle'. commandID := self cCoerce: (interpreterProxy positive32BitValueOf: anInteger) to: 'MenuCommand'. (self ioCheckMenuHandle: menuHandle) ifFalse: [^interpreterProxy success: false]. self cCode: '#if TARGET_API_MAC_CARBON DisableMenuCommand(menuHandle,commandID); #endif' inSmalltalk:[menuHandle]. ^nil !
Item was changed: ----- Method: MacMenubarPlugin>>primitiveDisableMenuItem:item: (in category 'system primitives') ----- primitiveDisableMenuItem: menuHandleOop item: anInteger | menuHandle | self primitive: 'primitiveDisableMenuItem' parameters: #(Oop SmallInteger). self var: 'menuHandle' type: 'MenuHandle'.
menuHandle := self cCoerce: (interpreterProxy
positiveMachineIntegerValueOf: menuHandleOop) to: 'MenuHandle'.
menuHandle := self cCoerce: (interpreterProxy
positive32BitValueOf: menuHandleOop) to: 'MenuHandle'. (self ioCheckMenuHandle: menuHandle) ifFalse: [^interpreterProxy success: false]. self cCode: 'DisableMenuItem(menuHandle,anInteger)' inSmalltalk:[menuHandle]. ^nil !
Item was changed: ----- Method: MacMenubarPlugin>>primitiveDisableMenuItemIcon:item: (in category 'system primitives') ----- primitiveDisableMenuItemIcon: menuHandleOop item: anInteger | menuHandle | self primitive: 'primitiveDisableMenuItemIcon' parameters: #(Oop SmallInteger). self var: 'menuHandle' type: 'MenuHandle'.
menuHandle := self cCoerce: (interpreterProxy
positiveMachineIntegerValueOf: menuHandleOop) to: 'MenuHandle'.
menuHandle := self cCoerce: (interpreterProxy
positive32BitValueOf: menuHandleOop) to: 'MenuHandle'. (self ioCheckMenuHandle: menuHandle) ifFalse: [^interpreterProxy success: false]. self cCode: 'DisableMenuItemIcon(menuHandle,anInteger)' inSmalltalk:[menuHandle]. ^nil !
Item was changed: ----- Method: MacMenubarPlugin>>primitiveDisposeMenu: (in category 'system primitives') ----- primitiveDisposeMenu: menuHandleOop | menuHandle | self primitive: 'primitiveDisposeMenu' parameters: #(Oop). self var: 'menuHandle' type: 'MenuHandle'.
menuHandle := self cCoerce: (interpreterProxy
positiveMachineIntegerValueOf: menuHandleOop) to: 'MenuHandle'.
menuHandle := self cCoerce: (interpreterProxy
positive32BitValueOf: menuHandleOop) to: 'MenuHandle'. (self ioCheckMenuHandle: menuHandle) ifFalse: [^interpreterProxy success: false]. self cCode: 'DisposeMenu(menuHandle)' inSmalltalk:[menuHandle]. ^nil !
Item was changed: ----- Method: MacMenubarPlugin>>primitiveEnableMenuCommand:item: (in category 'system primitives') ----- primitiveEnableMenuCommand: menuHandleOop item: anInteger | menuHandle commandID | self primitive: 'primitiveEnableMenuCommand' parameters: #(Oop Oop). self var: 'menuHandle' type: 'MenuHandle'. self var: 'commandID' type: 'MenuCommand'.
menuHandle := self cCoerce: (interpreterProxy
positiveMachineIntegerValueOf: menuHandleOop) to: 'MenuHandle'.
menuHandle := self cCoerce: (interpreterProxy
positive32BitValueOf: menuHandleOop) to: 'MenuHandle'. commandID := self cCoerce: (interpreterProxy positive32BitValueOf: anInteger) to: 'MenuCommand'. (self ioCheckMenuHandle: menuHandle) ifFalse: [^interpreterProxy success: false]. self cCode: '#if TARGET_API_MAC_CARBON EnableMenuCommand(menuHandle,commandID); #endif' inSmalltalk:[menuHandle]. ^nil!
Item was changed: ----- Method: MacMenubarPlugin>>primitiveEnableMenuItem:item: (in category 'system primitives') ----- primitiveEnableMenuItem: menuHandleOop item: anInteger | menuHandle | self primitive: 'primitiveEnableMenuItem' parameters: #(Oop SmallInteger). self var: 'menuHandle' type: 'MenuHandle'.
menuHandle := self cCoerce: (interpreterProxy
positiveMachineIntegerValueOf: menuHandleOop) to: 'MenuHandle'.
menuHandle := self cCoerce: (interpreterProxy
positive32BitValueOf: menuHandleOop) to: 'MenuHandle'. (self ioCheckMenuHandle: menuHandle) ifFalse: [^interpreterProxy success: false]. self cCode: 'EnableMenuItem(menuHandle,anInteger)' inSmalltalk:[menuHandle]. ^nil !
Item was changed: ----- Method: MacMenubarPlugin>>primitiveEnableMenuItemIcon:item: (in category 'system primitives') ----- primitiveEnableMenuItemIcon: menuHandleOop item: anInteger | menuHandle | self primitive: 'primitiveEnableMenuItemIcon' parameters: #(Oop SmallInteger). self var: 'menuHandle' type: 'MenuHandle'.
menuHandle := self cCoerce: (interpreterProxy
positiveMachineIntegerValueOf: menuHandleOop) to: 'MenuHandle'.
menuHandle := self cCoerce: (interpreterProxy
positive32BitValueOf: menuHandleOop) to: 'MenuHandle'. (self ioCheckMenuHandle: menuHandle) ifFalse: [^interpreterProxy success: false]. self cCode: 'EnableMenuItemIcon(menuHandle,anInteger)' inSmalltalk:[menuHandle]. ^nil !
Item was changed: ----- Method: MacMenubarPlugin>>primitiveGetIndMenuItemWithCommandID:commandID: (in category 'system primitives') ----- primitiveGetIndMenuItemWithCommandID: menuHandleOop commandID: aCommandID | menuHandle MenuItemIndex commandID applicationMenu outIndex | self primitive: 'primitiveGetIndMenuItemWithCommandID' parameters: #(Oop Oop). self var: 'menuHandle' type: 'MenuHandle'. self var: 'commandID' type: 'MenuCommand'. self var: 'applicationMenu' type: 'MenuHandle'. self var: 'outIndex' type: 'MenuItemIndex'.
menuHandle := self cCoerce: (interpreterProxy
positiveMachineIntegerValueOf: menuHandleOop) to: 'MenuHandle'.
menuHandle := self cCoerce: (interpreterProxy
positive32BitValueOf: menuHandleOop) to: 'MenuHandle'. commandID := self cCoerce: (interpreterProxy positive32BitValueOf: aCommandID) to: 'MenuCommand'. (self ioCheckMenuHandle: menuHandle) ifFalse: [^interpreterProxy success: false]. self cCode: '#if TARGET_API_MAC_CARBON GetIndMenuItemWithCommandID(menuHandle, kHICommandHide, 1, &applicationMenu, &outIndex); #endif' inSmalltalk:[menuHandle]. ^outIndex asSmallIntegerObj !
Item was changed: ----- Method: MacMenubarPlugin>>primitiveGetIndMenuWithCommandID:commandID: (in category 'system primitives') ----- primitiveGetIndMenuWithCommandID: menuHandleOop commandID: aCommandID
| menuHandle commandID applicationMenu outIndex |
| menuHandle MenuItemIndex commandID applicationMenu outIndex | self primitive: 'primitiveGetIndMenuWithCommandID' parameters: #(Oop Oop). self var: 'menuHandle' type: 'MenuHandle'. self var: 'commandID' type: 'MenuCommand'. self var: 'applicationMenu' type: 'MenuHandle'. self var: 'outIndex' type: 'MenuItemIndex'.
menuHandle := self cCoerce: (interpreterProxy
positiveMachineIntegerValueOf: menuHandleOop) to: 'MenuHandle'.
menuHandle := self cCoerce: (interpreterProxy
positive32BitValueOf: menuHandleOop) to: 'MenuHandle'. commandID := self cCoerce: (interpreterProxy positive32BitValueOf: aCommandID) to: 'MenuCommand'. (self ioCheckMenuHandle: menuHandle) ifFalse: [^interpreterProxy success: false]. self cCode: '#if TARGET_API_MAC_CARBON GetIndMenuItemWithCommandID(menuHandle, kHICommandHide, 1, &applicationMenu, &outIndex); #endif ' inSmalltalk:[menuHandle].
outIndex asSmallIntegerObj. "to avoid elimination of the
variable..."
^interpreterProxy positiveMachineIntegerFor: (self cCoerce:
applicationMenu to: 'long')
^interpreterProxy positive32BitIntegerFor: (self cCoerce:
applicationMenu to: 'long')
!
Item was changed: ----- Method: MacMenubarPlugin>>primitiveGetItemCmd:item: (in category 'system primitives') ----- primitiveGetItemCmd: menuHandleOop item: anInteger | menuHandle aCharacter | <var: 'menuHandle' type: 'MenuHandle'> <var: #aCharacter type: 'CharParameter'> self primitive: 'primitiveGetItemCmd' parameters: #(Oop SmallInteger).
menuHandle := self cCoerce: (interpreterProxy
positiveMachineIntegerValueOf: menuHandleOop) to: 'MenuHandle'.
menuHandle := self cCoerce: (interpreterProxy
positive32BitValueOf: menuHandleOop) to: 'MenuHandle'. (self ioCheckMenuHandle: menuHandle) ifFalse: [^interpreterProxy success: false]. aCharacter := 0. self cCode: 'GetItemCmd(menuHandle,anInteger,&aCharacter)' inSmalltalk:[menuHandle]. ^aCharacter asSmallIntegerObj
!
Item was changed: ----- Method: MacMenubarPlugin>>primitiveGetItemIcon:item: (in category 'system primitives') ----- primitiveGetItemIcon: menuHandleOop item: anInteger | menuHandle iconIndex | self primitive: 'primitiveGetItemIcon' parameters: #(Oop SmallInteger). self var: 'menuHandle' type: 'MenuHandle'. self var: 'iconIndex' type: 'short'.
menuHandle := self cCoerce: (interpreterProxy
positiveMachineIntegerValueOf: menuHandleOop) to: 'MenuHandle'.
menuHandle := self cCoerce: (interpreterProxy
positive32BitValueOf: menuHandleOop) to: 'MenuHandle'. (self ioCheckMenuHandle: menuHandle) ifFalse: [^interpreterProxy success: false]. iconIndex := 0. self cCode: 'GetItemIcon(menuHandle,anInteger,&iconIndex)' inSmalltalk:[menuHandle]. ^iconIndex asSmallIntegerObj !
Item was changed: ----- Method: MacMenubarPlugin>>primitiveGetItemMark:item: (in category 'system primitives') ----- primitiveGetItemMark: menuHandleOop item: anInteger | menuHandle aCharacter | <var: 'menuHandle' type: 'MenuHandle'> <var: #aCharacter type: 'CharParameter'> self primitive: 'primitiveGetItemMark' parameters: #(Oop SmallInteger).
menuHandle := self cCoerce: (interpreterProxy
positiveMachineIntegerValueOf: menuHandleOop) to: 'MenuHandle'.
menuHandle := self cCoerce: (interpreterProxy
positive32BitValueOf: menuHandleOop) to: 'MenuHandle'. (self ioCheckMenuHandle: menuHandle) ifFalse: [^interpreterProxy success: false]. aCharacter := 0. self cCode: 'GetItemMark(menuHandle,anInteger,&aCharacter)' inSmalltalk:[menuHandle]. ^aCharacter asSmallIntegerObj
!
Item was changed: ----- Method: MacMenubarPlugin>>primitiveGetItemStyle:item: (in category 'system primitives') ----- primitiveGetItemStyle: menuHandleOop item: anInteger | menuHandle chStyle | self primitive: 'primitiveGetItemStyle' parameters: #(Oop SmallInteger). self var: 'menuHandle' type: 'MenuHandle'. self var: 'chStyle' type: 'Style'.
menuHandle := self cCoerce: (interpreterProxy
positiveMachineIntegerValueOf: menuHandleOop) to: 'MenuHandle'.
menuHandle := self cCoerce: (interpreterProxy
positive32BitValueOf: menuHandleOop) to: 'MenuHandle'. (self ioCheckMenuHandle: menuHandle) ifFalse: [^interpreterProxy success: false]. chStyle := 0. self cCode: 'GetItemStyle(menuHandle,anInteger,&chStyle)' inSmalltalk:[menuHandle]. ^chStyle asSmallIntegerObj
!
Item was changed: ----- Method: MacMenubarPlugin>>primitiveGetMenuBar (in category 'system primitives') ----- primitiveGetMenuBar | menuHandle | self primitive: 'primitiveGetMenuBar' parameters: #(). self var: 'menuHandle' type: 'Handle'. menuHandle := self cCode: 'GetMenuBar()' inSmalltalk:[0].
^interpreterProxy positiveMachineIntegerFor: (self cCoerce:
menuHandle to: 'long')!
^interpreterProxy positive32BitIntegerFor: (self cCoerce:
menuHandle to: 'long')!
Item was changed: ----- Method: MacMenubarPlugin>>primitiveGetMenuHandle: (in category 'system primitives') ----- primitiveGetMenuHandle: menuID | menuHandle | self primitive: 'primitiveGetMenuHandle' parameters: #(SmallInteger). self var: 'menuHandle' type: 'MenuHandle'. self var: 'menuID' type: 'MenuID'. menuHandle := self cCode: 'GetMenuHandle(menuID)' inSmalltalk:[0].
^interpreterProxy positiveMachineIntegerFor: (self cCoerce:
menuHandle to: 'long')!
^interpreterProxy positive32BitIntegerFor: (self cCoerce:
menuHandle to: 'long')!
Item was changed: ----- Method: MacMenubarPlugin>>primitiveGetMenuID: (in category 'system primitives') ----- primitiveGetMenuID: menuHandleOop | menuHandle menuID |
self primitive: 'primitiveGetMenuID' parameters: #(Oop ). self var: 'menuHandle' type: 'MenuHandle'. self var: 'menuID' type: 'MenuID'.
menuHandle := self cCoerce: (interpreterProxy
positiveMachineIntegerValueOf: menuHandleOop) to: 'MenuHandle'.
menuHandle := self cCoerce: (interpreterProxy
positive32BitValueOf: menuHandleOop) to: 'MenuHandle'. (self ioCheckMenuHandle: menuHandle) ifFalse: [^interpreterProxy success: false]. self cCode: 'menuID = GetMenuID(menuHandle)' inSmalltalk:[menuHandle]. ^menuID asSmallIntegerObj !
Item was changed: ----- Method: MacMenubarPlugin>>primitiveGetMenuItemCommandID:item: (in category 'system primitives') ----- primitiveGetMenuItemCommandID: menuHandleOop item: anInteger | menuHandle outCommandID | self primitive: 'primitiveGetMenuItemCommandID' parameters: #(Oop SmallInteger). self var: 'menuHandle' type: 'MenuHandle'. self var: 'outCommandID' type: 'MenuCommand'. outCommandID := 0.
menuHandle := self cCoerce: (interpreterProxy
positiveMachineIntegerValueOf: menuHandleOop) to: 'MenuHandle'.
menuHandle := self cCoerce: (interpreterProxy
positive32BitValueOf: menuHandleOop) to: 'MenuHandle'. (self ioCheckMenuHandle: menuHandle) ifFalse: [^interpreterProxy success: false]. self cCode: 'GetMenuItemCommandID(menuHandle,anInteger,&outCommandID)' inSmalltalk:[menuHandle]. ^interpreterProxy positive32BitIntegerFor: outCommandID !
Item was changed: ----- Method: MacMenubarPlugin>>primitiveGetMenuItemFontID:item: (in category 'system primitives') ----- primitiveGetMenuItemFontID: menuHandleOop item: anInteger | menuHandle outFontID | self primitive: 'primitiveGetMenuItemFontID' parameters: #(Oop SmallInteger). self var: 'menuHandle' type: 'MenuHandle'. self var: 'outFontID' type: 'SInt16'. outFontID := 0.
menuHandle := self cCoerce: (interpreterProxy
positiveMachineIntegerValueOf: menuHandleOop) to: 'MenuHandle'.
menuHandle := self cCoerce: (interpreterProxy
positive32BitValueOf: menuHandleOop) to: 'MenuHandle'. (self ioCheckMenuHandle: menuHandle) ifFalse: [^interpreterProxy success: false]. self cCode: 'GetMenuItemFontID(menuHandle,anInteger,&outFontID)' inSmalltalk:[menuHandle]. ^outFontID asSmallIntegerObj !
Item was changed: ----- Method: MacMenubarPlugin>>primitiveGetMenuItemHierarchicalID:item: (in category 'system primitives') ----- primitiveGetMenuItemHierarchicalID: menuHandleOop item: anInteger | menuHandle outHierID | self primitive: 'primitiveGetMenuItemHierarchicalID' parameters: #(Oop SmallInteger ). self var: 'menuHandle' type: 'MenuHandle'. self var: 'outHierID' type: 'MenuID'.
menuHandle := self cCoerce: (interpreterProxy
positiveMachineIntegerValueOf: menuHandleOop) to: 'MenuHandle'.
menuHandle := self cCoerce: (interpreterProxy
positive32BitValueOf: menuHandleOop) to: 'MenuHandle'. (self ioCheckMenuHandle: menuHandle) ifFalse: [^interpreterProxy success: false]. outHierID := 0. self cCode: 'GetMenuItemHierarchicalID(menuHandle,anInteger,&outHierID)' inSmalltalk:[menuHandle]. ^outHierID asSmallIntegerObj
!
Item was changed: ----- Method: MacMenubarPlugin>>primitiveGetMenuItemKeyGlyph:item: (in category 'system primitives') ----- primitiveGetMenuItemKeyGlyph: menuHandleOop item: anInteger | menuHandle outGlyph | self primitive: 'primitiveGetMenuItemKeyGlyph' parameters: #(Oop SmallInteger). self var: 'menuHandle' type: 'MenuHandle'. self var: 'outGlyph' type: 'SInt16'. outGlyph := 0.
menuHandle := self cCoerce: (interpreterProxy
positiveMachineIntegerValueOf: menuHandleOop) to: 'MenuHandle'.
menuHandle := self cCoerce: (interpreterProxy
positive32BitValueOf: menuHandleOop) to: 'MenuHandle'. (self ioCheckMenuHandle: menuHandle) ifFalse: [^interpreterProxy success: false]. self cCode: 'GetMenuItemKeyGlyph(menuHandle,anInteger,&outGlyph)' inSmalltalk:[menuHandle]. ^interpreterProxy positive32BitIntegerFor: outGlyph !
Item was changed: ----- Method: MacMenubarPlugin>>primitiveGetMenuItemModifiers:item: (in category 'system primitives') ----- primitiveGetMenuItemModifiers: menuHandleOop item: anInteger | menuHandle outModifers | self primitive: 'primitiveGetMenuItemModifiers' parameters: #(Oop SmallInteger ). self var: 'menuHandle' type: 'MenuHandle'. self var: 'outModifers' type: 'Style'.
menuHandle := self cCoerce: (interpreterProxy
positiveMachineIntegerValueOf: menuHandleOop) to: 'MenuHandle'.
menuHandle := self cCoerce: (interpreterProxy
positive32BitValueOf: menuHandleOop) to: 'MenuHandle'. (self ioCheckMenuHandle: menuHandle) ifFalse: [^interpreterProxy success: false]. outModifers := 0. self cCode: 'GetMenuItemModifiers(menuHandle,anInteger,&outModifers)' inSmalltalk:[menuHandle]. ^outModifers asSmallIntegerObj
!
Item was changed: ----- Method: MacMenubarPlugin>>primitiveGetMenuItemText:item: (in category 'system primitives') ----- primitiveGetMenuItemText: menuHandleOop item: anInteger | menuHandle size oop ptr aString | <var: 'menuHandle' type: 'MenuHandle'> <var: #aString type: 'Str255 '> <var: #ptr type: 'char *'> self primitive: 'primitiveGetMenuItemText' parameters: #(Oop SmallInteger).
menuHandle := self cCoerce: (interpreterProxy
positiveMachineIntegerValueOf: menuHandleOop) to: 'MenuHandle'.
menuHandle := self cCoerce: (interpreterProxy
positive32BitValueOf: menuHandleOop) to: 'MenuHandle'. (self ioCheckMenuHandle: menuHandle) ifFalse: [^interpreterProxy success: false]. aString at: 0 put: 0. self cCode: 'GetMenuItemText(menuHandle,anInteger,aString)' inSmalltalk:[menuHandle]. size := self cCode: 'aString[0]' inSmalltalk: [0]. oop := interpreterProxy instantiateClass: interpreterProxy classString indexableSize: size. ptr := interpreterProxy firstIndexableField: oop. 0 to: size-1 do:[:i| ptr at: i put: (aString at: (i+1))]. ^oop
!
Item was changed: ----- Method: MacMenubarPlugin>>primitiveGetMenuItemTextEncoding:item: (in category 'system primitives') ----- primitiveGetMenuItemTextEncoding: menuHandleOop item: anInteger | menuHandle outScriptID | self primitive: 'primitiveGetMenuItemTextEncoding' parameters: #(Oop SmallInteger). self var: 'menuHandle' type: 'MenuHandle'. self var: 'outScriptID' type: 'TextEncoding'.
menuHandle := self cCoerce: (interpreterProxy
positiveMachineIntegerValueOf: menuHandleOop) to: 'MenuHandle'.
menuHandle := self cCoerce: (interpreterProxy
positive32BitValueOf: menuHandleOop) to: 'MenuHandle'. (self ioCheckMenuHandle: menuHandle) ifFalse: [^interpreterProxy success: false]. self cCode: 'GetMenuItemTextEncoding(menuHandle,anInteger,&outScriptID)' inSmalltalk:[menuHandle]. ^interpreterProxy positive32BitIntegerFor: outScriptID!
Item was changed: ----- Method: MacMenubarPlugin>>primitiveGetMenuTitle: (in category 'system primitives') ----- primitiveGetMenuTitle: menuHandleOop | menuHandle size oop ptr aString | <var: 'menuHandle' type: 'MenuHandle'> <var: #aString type: 'Str255 '> <var: #ptr type: 'char *'> self primitive: 'primitiveGetMenuTitle' parameters: #(Oop).
menuHandle := self cCoerce: (interpreterProxy
positiveMachineIntegerValueOf: menuHandleOop) to: 'MenuHandle'.
menuHandle := self cCoerce: (interpreterProxy
positive32BitValueOf: menuHandleOop) to: 'MenuHandle'. (self ioCheckMenuHandle: menuHandle) ifFalse: [^interpreterProxy success: false]. aString at: 0 put: 0. self cCode: 'GetMenuTitle(menuHandle,aString)' inSmalltalk:[menuHandle]. size := self cCode: 'aString[0]' inSmalltalk: [0]. oop := interpreterProxy instantiateClass: interpreterProxy classString indexableSize: size. ptr := interpreterProxy firstIndexableField: oop. 0 to: size-1 do:[:i| ptr at: i put: (aString at: (i+1))]. ^oop
!
Item was changed: ----- Method: MacMenubarPlugin>>primitiveInsertFontResMenu:afterItem:scriptFilter: (in category 'system primitives') ----- primitiveInsertFontResMenu: menuHandleOop afterItem: afterItemInteger scriptFilter: scriptFilterInteger | menuHandle | self primitive: 'primitiveInsertFontResMenu' parameters: #(Oop SmallInteger SmallInteger). self var: 'menuHandle' type: 'MenuHandle'.
menuHandle := self cCoerce: (interpreterProxy
positiveMachineIntegerValueOf: menuHandleOop) to: 'MenuHandle'.
menuHandle := self cCoerce: (interpreterProxy
positive32BitValueOf: menuHandleOop) to: 'MenuHandle'. (self ioCheckMenuHandle: menuHandle) ifFalse: [^interpreterProxy success: false]. self cCode: 'InsertFontResMenu(menuHandle,afterItemInteger,scriptFilterInteger)' inSmalltalk:[menuHandle]. ^nil !
Item was changed: ----- Method: MacMenubarPlugin>>primitiveInsertIntlResMenu:theType:afterItem:scriptFilter: (in category 'system primitives') ----- primitiveInsertIntlResMenu: menuHandleOop theType: aResType afterItem: afterItemInteger scriptFilter: scriptFilterInteger | menuHandle resType | self primitive: 'primitiveInsertIntlResMenu' parameters: #(Oop SmallInteger SmallInteger SmallInteger). self var: 'menuHandle' type: 'MenuHandle'. self var: 'resType' type: 'ResType'.
menuHandle := self cCoerce: (interpreterProxy
positiveMachineIntegerValueOf: menuHandleOop) to: 'MenuHandle'.
menuHandle := self cCoerce: (interpreterProxy
positive32BitValueOf: menuHandleOop) to: 'MenuHandle'. (self ioCheckMenuHandle: menuHandle) ifFalse: [^interpreterProxy success: false]. resType := self cCoerce: (interpreterProxy positive32BitValueOf: aResType) to: 'ResType'. self cCode: 'InsertIntlResMenu(menuHandle,resType,afterItemInteger,scriptFilterInteger)' inSmalltalk:[menuHandle]. ^nil !
Item was changed: ----- Method: MacMenubarPlugin>>primitiveInsertMenu:beforeID: (in category 'system primitives') ----- primitiveInsertMenu: menuHandleOop beforeID: anInteger | menuHandle | self primitive: 'primitiveInsertMenu' parameters: #(Oop SmallInteger). self var: 'menuHandle' type: 'MenuHandle'. self var: 'anInteger' type: 'MenuID'.
menuHandle := self cCoerce: (interpreterProxy
positiveMachineIntegerValueOf: menuHandleOop) to: 'MenuHandle'.
menuHandle := self cCoerce: (interpreterProxy
positive32BitValueOf: menuHandleOop) to: 'MenuHandle'. (self ioCheckMenuHandle: menuHandle) ifFalse: [^interpreterProxy success: false]. self cCode: 'InsertMenu(menuHandle,anInteger)' inSmalltalk:[menuHandle]. ^nil!
Item was changed: ----- Method: MacMenubarPlugin>>primitiveInsertMenuItem:itemString:afterItem: (in category 'system primitives') ----- primitiveInsertMenuItem: menuHandleOop itemString: str255 afterItem: anInteger | menuHandle constStr255 | self primitive: 'primitiveInsertMenuItem' parameters: #(Oop ByteArray SmallInteger). self var: 'menuHandle' type: 'MenuHandle'. self var: 'constStr255' type: 'ConstStr255Param'.
menuHandle := self cCoerce: (interpreterProxy
positiveMachineIntegerValueOf: menuHandleOop) to: 'MenuHandle'.
menuHandle := self cCoerce: (interpreterProxy
positive32BitValueOf: menuHandleOop) to: 'MenuHandle'. (self ioCheckMenuHandle: menuHandle) ifFalse: [^interpreterProxy success: false]. constStr255 := self cCoerce: str255 to: 'ConstStr255Param'. self cCode: 'InsertMenuItem(menuHandle,constStr255,anInteger)' inSmalltalk:[menuHandle]. ^nil !
Item was changed: ----- Method: MacMenubarPlugin>>primitiveIsMenuItemEnabled:item: (in category 'system primitives') ----- primitiveIsMenuItemEnabled: menuHandleOop item: anInteger
| menuHandle result | self primitive: 'primitiveIsMenuItemEnabled' parameters: #(Oop SmallInteger). self var: 'menuHandle' type: 'MenuHandle'.
menuHandle := self cCoerce: (interpreterProxy
positiveMachineIntegerValueOf: menuHandleOop) to: 'MenuHandle'.
menuHandle := self cCoerce: (interpreterProxy
positive32BitValueOf: menuHandleOop) to: 'MenuHandle'. (self ioCheckMenuHandle: menuHandle) ifFalse: [^interpreterProxy success: false]. result := self cCode: 'IsMenuItemEnabled(menuHandle,anInteger)' inSmalltalk:[0]. ^result asOop: Boolean!
Item was changed: ----- Method: MacMenubarPlugin>>primitiveIsMenuItemIconEnabled:item: (in category 'system primitives') ----- primitiveIsMenuItemIconEnabled: menuHandleOop item: anInteger
| menuHandle result | self primitive: 'primitiveIsMenuItemIconEnabled' parameters: #(Oop SmallInteger). self var: 'menuHandle' type: 'MenuHandle'.
menuHandle := self cCoerce: (interpreterProxy
positiveMachineIntegerValueOf: menuHandleOop) to: 'MenuHandle'.
menuHandle := self cCoerce: (interpreterProxy
positive32BitValueOf: menuHandleOop) to: 'MenuHandle'. (self ioCheckMenuHandle: menuHandle) ifFalse: [^interpreterProxy success: false]. result := self cCode: 'IsMenuItemIconEnabled(menuHandle,anInteger)' inSmalltalk:[0]. ^result asOop: Boolean!
Item was changed: ----- Method: MacMenubarPlugin>>primitiveNewMenu:menuTitle: (in category 'system primitives') ----- primitiveNewMenu: menuID menuTitle: menuTitle
| menuHandle constStr255 | self primitive: 'primitiveNewMenu' parameters: #(SmallInteger ByteArray). self var: 'menuHandle' type: 'MenuHandle'. self var: 'constStr255' type: 'ConstStr255Param'. self var: 'menuID' type: 'MenuID'. constStr255 := self cCoerce: menuTitle to: 'ConstStr255Param'. menuHandle := self cCode: 'NewMenu(menuID,constStr255)'
inSmalltalk:[0].
^interpreterProxy positiveMachineIntegerFor: (self cCoerce:
menuHandle to: 'long')!
^interpreterProxy positive32BitIntegerFor: (self cCoerce:
menuHandle to: 'long')!
Item was changed: ----- Method: MacMenubarPlugin>>primitiveSetItemCmd:item:cmdChar: (in category 'system primitives') ----- primitiveSetItemCmd: menuHandleOop item: anInteger cmdChar: anIntegerCmdChar | menuHandle aCharacter | <var: 'menuHandle' type: 'MenuHandle'> <var: #aCharacter type: 'CharParameter '> self primitive: 'primitiveSetItemCmd' parameters: #(Oop SmallInteger SmallInteger).
menuHandle := self cCoerce: (interpreterProxy
positiveMachineIntegerValueOf: menuHandleOop) to: 'MenuHandle'.
menuHandle := self cCoerce: (interpreterProxy
positive32BitValueOf: menuHandleOop) to: 'MenuHandle'. (self ioCheckMenuHandle: menuHandle) ifFalse: [^interpreterProxy success: false]. aCharacter := anIntegerCmdChar. self cCode: 'SetItemCmd(menuHandle,anInteger,aCharacter)' inSmalltalk:[menuHandle]. ^nil
!
Item was changed: ----- Method: MacMenubarPlugin>>primitiveSetItemIcon:item:iconIndex: (in category 'system primitives') ----- primitiveSetItemIcon: menuHandleOop item: anInteger iconIndex: aIconIndexInteger | menuHandle | self primitive: 'primitiveSetItemIcon' parameters: #(Oop SmallInteger SmallInteger). self var: 'menuHandle' type: 'MenuHandle'.
menuHandle := self cCoerce: (interpreterProxy
positiveMachineIntegerValueOf: menuHandleOop) to: 'MenuHandle'.
menuHandle := self cCoerce: (interpreterProxy
positive32BitValueOf: menuHandleOop) to: 'MenuHandle'. (self ioCheckMenuHandle: menuHandle) ifFalse: [^interpreterProxy success: false]. self cCode: 'SetItemIcon(menuHandle,anInteger,aIconIndexInteger)' inSmalltalk:[menuHandle]. ^nil
!
Item was changed: ----- Method: MacMenubarPlugin>>primitiveSetItemMark:item:markChar: (in category 'system primitives') ----- primitiveSetItemMark: menuHandleOop item: anInteger markChar: aMarkChar | menuHandle aCharacter | <var: 'menuHandle' type: 'MenuHandle'> <var: #aCharacter type: 'CharParameter '> self primitive: 'primitiveSetItemMark' parameters: #(Oop SmallInteger SmallInteger).
menuHandle := self cCoerce: (interpreterProxy
positiveMachineIntegerValueOf: menuHandleOop) to: 'MenuHandle'.
menuHandle := self cCoerce: (interpreterProxy
positive32BitValueOf: menuHandleOop) to: 'MenuHandle'. (self ioCheckMenuHandle: menuHandle) ifFalse: [^interpreterProxy success: false]. aCharacter := aMarkChar. self cCode: 'SetItemMark(menuHandle,anInteger,aCharacter)' inSmalltalk:[menuHandle]. ^nil
!
Item was changed: ----- Method: MacMenubarPlugin>>primitiveSetItemStyle:item:styleParameter: (in category 'system primitives') ----- primitiveSetItemStyle: menuHandleOop item: anInteger styleParameter: chStyleInteger | menuHandle | self primitive: 'primitiveSetItemStyle' parameters: #(Oop SmallInteger SmallInteger). self var: 'menuHandle' type: 'MenuHandle'.
menuHandle := self cCoerce: (interpreterProxy
positiveMachineIntegerValueOf: menuHandleOop) to: 'MenuHandle'.
menuHandle := self cCoerce: (interpreterProxy
positive32BitValueOf: menuHandleOop) to: 'MenuHandle'. (self ioCheckMenuHandle: menuHandle) ifFalse: [^interpreterProxy success: false]. self cCode: 'SetItemStyle(menuHandle,anInteger,chStyleInteger)' inSmalltalk:[menuHandle]. ^nil
!
Item was changed: ----- Method: MacMenubarPlugin>>primitiveSetMenuBar: (in category 'system primitives') ----- primitiveSetMenuBar: menuHandleOop
| menuBarHandle | self primitive: 'primitiveSetMenuBar' parameters: #(Oop). self var: 'menuBarHandle' type: 'MenuBarHandle'.
menuBarHandle := self cCoerce: (interpreterProxy
positiveMachineIntegerValueOf: menuHandleOop) to: 'MenuBarHandle'.
menuBarHandle := self cCoerce: (interpreterProxy
positive32BitValueOf: menuHandleOop) to: 'MenuBarHandle'. self cCode: 'SetMenuBar(menuBarHandle)' inSmalltalk:[menuBarHandle]. ^nil!
Item was changed: ----- Method: MacMenubarPlugin>>primitiveSetMenuItemCommandID:item:menuCommand: (in category 'system primitives') ----- primitiveSetMenuItemCommandID: menuHandleOop item: anInteger menuCommand: inCommandID | menuHandle commandID | self primitive: 'primitiveSetMenuItemCommandID' parameters: #(Oop SmallInteger Oop). self var: 'menuHandle' type: 'MenuHandle'. self var: 'commandID' type: 'MenuCommand'.
menuHandle := self cCoerce: (interpreterProxy
positiveMachineIntegerValueOf: menuHandleOop) to: 'MenuHandle'.
menuHandle := self cCoerce: (interpreterProxy
positive32BitValueOf: menuHandleOop) to: 'MenuHandle'. commandID := self cCoerce: (interpreterProxy positive32BitValueOf: inCommandID) to: 'MenuCommand'. (self ioCheckMenuHandle: menuHandle) ifFalse: [^interpreterProxy success: false]. self cCode: 'SetMenuItemCommandID(menuHandle,anInteger,commandID)' inSmalltalk:[menuHandle]. ^nil !
Item was changed: ----- Method: MacMenubarPlugin>>primitiveSetMenuItemFontID:item:fontID: (in category 'system primitives') ----- primitiveSetMenuItemFontID: menuHandleOop item: anInteger fontID: aFontIDInteger | menuHandle | self primitive: 'primitiveSetMenuItemFontID' parameters: #(Oop SmallInteger SmallInteger). self var: 'menuHandle' type: 'MenuHandle'.
menuHandle := self cCoerce: (interpreterProxy
positiveMachineIntegerValueOf: menuHandleOop) to: 'MenuHandle'.
menuHandle := self cCoerce: (interpreterProxy
positive32BitValueOf: menuHandleOop) to: 'MenuHandle'. (self ioCheckMenuHandle: menuHandle) ifFalse: [^interpreterProxy success: false]. self cCode: 'SetMenuItemFontID(menuHandle,anInteger,aFontIDInteger)' inSmalltalk:[menuHandle]. ^nil !
Item was changed: ----- Method: MacMenubarPlugin>>primitiveSetMenuItemHierarchicalID:item:hierID: (in category 'system primitives') ----- primitiveSetMenuItemHierarchicalID: menuHandleOop item: anInteger hierID: aMenuID | menuHandle | self primitive: 'primitiveSetMenuItemHierarchicalID' parameters: #(Oop SmallInteger SmallInteger). self var: 'menuHandle' type: 'MenuHandle'. self var: 'menuID' type: 'MenuID'.
menuHandle := self cCoerce: (interpreterProxy
positiveMachineIntegerValueOf: menuHandleOop) to: 'MenuHandle'.
menuHandle := self cCoerce: (interpreterProxy
positive32BitValueOf: menuHandleOop) to: 'MenuHandle'. (self ioCheckMenuHandle: menuHandle) ifFalse: [^interpreterProxy success: false]. self cCode: 'SetMenuItemHierarchicalID(menuHandle,anInteger,aMenuID)' inSmalltalk:[menuHandle]. ^nil!
Item was changed: ----- Method: MacMenubarPlugin>>primitiveSetMenuItemKeyGlyph:item:glyph: (in category 'system primitives') ----- primitiveSetMenuItemKeyGlyph: menuHandleOop item: anInteger glyph: inGlyphInteger | menuHandle | self primitive: 'primitiveSetMenuItemKeyGlyph' parameters: #(Oop SmallInteger SmallInteger). self var: 'menuHandle' type: 'MenuHandle'.
menuHandle := self cCoerce: (interpreterProxy
positiveMachineIntegerValueOf: menuHandleOop) to: 'MenuHandle'.
menuHandle := self cCoerce: (interpreterProxy
positive32BitValueOf: menuHandleOop) to: 'MenuHandle'. (self ioCheckMenuHandle: menuHandle) ifFalse: [^interpreterProxy success: false]. self cCode: 'SetMenuItemKeyGlyph(menuHandle,anInteger,inGlyphInteger)' inSmalltalk:[menuHandle]. ^nil !
Item was changed: ----- Method: MacMenubarPlugin>>primitiveSetMenuItemModifiers:item:inModifiers: (in category 'system primitives') ----- primitiveSetMenuItemModifiers: menuHandleOop item: anInteger inModifiers: aUInt8 | menuHandle | self primitive: 'primitiveSetMenuItemModifiers' parameters: #(Oop SmallInteger SmallInteger). self var: 'menuHandle' type: 'MenuHandle'.
menuHandle := self cCoerce: (interpreterProxy
positiveMachineIntegerValueOf: menuHandleOop) to: 'MenuHandle'.
menuHandle := self cCoerce: (interpreterProxy
positive32BitValueOf: menuHandleOop) to: 'MenuHandle'. (self ioCheckMenuHandle: menuHandle) ifFalse: [^interpreterProxy success: false]. self cCode: 'SetMenuItemModifiers(menuHandle,anInteger,aUInt8)' inSmalltalk:[menuHandle]. ^nil!
Item was changed: ----- Method: MacMenubarPlugin>>primitiveSetMenuItemText:item:itemString: (in category 'system primitives') ----- primitiveSetMenuItemText: menuHandleOop item: anInteger itemString: str255 | menuHandle constStr255 | self primitive: 'primitiveSetMenuItemText' parameters: #(Oop SmallInteger ByteArray). self var: 'menuHandle' type: 'MenuHandle'. self var: 'constStr255' type: 'ConstStr255Param'.
menuHandle := self cCoerce: (interpreterProxy
positiveMachineIntegerValueOf: menuHandleOop) to: 'MenuHandle'.
menuHandle := self cCoerce: (interpreterProxy
positive32BitValueOf: menuHandleOop) to: 'MenuHandle'. (self ioCheckMenuHandle: menuHandle) ifFalse: [^interpreterProxy success: false]. constStr255 := self cCoerce: str255 to: 'ConstStr255Param'. self cCode: 'SetMenuItemText(menuHandle,anInteger,constStr255)' inSmalltalk:[menuHandle]. ^nil !
Item was changed: ----- Method: MacMenubarPlugin>>primitiveSetMenuItemTextEncoding:item:inScriptID: (in category 'system primitives') ----- primitiveSetMenuItemTextEncoding: menuHandleOop item: anInteger inScriptID: aTextEncodingOop | menuHandle inScriptID | self primitive: 'primitiveSetMenuItemTextEncoding' parameters: #(Oop SmallInteger Oop). self var: 'menuHandle' type: 'MenuHandle'. self var: 'inScriptID' type: 'TextEncoding'.
menuHandle := self cCoerce: (interpreterProxy
positiveMachineIntegerValueOf: menuHandleOop) to: 'MenuHandle'.
menuHandle := self cCoerce: (interpreterProxy
positive32BitValueOf: menuHandleOop) to: 'MenuHandle'. (self ioCheckMenuHandle: menuHandle) ifFalse: [^interpreterProxy success: false]. inScriptID := self cCoerce: (interpreterProxy positive32BitValueOf: aTextEncodingOop) to: 'TextEncoding'. self cCode: 'SetMenuItemTextEncoding(menuHandle,anInteger,inScriptID)' inSmalltalk:[menuHandle]. ^nil!
Item was changed: ----- Method: MacMenubarPlugin>>primitiveSetMenuTitle:title: (in category 'system primitives') ----- primitiveSetMenuTitle: menuHandleOop title: str255 | menuHandle constStr255 | self primitive: 'primitiveSetMenuTitle' parameters: #(Oop ByteArray). self var: 'menuHandle' type: 'MenuHandle'. self var: 'constStr255' type: 'ConstStr255Param'.
menuHandle := self cCoerce: (interpreterProxy
positiveMachineIntegerValueOf: menuHandleOop) to: 'MenuHandle'.
menuHandle := self cCoerce: (interpreterProxy
positive32BitValueOf: menuHandleOop) to: 'MenuHandle'. (self ioCheckMenuHandle: menuHandle) ifFalse: [^interpreterProxy success: false]. constStr255 := self cCoerce: str255 to: 'ConstStr255Param'. self cCode: 'SetMenuTitle(menuHandle,constStr255)' inSmalltalk:[menuHandle]. ^nil !
vm-dev@lists.squeakfoundation.org