Squeak Class Documentation category index | class index  
 
EnvelopeEditorMorph
  category: Sound-Interface
  superclass: RectangleMorph
  subclasses:

No comment. Sorry.

instance methods
  construction
  addControls
addCurves
addHandlesIn:
addKeyboard
buildGraphAreaIn:
buildView
colorForEnvelope:
curveChoices
handleOffset:
soundChoices

  editing
  acceptGraphPoint:at:
addEnvelopeNamed:
buildScalesIn:
clickOn:evt:from:
clickOnLine:evt:envelope:
constrain:adjacentTo:in:
deletePoint:
insertPointAfter:
limitHandleMove:event:from:
limitHandleMoveEvent:from:index:

  initialization
  editEnvelope:
editSound:
initOnSound:title:
initialize
soundBeingEdited
wantsRoundedCorners

  menu
  addCustomMenuItems:hand:
adjustScale:
chooseDenominator:
chooseEnvelope:
chooseFrom:envelopeItem:
chooseFrom:soundItem:
chooseSound:
editNewSound
editSoundNamed:
readFileNamed:
readFromDisk:
removeEnvelope
saveLibToDisk:
saveSound:
saveToDisk:
setDenominator:

  playing
  playNothing

  scaling
  extent:
maxTime
msFromX:
valueFromY:
xFromMs:
yFromValue:

  stepping
  step
stepTime

class methods
  as yet unclassified
  openOn:title:

instance methods
  construction top  
 

addControls


 

addCurves

Add the polyLine corresponding to the currently selected envelope,
and possibly all the others, too.


 

addHandlesIn:


 

addKeyboard


 

buildGraphAreaIn:


 

buildView


 

colorForEnvelope:


 

curveChoices


 

handleOffset:

This is the offset from position to the bottom vertex


 

soundChoices


  editing top  
 

acceptGraphPoint:at:


 

addEnvelopeNamed:


 

buildScalesIn:


 

clickOn:evt:from:


 

clickOnLine:evt:envelope:

Reorder the arguments for existing event handlers


 

constrain:adjacentTo:in:

Return xVal, restricted between points adjacent to vertX


 

deletePoint:

If the point is a limit point, return false,
otherwise, delete the point at ix, and return true.


 

insertPointAfter:

If there is not enough roon (in x) then return false.
Otherwise insert a point between ix and ix+1 and return true.


 

limitHandleMove:event:from:

index is the handle index = 1, 2 or 3


 

limitHandleMoveEvent:from:index:

Reorder the arguments for existing event handlers


  initialization top  
 

editEnvelope:


 

editSound:


 

initOnSound:title:


 

initialize


 

soundBeingEdited


 

wantsRoundedCorners

Default response is simple, fast, and false.
May be overridden to allow almost any morph to be rounded.


  menu top  
 

addCustomMenuItems:hand:

Add morph-specific items to the given menu which was invoked by the given hand. This method provides is invoked both from the halo-menu and from the control-menu regimes.


 

adjustScale:


 

chooseDenominator:


 

chooseEnvelope:


 

chooseFrom:envelopeItem:


 

chooseFrom:soundItem:


 

chooseSound:


 

editNewSound


 

editSoundNamed:


 

readFileNamed:


 

readFromDisk:


 

removeEnvelope


 

saveLibToDisk:

Save the library to disk


 

saveSound:


 

saveToDisk:


 

setDenominator:


  playing top  
 

playNothing


  scaling top  
 

extent:


 

maxTime


 

msFromX:


 

valueFromY:

The convention is that envelope values are between 0.0 and 1.0


 

xFromMs:


 

yFromValue:

The convention is that envelope values are between 0.0 and 1.0


  stepping top  
 

step

Do some periodic activity. Use startStepping/stopStepping to start and stop getting sent this message. The time between steps is specified by this morph's answer to the stepTime message. The generic version dispatches control to the player, if any. The nasty circumlocation about owner's transformation is necessitated by the flexing problem that the player remains in the properties dictionary both of the flex and the real morph. In the current architecture, only the top renderer's pointer to the player should actually be honored for the purpose of firing.


 

stepTime

Answer the desired time between steps in milliseconds. This default implementation requests that the 'step' method be called once every second.


class methods
  as yet unclassified top  
 

openOn:title:

EnvelopeEditorMorph openOn: (AbstractSound soundNamed: 'brass1') copy title: 'brass1'