--- a/Menu.st Sun Feb 01 16:00:39 1998 +0100
+++ b/Menu.st Mon Feb 02 13:30:22 1998 +0100
@@ -221,10 +221,11 @@
|item|
(item := self menuItemAt:anIndex) notNil ifTrue:[
- ^ item label
+ ^ item label
].
- ^ nil
+ ^ nil
+ "Modified: / 2.2.1998 / 13:28:32 / cg"
!
labelAtValue:aValue
@@ -232,13 +233,14 @@
"
|item|
- item := self menuAndSubmenusDetectItem:[:anItem| anItem value == aValue ].
+ item := self menuAndSubmenusDetectItem:[:anItem | anItem value == aValue ].
item notNil ifTrue:[
- ^ item label
+ ^ item label
].
- ^ nil
+ ^ nil
+ "Modified: / 2.2.1998 / 13:28:28 / cg"
!
labels
@@ -252,17 +254,17 @@
lines
"return the indexes of the menu items that are the last menu item in their group (except the very last)."
- | lines |
+ |lines groupSz|
- groupSizes size <= 1 ifTrue: [^Array new].
- lines := Array new: groupSizes size - 1.
- lines at: 1 put: groupSizes first.
- 2 to: groupSizes size -1 do:
- [:i |
- lines at: i put: (lines at: i - 1) + (groupSizes at: i)].
- ^lines
+ (groupSz := groupSizes size) <= 1 ifTrue: [^ Array new].
+ lines := Array new:(groupSz - 1).
+ lines at:1 put:groupSizes first.
+ 2 to:(groupSz-1) do:[:i |
+ lines at:i put:(lines at:(i - 1)) + (groupSizes at:i)
+ ].
+ ^ lines
- "Modified: / 31.10.1997 / 03:19:51 / cg"
+ "Modified: / 2.2.1998 / 13:28:19 / cg"
!
menuItemAt:index
@@ -313,31 +315,44 @@
!
numberOfItems
+ "return the number of items in this menu"
+
^ items size
- "Created: 6.3.1997 / 15:15:53 / cg"
+ "Created: / 6.3.1997 / 15:15:53 / cg"
+ "Modified: / 2.2.1998 / 13:26:40 / cg"
!
receiver
- "return the value of the instance variable 'receiver' (automatically generated)"
+ "return the receiver of the menu messages"
- ^ receiver!
+ ^ receiver
+
+ "Modified: / 2.2.1998 / 13:26:20 / cg"
+!
receiver:something
- "set the value of the instance variable 'receiver' (automatically generated)"
+ "set the receiver of the menu messages"
- receiver := something.!
+ receiver := something.
+
+ "Modified: / 2.2.1998 / 13:26:29 / cg"
+!
removeItem:aMenuItem
+ "remove an item from the menu"
+
|idx|
+
items notNil ifTrue:[
- idx := items identityIndexOf:aMenuItem.
- idx ~~ 0 ifTrue:[
- items removeAtIndex:idx
- ]
+ idx := items identityIndexOf:aMenuItem.
+ idx ~~ 0 ifTrue:[
+ items removeAtIndex:idx
+ ]
].
- "Created: 13.9.1997 / 10:27:31 / cg"
+ "Created: / 13.9.1997 / 10:27:31 / cg"
+ "Modified: / 2.2.1998 / 13:26:49 / cg"
!
valueAt:index
@@ -382,26 +397,30 @@
!
visibleMenuItemGroups
- | itemGroups visibleItemGroups nextItem |
+ |itemGroups visibleItemGroups nextItem|
- itemGroups := OrderedCollection new.
- nextItem := 1.
- groupSizes do: [:groupSize |
- itemGroups addLast: (items copyFrom: nextItem to: nextItem + groupSize - 1).
- nextItem := nextItem + groupSize].
- self hasHiddenItems ifFalse: [^itemGroups].
+ itemGroups := OrderedCollection new.
+ nextItem := 1.
+ groupSizes do:[:groupSize |
+ itemGroups addLast: (items copyFrom:nextItem to:nextItem + groupSize - 1).
+ nextItem := nextItem + groupSize
+ ].
+ self hasHiddenItems ifFalse:[^ itemGroups].
- "Remove the hidden items."
- visibleItemGroups := OrderedCollection new.
- itemGroups do: [:eachItemGroup |
- | visibleItemGroup |
- visibleItemGroup := eachItemGroup reject:
- [:eachMenuItem | eachMenuItem hidden].
- visibleItemGroup isEmpty ifFalse: [
- visibleItemGroups addLast: visibleItemGroup]].
- ^visibleItemGroups
+ "Remove the hidden items."
+ visibleItemGroups := OrderedCollection new.
+ itemGroups do:[:eachItemGroup |
+ |visibleItemGroup|
+
+ visibleItemGroup := eachItemGroup reject:[:eachMenuItem | eachMenuItem hidden].
+ visibleItemGroup isEmpty ifFalse:[
+ visibleItemGroups addLast: visibleItemGroup
+ ]
+ ].
+ ^ visibleItemGroups
"Created: / 27.10.1997 / 15:07:50 / cg"
+ "Modified: / 2.2.1998 / 13:25:52 / cg"
! !
!Menu methodsFor:'accessing resource'!
@@ -741,5 +760,5 @@
!Menu class methodsFor:'documentation'!
version
- ^ '$Header: /cvs/stx/stx/libview2/Menu.st,v 1.25 1998-01-19 08:25:15 ca Exp $'
+ ^ '$Header: /cvs/stx/stx/libview2/Menu.st,v 1.26 1998-02-02 12:30:22 cg Exp $'
! !