[etoys-dev] Etoys: DrGeoII-Etoys-HilaireFernandes.7.mcz

commits at source.squeak.org commits at source.squeak.org
Sun Jun 13 18:38:38 EDT 2010


Bert Freudenberg uploaded a new version of DrGeoII-Etoys to project Etoys:
http://source.squeak.org/etoys/DrGeoII-Etoys-HilaireFernandes.7.mcz

==================== Summary ====================

Name: DrGeoII-Etoys-HilaireFernandes.7
Author: HilaireFernandes
Time: 2 June 2010, 9:57:23 pm
UUID: d246f960-6d3f-4daf-8982-bbce24a6ccf2
Ancestors: DrGeoII-Etoys-HilaireFernandes.6

Push DrGeo in Etoys Inbox

==================== Snapshot ====================

SystemOrganization addCategory: #'DrGeoII-Etoys'!

----- Method: DrGPointCostume>>getCurveAbscissa (in category '*DrGeoII-Etoys-scripting') -----
getCurveAbscissa
	(mathItem respondsTo: #abscissa)
		ifTrue: [^ mathItem exist
				ifTrue: [mathItem abscissa]
				ifFalse: [nil]]
		ifFalse: [^ nil]!

----- Method: DrGPointCostume>>getWorldX (in category '*DrGeoII-Etoys-scripting') -----
getWorldX
	^mathItem point x!

----- Method: DrGPointCostume>>getWorldY (in category '*DrGeoII-Etoys-scripting') -----
getWorldY
	^mathItem point y!

----- Method: DrGPointCostume>>setCurveAbscissa: (in category '*DrGeoII-Etoys-scripting') -----
setCurveAbscissa: aFloat 
	(mathItem respondsTo: #abscissa:)
		ifTrue: [mathItem setCurveAbscissa: aFloat.
			self domain updateAllMathItems]!

----- Method: DrGPointCostume>>setWorldX: (in category '*DrGeoII-Etoys-scripting') -----
setWorldX: aFloat
	self domain
		moveEvent: mathItem
		at: aFloat @ mathItem point y
!

----- Method: DrGPointCostume>>setWorldY: (in category '*DrGeoII-Etoys-scripting') -----
setWorldY: aFloat
	self domain
		moveEvent: mathItem
		at: mathItem point x @ aFloat
!

----- Method: DrGValueCostume>>getMathItemValue (in category '*DrGeoII-Etoys-scripting') -----
getMathItemValue
	^mathItem valueItem!

----- Method: DrGValueCostume>>setMathItemValue: (in category '*DrGeoII-Etoys-scripting') -----
setMathItemValue: aValue 
	| freeValue |
	freeValue := self mathItem.
	freeValue class = DrGFreeValueItem
		ifTrue: [freeValue valueItem: aValue.
			self domain updateAllMathItems .
			self redraw]!

----- Method: DrGValueMorph classSide>>additionsToViewerCategoryDrGeo (in category '*DrGeoII-Etoys-flexiblevocabularies-scripting') -----
additionsToViewerCategoryDrGeo
	^ #(drgeo (
(slot value 'The math item value' Number readWrite Player getMathItemValue Player setMathItemValue:)
)) !

----- Method: DrGValueMorph>>getMathItemValue (in category '*DrGeoII-Etoys-scripting') -----
getMathItemValue
	^costume getMathItemValue!

----- Method: DrGValueMorph>>setMathItemValue: (in category '*DrGeoII-Etoys-scripting') -----
setMathItemValue: aValue 
	costume setMathItemValue: aValue!

----- Method: Player>>getCurveAbscissa (in category '*DrGeoII-Etoys-slots') -----
getCurveAbscissa
	^costume getCurveAbscissa!

----- Method: Player>>getMathItemValue (in category '*DrGeoII-Etoys-slots') -----
getMathItemValue
	^costume getMathItemValue!

----- Method: Player>>getWorldX (in category '*DrGeoII-Etoys-slots') -----
getWorldX
	^costume getWorldX!

----- Method: Player>>getWorldY (in category '*DrGeoII-Etoys-slots') -----
getWorldY
	^costume getWorldY!

----- Method: Player>>setCurveAbscissa: (in category '*DrGeoII-Etoys-slots') -----
setCurveAbscissa: aFloat
	costume setCurveAbscissa: aFloat!

----- Method: Player>>setMathItemValue: (in category '*DrGeoII-Etoys-slots') -----
setMathItemValue: aValue
	^ costume setMathItemValue: aValue!

----- Method: Player>>setWorldX: (in category '*DrGeoII-Etoys-slots') -----
setWorldX: aFloat
	costume setWorldX: aFloat!

----- Method: Player>>setWorldY: (in category '*DrGeoII-Etoys-slots') -----
setWorldY: aFloat
	costume setWorldY: aFloat!

----- Method: DrGPointMorph classSide>>additionsToViewerCategoryDrGeo (in category '*DrGeoII-Etoys-flexiblevocabularies-scripting') -----
additionsToViewerCategoryDrGeo
^ # (drgeo (
(slot curveAbscissa 'The abscissa of this point on the curve' Number readWrite Player getCurveAbscissa Player setCurveAbscissa:)
(slot Xw 'The x coordinate in the DrGeoII world coordinate system' Number readWrite Player getWorldX Player setWorldX:) 
(slot Yw 'The y coordinate in the DrGeoII world coordinate system' Number readWrite Player getWorldY Player setWorldY:)
))!

----- Method: DrGPointMorph>>getCurveAbscissa (in category '*DrGeoII-Etoys-scripting') -----
getCurveAbscissa
	^costume getCurveAbscissa!

----- Method: DrGPointMorph>>getWorldX (in category '*DrGeoII-Etoys-scripting') -----
getWorldX
	^costume getWorldX!

----- Method: DrGPointMorph>>getWorldY (in category '*DrGeoII-Etoys-scripting') -----
getWorldY
	^costume getWorldY!

----- Method: DrGPointMorph>>setCurveAbscissa: (in category '*DrGeoII-Etoys-scripting') -----
setCurveAbscissa: aFloat
	costume setCurveAbscissa: aFloat!

----- Method: DrGPointMorph>>setWorldX: (in category '*DrGeoII-Etoys-scripting') -----
setWorldX: aFloat
	costume setWorldX: aFloat!

----- Method: DrGPointMorph>>setWorldY: (in category '*DrGeoII-Etoys-scripting') -----
setWorldY: aFloat
	costume setWorldY: aFloat!

----- Method: DrGPointMorph>>x: (in category '*DrGeoII-Etoys-scripting') -----
x: aNumber
| oldPosition newX |
	newX := costume drawable morphAbscissaToWorld: 
		(self referencePlayfield cartesianOrigin x + aNumber).
	oldPosition := costume mathItem point.
	costume drawable view domain 
		moveEvent: costume mathItem 
		at: newX at oldPosition y!

----- Method: DrGPointMorph>>y: (in category '*DrGeoII-Etoys-scripting') -----
y: aNumber
| oldPosition newY|
	newY := costume drawable morphOrdinateToWorld: 
		(self referencePlayfield cartesianOrigin y - aNumber + 0).
	oldPosition := costume mathItem point.
	costume drawable app domain 
		moveEvent: costume mathItem 
		at: oldPosition x @ newY!

BorderedMorph subclass: #DrGService
	instanceVariableNames: 'app area'
	classVariableNames: ''
	poolDictionaries: ''
	category: 'DrGeoII-Etoys'!

----- Method: DrGService classSide>>descriptionForPartsBin (in category 'parts bin') -----
descriptionForPartsBin
	^ (DescriptionForPartsBin
		formalName: 'Dr. Geo'
		categoryList: #('Graphics' 'Tools' )
		documentation: 'An interactive geometry canvas to draw dynamic geometric sketch. Open the Morph menu to get access to the construction tools and more.' translated
		globalReceiverSymbol: #DrGeo
		nativitySelector: #sample)
		sampleImageForm: DrGIcons angle!

----- Method: DrGService classSide>>in: (in category 'instance creation') -----
in: aDrgeo
	^ self basicNew app: aDrgeo;
		initialize!

----- Method: DrGService classSide>>with: (in category 'instance creation') -----
with: aDrgeoModel 
	^ self basicNew initialize: aDrgeoModel!

----- Method: DrGService>>add:menuItemBtn:to: (in category 'menu') -----
add: btnSelector menuItemBtn: array to: menu
	menu 
		add: array first 
		target: self
		selector: #giveMeButton:
		argument: btnSelector.
	menu lastItem 
		icon: (DrGIcons scaled16: array second);
		setBalloonText: array fourth  
		!

----- Method: DrGService>>addCustomMenuItems:hand: (in category 'menu') -----
addCustomMenuItems: menu hand: aHandMorph 
	"super addCustomMenuItems: menu hand: aHandMorph."
	| submenu |
	menu addLine.
	submenu := MenuMorph new.
	self addToolsMenuItems: submenu hand: aHandMorph.
	menu add: 'Dr. Geo tools' translated subMenu: submenu.
	submenu := MenuMorph new.
	self addGetButtonsMenuItems: submenu hand: aHandMorph.
	menu add: 'Give me Dr. Geo buttons' translated subMenu: submenu!

----- Method: DrGService>>addGetButtonsMenuItems:hand: (in category 'menu') -----
addGetButtonsMenuItems: menu hand: aHandMorph 
	"from this menu we can ask for buttons to plug arround"
	self addPointBtnMenuItems: menu hand: aHandMorph.
	self addLineBtnMenuItems: menu hand: aHandMorph.
	self addTransformationBtnMenuItems: menu hand: aHandMorph.
	self addNumericBtnMenuItems: menu hand: aHandMorph.
	self addMacroBtnMenuItems: menu hand: aHandMorph.
	self addOtherBtnMenuItems: menu hand: aHandMorph.!

----- Method: DrGService>>addLineBtnMenuItems:hand: (in category 'menu') -----
addLineBtnMenuItems: menu hand: aHandMorph 
	| subMenu |
	subMenu := MenuMorph new.
	self add: #lineBtn menuItemBtn: self drgeoPresenter lineButtonData to: subMenu.
	self add: #parallelBtn menuItemBtn: self drgeoPresenter parallelButtonData to: subMenu.
	self add: #perpendicularBtn menuItemBtn: self drgeoPresenter perpendicularButtonData to: subMenu.
	self add: #rayBtn menuItemBtn: self drgeoPresenter rayButtonData to: subMenu.
	self add: #segmentBtn menuItemBtn: self drgeoPresenter segmentButtonData to: subMenu.
	self add: #vectorBtn menuItemBtn: self drgeoPresenter vectorButtonData to: subMenu.
	self add: #circleBtn menuItemBtn: self drgeoPresenter circleButtonData to: subMenu.
	self add: #arcBtn menuItemBtn: self drgeoPresenter arcButtonData to: subMenu.	
	self add: #polygonBtn menuItemBtn: self drgeoPresenter polygonButtonData to: subMenu.	
	self add: #locusBtn menuItemBtn: self drgeoPresenter locusButtonData to: subMenu.
	menu add: ('Curves' translated) subMenu: subMenu!

----- Method: DrGService>>addLineMenuItems:hand: (in category 'menu') -----
addLineMenuItems: menu hand: aHandMorph 
	| subMenu |
	subMenu := MenuMorph new.
	self addMenuItem: self drgeoPresenter lineButtonData to: subMenu.
	self addMenuItem: self drgeoPresenter parallelButtonData to: 	subMenu.
	self addMenuItem: self drgeoPresenter perpendicularButtonData to: subMenu.
	self addMenuItem: self drgeoPresenter rayButtonData to: subMenu.
	self addMenuItem: self drgeoPresenter segmentButtonData to: subMenu.
	self addMenuItem: self drgeoPresenter vectorButtonData to: subMenu.
	self addMenuItem: self drgeoPresenter circleButtonData to: subMenu.
	self addMenuItem: self drgeoPresenter arcButtonData to: subMenu.
	self addMenuItem: self drgeoPresenter polygonButtonData to: subMenu.
	self addMenuItem: self drgeoPresenter locusButtonData to: subMenu.
	menu add: 'Curves' translated subMenu: subMenu!

----- Method: DrGService>>addMacroBtnMenuItems:hand: (in category 'menu') -----
addMacroBtnMenuItems: menu hand: aHandMorph 
	| subMenu |
	subMenu := MenuMorph new.
	self add: #macroBuildBtn menuItemBtn: self drgeoPresenter macroBuildButtonData to: subMenu.
	self add: #executeBtn menuItemBtn: self drgeoPresenter macroExecuteButtonData to: subMenu.
	menu add: 'Macro-construction' translated subMenu: subMenu!

----- Method: DrGService>>addMacroMenuItems:hand: (in category 'menu') -----
addMacroMenuItems: menu hand: aHandMorph 
	| subMenu |
	subMenu := MenuMorph new.
	self addMenuItem: self drgeoPresenter macroBuildButtonData to: subMenu.
	self addMenuItem: self drgeoPresenter macroExecuteButtonData to: subMenu.
	self addMenuItem: self drgeoPresenter macroDeleteButtonData to: subMenu.
	menu add: 'Macro-construction' translated subMenu: subMenu!

----- Method: DrGService>>addMenuItem:to: (in category 'menu') -----
addMenuItem: array to: menu
	menu 
		add: array first 
		target: self drgeoPresenter
		selector: array third.
	menu lastItem
		setBalloonText: array fourth  
		!

----- Method: DrGService>>addNumericBtnMenuItems:hand: (in category 'menu') -----
addNumericBtnMenuItems: menu hand: aHandMorph 
	| subMenu |
	subMenu := MenuMorph new.
	self add: #distanceBtn menuItemBtn: self drgeoPresenter distanceButtonData to: subMenu.
	self add: #angleBtn menuItemBtn: self drgeoPresenter angleButtonData to: subMenu.
	self add: #coordinatesBtn menuItemBtn: self drgeoPresenter coordinatesButtonData to: subMenu.
	self add: #scriptBtn menuItemBtn: self drgeoPresenter scriptButtonData to: subMenu.
	self add: #scriptEditBtn menuItemBtn: self drgeoPresenter scriptEditButtonData to: subMenu.
	menu add: 'Numerics' translated subMenu: subMenu!

----- Method: DrGService>>addNumericMenuItems:hand: (in category 'menu') -----
addNumericMenuItems: menu hand: aHandMorph 
	| subMenu |
	subMenu := MenuMorph new.
	self addMenuItem: self drgeoPresenter distanceButtonData to: subMenu.
	self addMenuItem: self drgeoPresenter angleButtonData to: subMenu.
	self addMenuItem: self drgeoPresenter coordinatesButtonData to: subMenu.
	self addMenuItem: self drgeoPresenter scriptEditButtonData to: subMenu.
	self addMenuItem: self drgeoPresenter scriptButtonData to: subMenu.
	menu add: 'Numerics' translated subMenu: subMenu!

----- Method: DrGService>>addOtherBtnMenuItems:hand: (in category 'menu') -----
addOtherBtnMenuItems: menu hand: aHandMorph 
	| subMenu |
	subMenu := MenuMorph new.
	self add: #undoBtn menuItemBtn: self drgeoPresenter undoButtonData to: subMenu.
	self add: #redoBtn menuItemBtn: self drgeoPresenter redoButtonData to: subMenu.
	self add: #eraserBtn menuItemBtn: self drgeoPresenter eraserButtonData to: subMenu.
	self add: #styleBtn menuItemBtn: self drgeoPresenter styleButtonData to: subMenu.
	self add: #propertyBtn menuItemBtn: self drgeoPresenter propertyButtonData to: subMenu.
	self add: #moveBtn menuItemBtn: self drgeoPresenter moveButtonData to: subMenu.		
	self add: #gridBtn menuItemBtn: self drgeoPresenter gridButtonData to: subMenu.
	self add: #gridStuckBtn menuItemBtn: self drgeoPresenter gridStuckButtonData to: subMenu.
	self add: #viewerBtn menuItemBtn: self drgeoPresenter viewerButtonData to: subMenu.
	menu add: 'Other' translated subMenu: subMenu!

----- Method: DrGService>>addOtherMenuItems:hand: (in category 'menu') -----
addOtherMenuItems: menu hand: aHandMorph 
	| subMenu |
	subMenu := MenuMorph new.
	self addMenuItem: self drgeoPresenter undoButtonData to: subMenu.
	self addMenuItem: self drgeoPresenter redoButtonData to: subMenu.
	self addMenuItem: self drgeoPresenter eraserButtonData to: subMenu.
	self addMenuItem: self drgeoPresenter styleButtonData to: subMenu.
	self addMenuItem: self drgeoPresenter propertyButtonData to: subMenu.
	self addMenuItem: self drgeoPresenter moveButtonData to: subMenu.
	subMenu 
		addUpdating: #gridString
		target: self drgeoPresenter
		selector: #gridOnOff
		argumentList: #();
		
		addUpdating: #griddedString
		target: self drgeoPresenter
		selector: #gridStuckOnOff
		argumentList: #().
	self addMenuItem: self drgeoPresenter viewerButtonData to: subMenu.
	self addMenuItem: self drgeoPresenter multipleModeButtonData to: subMenu.
	subMenu 		
		addUpdating: #createMultipleString
		target: self drgeoPresenter
		selector: #createMultipleOnOff
		argumentList: #();
		
		add: 'default position and scale' translated
		target: self area
		selector: #defaultScalePosition.
	menu add: 'Other' translated subMenu: subMenu!

----- Method: DrGService>>addPointBtnMenuItems:hand: (in category 'menu') -----
addPointBtnMenuItems: menu hand: aHandMorph 
	| subMenu |
	subMenu := MenuMorph new.
	self add: #freePointBtn menuItemBtn: self drgeoPresenter freePointButtonData to: subMenu.
	self add: #middlePointBtn menuItemBtn: self drgeoPresenter middleButtonData to: subMenu.	
	self add: #pointByCoordinatesBtn menuItemBtn: self drgeoPresenter pointByCoordinatesButtonData to: subMenu.
	menu add: 'Points' translated subMenu: subMenu!

----- Method: DrGService>>addPointMenuItems:hand: (in category 'menu') -----
addPointMenuItems: menu hand: aHandMorph 
	| subMenu |
	subMenu := MenuMorph new.
	self addMenuItem: self drgeoPresenter freePointButtonData to: subMenu.
	self addMenuItem: self drgeoPresenter middleButtonData to: subMenu.
	self addMenuItem: self drgeoPresenter pointByCoordinatesButtonData to: subMenu.
	menu add: 'Points' translated subMenu: subMenu!

----- Method: DrGService>>addToolsMenuItems:hand: (in category 'menu') -----
addToolsMenuItems: menu hand: aHandMorph 
	self addPointMenuItems: menu hand: aHandMorph.
	self addLineMenuItems: menu hand: aHandMorph.
	self addTransformationMenuItems: menu hand: aHandMorph.
	self addNumericMenuItems: menu hand: aHandMorph.
	self addMacroMenuItems: menu hand: aHandMorph.
	self addOtherMenuItems: menu hand: aHandMorph!

----- Method: DrGService>>addTransformationBtnMenuItems:hand: (in category 'menu') -----
addTransformationBtnMenuItems: menu hand: aHandMorph 
	| subMenu |
	subMenu := MenuMorph new.
	self add: #symmetryBtn menuItemBtn: self drgeoPresenter symmetryButtonData to: subMenu.
	self add: #reflectionBtn menuItemBtn: self drgeoPresenter reflectionButtonData to: subMenu.
	self add: #translationBtn menuItemBtn: self drgeoPresenter translationButtonData to: subMenu.
	self add: #rotationBtn menuItemBtn: self drgeoPresenter rotationButtonData to: subMenu.
	self add: #homothetyBtn menuItemBtn: self drgeoPresenter homothetyButtonData to: subMenu.
	menu add: 'Transformations' translated subMenu: subMenu!

----- Method: DrGService>>addTransformationMenuItems:hand: (in category 'menu') -----
addTransformationMenuItems: menu hand: aHandMorph 
	| subMenu |
	subMenu := MenuMorph new.
	self addMenuItem: self drgeoPresenter symmetryButtonData to: subMenu.
	self addMenuItem: self drgeoPresenter reflectionButtonData to: subMenu.
	self addMenuItem: self drgeoPresenter translationButtonData to: subMenu.
	self addMenuItem: self drgeoPresenter rotationButtonData to: subMenu.
	self addMenuItem: self drgeoPresenter homothetyButtonData to: subMenu.
	menu add: 'Transformations' translated subMenu: subMenu!

----- Method: DrGService>>angleBtn (in category 'button') -----
angleBtn
	^ self buttonAtHand: self drgeoPresenter angleButtonData !

----- Method: DrGService>>app (in category 'accessing') -----
app
	^ app!

----- Method: DrGService>>app: (in category 'accessing') -----
app: anObject
	app := anObject!

----- Method: DrGService>>arcBtn (in category 'button') -----
arcBtn
	^ self buttonAtHand: self drgeoPresenter arcButtonData !

----- Method: DrGService>>area (in category 'accessing') -----
area
	^ area!

----- Method: DrGService>>buttonAtHand: (in category 'button') -----
buttonAtHand: array
"
array first = button form
array second = symbol callback
array third = help string
"
	^ IconicButton new
		labelGraphic: (DrGIcons scaled24: array second);
		color: self colorButton;
		setBalloonText: array fourth translated;
		target: self drgeoPresenter;
		actionSelector: array third!

----- Method: DrGService>>circleBtn (in category 'button') -----
circleBtn
	^ self buttonAtHand: self drgeoPresenter circleButtonData !

----- Method: DrGService>>colorButton (in category 'button') -----
colorButton
	^ Color green alpha: 0.2!

----- Method: DrGService>>coordinatesBtn (in category 'button') -----
coordinatesBtn
	^ self buttonAtHand: self drgeoPresenter coordinatesButtonData !

----- Method: DrGService>>distanceBtn (in category 'button') -----
distanceBtn
	^ self buttonAtHand: self drgeoPresenter distanceButtonData !

----- Method: DrGService>>drgeoPresenter (in category 'accessing') -----
drgeoPresenter
	^ app presenter!

----- Method: DrGService>>editGroupBtn (in category 'button') -----
editGroupBtn
	^ self buttonAtHand: self drgeoPresenter editGroupButtonData !

----- Method: DrGService>>eraserBtn (in category 'button') -----
eraserBtn
	^ self buttonAtHand: self drgeoPresenter eraserButtonData !

----- Method: DrGService>>freePointBtn (in category 'button') -----
freePointBtn
	^ self buttonAtHand: self drgeoPresenter freePointButtonData!

----- Method: DrGService>>giveMeButton: (in category 'button') -----
giveMeButton: aSymbol
	self currentHand attachMorph: (self perform: aSymbol)!

----- Method: DrGService>>gridBtn (in category 'button') -----
gridBtn
	^ self buttonAtHand: self drgeoPresenter gridButtonData !

----- Method: DrGService>>gridStuckBtn (in category 'button') -----
gridStuckBtn
	^ self buttonAtHand: self drgeoPresenter gridStuckButtonData !

----- Method: DrGService>>groupBtn (in category 'button') -----
groupBtn
	^ self buttonAtHand: self drgeoPresenter groupButtonData !

----- Method: DrGService>>homothetyBtn (in category 'button') -----
homothetyBtn
	^ self buttonAtHand: self drgeoPresenter homothetyButtonData  !

----- Method: DrGService>>initialize (in category 'initialize-release') -----
initialize
	super initialize.
	self color: Color veryLightGray muchLighter .
	self borderWidth: 1.
	self clipSubmorphs: true.
	self layoutPolicy: ProportionalLayout new.
	area := DrGDrawable newOn: app.
	self installTools!

----- Method: DrGService>>installTools (in category 'initialize-release') -----
installTools 
	self 
		addMorph: area
	 	fullFrame: (LayoutFrame 
			fractions: (0 at 0 corner: 1 at 1) 
			offsets: (0 at 0 corner: -25@ -25)).
	self
		addMorph: self drgeoPresenter verticalWheel
		fullFrame: (LayoutFrame 
			fractions: (1 @ 1 corner: 1 @ 1) 
			offsets: (-25@ -120 corner: 0@ -20)).
	self
		addMorph: self drgeoPresenter horizontalWheel
		fullFrame: (LayoutFrame 
			fractions: (1 @ 1 corner: 1 @ 1) 
			offsets: (-120@ -25 corner: -20 at 0)).
	self
	 	addMorph: self drgeoPresenter zoomWheel 
		fullFrame: (LayoutFrame 
			fractions: (1 @ 0 corner: 1 @ 0) 
			offsets: (-25 at 0 corner: 0 at 100)).
	area layoutChanged!

----- Method: DrGService>>isApplication (in category 'testing') -----
isApplication
	^false!

----- Method: DrGService>>isService (in category 'testing') -----
isService
	^true!

----- Method: DrGService>>lineBtn (in category 'button') -----
lineBtn
	^ self buttonAtHand: self drgeoPresenter lineButtonData  !

----- Method: DrGService>>locusBtn (in category 'button') -----
locusBtn
	^ self buttonAtHand: self drgeoPresenter locusButtonData  !

----- Method: DrGService>>macroBuildBtn (in category 'button') -----
macroBuildBtn
	^ self buttonAtHand: self drgeoPresenter macroBuildButtonData   !

----- Method: DrGService>>macroDeleteBtn (in category 'button') -----
macroDeleteBtn
	^ self buttonAtHand: self drgeoPresenter macroDeleteButtonData    !

----- Method: DrGService>>macroExecuteBtn (in category 'button') -----
macroExecuteBtn
	^ self buttonAtHand: self drgeoPresenter macroExecuteButtonData    !

----- Method: DrGService>>middlePointBtn (in category 'button') -----
middlePointBtn
	^ self buttonAtHand: self drgeoPresenter middleButtonData    !

----- Method: DrGService>>moveBtn (in category 'button') -----
moveBtn
	^ self buttonAtHand: self drgeoPresenter moveButtonData     !

----- Method: DrGService>>multipleModeBtn (in category 'button') -----
multipleModeBtn          
	^ self buttonAtHand: self drgeoPresenter multipleModeButtonData        !

----- Method: DrGService>>parallelBtn (in category 'button') -----
parallelBtn
	^ self buttonAtHand: self drgeoPresenter parallelButtonData      !

----- Method: DrGService>>perpendicularBtn (in category 'button') -----
perpendicularBtn
	^ self buttonAtHand: self drgeoPresenter parallelButtonData!

----- Method: DrGService>>pointByCoordinatesBtn (in category 'button') -----
pointByCoordinatesBtn 
	^ self buttonAtHand: self drgeoPresenter pointByCoordinatesButtonData !

----- Method: DrGService>>polygonBtn (in category 'button') -----
polygonBtn 
	^ self buttonAtHand: self drgeoPresenter polygonButtonData !

----- Method: DrGService>>popupMenu (in category 'menu') -----
popupMenu
	"super addCustomMenuItems: menu hand: aHandMorph."
	| menu |
	menu := MenuMorph new title: 'Dr. Geo tools' translated.
	self addToolsMenuItems: menu hand: nil.
	menu addStayUpItem.
	menu popUpInWorld: World!

----- Method: DrGService>>propertyBtn (in category 'button') -----
propertyBtn  
	^ self buttonAtHand: self drgeoPresenter propertyButtonData !

----- Method: DrGService>>rayBtn (in category 'button') -----
rayBtn   
	^ self buttonAtHand: self drgeoPresenter rayButtonData!

----- Method: DrGService>>redoBtn (in category 'button') -----
redoBtn    
	^ self buttonAtHand: self drgeoPresenter redoButtonData !

----- Method: DrGService>>reflectionBtn (in category 'button') -----
reflectionBtn     
	^ self buttonAtHand: self drgeoPresenter reflectionButtonData  !

----- Method: DrGService>>rotationBtn (in category 'button') -----
rotationBtn      
	^ self buttonAtHand: self drgeoPresenter rotationButtonData  !

----- Method: DrGService>>scriptBtn (in category 'button') -----
scriptBtn      
	^ self buttonAtHand: self drgeoPresenter scriptButtonData   !

----- Method: DrGService>>scriptEditBtn (in category 'button') -----
scriptEditBtn      
	^ self buttonAtHand: self drgeoPresenter scriptEditButtonData   !

----- Method: DrGService>>segmentBtn (in category 'button') -----
segmentBtn      
	^ self buttonAtHand: self drgeoPresenter segmentButtonData    !

----- Method: DrGService>>styleBtn (in category 'button') -----
styleBtn      
	^ self buttonAtHand: self drgeoPresenter styleButtonData    !

----- Method: DrGService>>symmetryBtn (in category 'button') -----
symmetryBtn       
	^ self buttonAtHand: self drgeoPresenter symmetryButtonData     !

----- Method: DrGService>>translationBtn (in category 'button') -----
translationBtn        
	^ self buttonAtHand: self drgeoPresenter translationButtonData     !

----- Method: DrGService>>undoBtn (in category 'button') -----
undoBtn         
	^ self buttonAtHand: self drgeoPresenter undoButtonData      !

----- Method: DrGService>>vectorBtn (in category 'button') -----
vectorBtn         
	^ self buttonAtHand: self drgeoPresenter vectorButtonData      !

----- Method: DrGService>>viewerBtn (in category 'button') -----
viewerBtn         
	^ self buttonAtHand: self drgeoPresenter viewerButtonData       !



More information about the etoys-dev mailing list