[squeak-dev] The Trunk: Morphic-ar.447.mcz

Chris Muller asqueaker at gmail.com
Fri Jul 2 17:48:17 UTC 2010


Catching up, just saw this.  Great!  I almost want to remove the
preference, just have it on all the time, unless there are
objections..


On Wed, Jun 23, 2010 at 7:19 PM,  <commits at source.squeak.org> wrote:
> Andreas Raab uploaded a new version of Morphic to project The Trunk:
> http://source.squeak.org/trunk/Morphic-ar.447.mcz
>
> ==================== Summary ====================
>
> Name: Morphic-ar.447
> Author: ar
> Time: 23 June 2010, 5:15:41.848 pm
> UUID: 38684bfc-94bf-194b-8d35-036b3cec996e
> Ancestors: Morphic-cmm.446
>
> Make windows resizable along their edges. Add preference covering the behavior.
>
> =============== Diff against Morphic-cmm.446 ===============
>
> Item was added:
> + ----- Method: LeftGripMorph>>ptName (in category 'accessing') -----
> + ptName
> +       ^#left!
>
> Item was added:
> + ----- Method: RightGripMorph>>ptName (in category 'accessing') -----
> + ptName
> +       ^#right!
>
> Item was added:
> + ----- Method: TopGripMorph>>resizeCursor (in category 'accessing') -----
> + resizeCursor
> +
> +       ^ Cursor resizeForEdge: #top!
>
> Item was added:
> + ----- Method: BorderGripMorph>>drawOn: (in category 'as yet unclassified') -----
> + drawOn: aCanvas
> +
> +       "aCanvas fillRectangle: self bounds color: Color red" "for debugging"
> + !
>
> Item was added:
> + ----- Method: LeftGripMorph>>initialize (in category 'initialize') -----
> + initialize
> +       super initialize.
> +       self vResizing: #spaceFill.!
>
> Item was added:
> + ----- Method: RightGripMorph>>initialize (in category 'initialize') -----
> + initialize
> +       super initialize.
> +       self vResizing: #spaceFill.!
>
> Item was added:
> + ----- Method: BottomGripMorph>>resizeCursor (in category 'accessing') -----
> + resizeCursor
> +
> +       ^ Cursor resizeForEdge: #top!
>
> Item was added:
> + CornerGripMorph subclass: #BorderGripMorph
> +       instanceVariableNames: ''
> +       classVariableNames: ''
> +       poolDictionaries: ''
> +       category: 'Morphic-Windows'!
>
> Item was added:
> + ----- Method: BottomGripMorph>>ptName (in category 'accessing') -----
> + ptName
> +       ^#bottom!
>
> Item was added:
> + ----- Method: TopGripMorph>>ptName (in category 'accessing') -----
> + ptName
> +       ^#top!
>
> Item was added:
> + ----- Method: SystemWindow class>>resizeAlongEdges (in category 'preferences') -----
> + resizeAlongEdges
> +       <preference: 'Resize Windows along edges'
> +               category: 'Morphic'
> +               description: 'When true, windows can be resized along their edges as well as the corners'
> +               type: #Boolean>
> +       ^ResizeAlongEdges ifNil:[true]!
>
> Item was added:
> + ----- Method: BottomGripMorph>>initialize (in category 'initialize') -----
> + initialize
> +       super initialize.
> +       self hResizing: #spaceFill.!
>
> Item was added:
> + ----- Method: TopGripMorph>>initialize (in category 'initialize') -----
> + initialize
> +       super initialize.
> +       self hResizing: #spaceFill.!
>
> Item was added:
> + ----- Method: LeftGripMorph>>apply: (in category 'target resize') -----
> + apply: delta
> +       | oldBounds |
> +       oldBounds := target bounds.
> +       target
> +               bounds: (oldBounds origin + (delta x @ 0) corner: oldBounds corner + (0 @ delta y))!
>
> Item was added:
> + ----- Method: RightGripMorph>>apply: (in category 'target resize') -----
> + apply: delta
> +       | oldBounds |
> +       oldBounds := target bounds.
> +       target
> +               bounds: (oldBounds origin + (delta x @ 0) corner: oldBounds corner + (0 @ delta y))!
>
> Item was added:
> + BorderGripMorph subclass: #RightGripMorph
> +       instanceVariableNames: ''
> +       classVariableNames: ''
> +       poolDictionaries: ''
> +       category: 'Morphic-Windows'!
>
> Item was added:
> + ----- Method: BottomGripMorph>>defaultHeight (in category 'initialize') -----
> + defaultHeight
> +
> +       ^ 5!
>
> Item was added:
> + ----- Method: TopGripMorph>>defaultHeight (in category 'initialize') -----
> + defaultHeight
> +
> +       ^ 5!
>
> Item was added:
> + BorderGripMorph subclass: #BottomGripMorph
> +       instanceVariableNames: ''
> +       classVariableNames: ''
> +       poolDictionaries: ''
> +       category: 'Morphic-Windows'!
>
> Item was added:
> + BorderGripMorph subclass: #TopGripMorph
> +       instanceVariableNames: ''
> +       classVariableNames: ''
> +       poolDictionaries: ''
> +       category: 'Morphic-Windows'!
>
> Item was added:
> + ----- Method: BottomGripMorph>>apply: (in category 'target resize') -----
> + apply: delta
> +       | oldBounds |
> +       oldBounds := target bounds.
> +       target
> +               bounds: (oldBounds origin + (delta x @ 0) corner: oldBounds corner + (0 @ delta y))!
>
> Item was changed:
>  ----- Method: ProportionalSplitterMorph>>handleSize (in category 'displaying') -----
>  handleSize
>
>        ^ self class splitterWidth @ 30!
>
> Item was added:
> + ----- Method: TopGripMorph>>apply: (in category 'target resize') -----
> + apply: delta
> +       | oldBounds |
> +       oldBounds := target bounds.
> +       target
> +               bounds: (oldBounds origin + (delta x @ 0) corner: oldBounds corner + (0 @ delta y))!
>
> Item was added:
> + ----- Method: RightGripMorph>>defaultWidth (in category 'initialize') -----
> + defaultWidth
> +
> +       ^ 5!
>
> Item was added:
> + ----- Method: LeftGripMorph>>defaultWidth (in category 'initialize') -----
> + defaultWidth
> +
> +       ^ 5!
>
> Item was changed:
>  MorphicModel subclass: #SystemWindow
>        instanceVariableNames: 'labelString stripes label closeBox collapseBox activeOnlyOnTop paneMorphs paneRects collapsedFrame fullFrame isCollapsed menuBox mustNotClose labelWidgetAllowance updatablePanes allowReframeHandles labelArea expandBox'
> +       classVariableNames: 'ClickOnLabelToEdit CloseBoxFrame CloseBoxImage CollapseBoxImage DoubleClickOnLabelToExpand ExpandBoxFrame ExpandBoxImage HideExpandButton MenuBoxFrame MenuBoxImage ResizeAlongEdges ReuseWindows TopWindow'
> -       classVariableNames: 'ClickOnLabelToEdit CloseBoxFrame CloseBoxImage CollapseBoxImage DoubleClickOnLabelToExpand ExpandBoxFrame ExpandBoxImage HideExpandButton MenuBoxFrame MenuBoxImage ReuseWindows TopWindow'
>        poolDictionaries: ''
>        category: 'Morphic-Windows'!
>
>  !SystemWindow commentStamp: '<historical>' prior: 0!
>  SystemWindow is the Morphic equivalent of StandardSystemView -- a labelled container for rectangular views, with iconic facilities for close, collapse/expand, and resizing.
>
>  The attribute onlyActiveOnTop, if set to true (and any call to activate will set this), determines that only the top member of a collection of such windows on the screen shall be active.  To be not active means that a mouse click in any region will only result in bringing the window to the top and then making it active.!
>
> Item was added:
> + ----- Method: BorderGripMorph>>setInverseColors (in category 'as yet unclassified') -----
> + setInverseColors!
>
> Item was added:
> + ----- Method: SystemWindow class>>resizeAlongEdges: (in category 'preferences') -----
> + resizeAlongEdges: aBool
> +       "Preference setter"
> +       ResizeAlongEdges := aBool!
>
> Item was added:
> + ----- Method: SystemWindow>>addCornerGrips (in category 'initialization') -----
> + addCornerGrips
> +       "When enabled via preference, also add edge grips"
> +       super addCornerGrips.
> +       self class resizeAlongEdges ifTrue:[self addEdgeGrips].!
>
> Item was added:
> + ----- Method: BorderedMorph>>addEdgeGrips (in category 'lookenhancements') -----
> + addEdgeGrips
> +       "Add resizers along the four edges of the receiver"
> +
> +       self
> +               addMorphBack: (TopGripMorph new target: self;position: self position).
> +       self
> +               addMorphBack: (BottomGripMorph new target: self;position: self position).
> +       self
> +               addMorphBack: (RightGripMorph new target: self;position: self position).
> +       self
> +               addMorphBack: (LeftGripMorph new target: self;position: self position).!
>
> Item was added:
> + ----- Method: LeftGripMorph>>gripLayoutFrame (in category 'accessing') -----
> + gripLayoutFrame
> +       ^ LayoutFrame
> +               fractions: (0 @ 0 corner: 0 @ 1)
> +               offsets: (0 @ 0 negated corner: self defaultWidth @ 0)!
>
> Item was added:
> + ----- Method: RightGripMorph>>gripLayoutFrame (in category 'accessing') -----
> + gripLayoutFrame
> +       ^ LayoutFrame
> +               fractions: (1 @ 0 corner: 1 @ 1)
> +               offsets: (self defaultWidth negated @ self defaultHeight negated corner: 0@ 0)!
>
> Item was added:
> + BorderGripMorph subclass: #LeftGripMorph
> +       instanceVariableNames: ''
> +       classVariableNames: ''
> +       poolDictionaries: ''
> +       category: 'Morphic-Windows'!
>
> Item was added:
> + ----- Method: BorderGripMorph>>setDefaultColors (in category 'as yet unclassified') -----
> + setDefaultColors!
>
> Item was added:
> + ----- Method: LeftGripMorph>>resizeCursor (in category 'accessing') -----
> + resizeCursor
> +
> +       ^ Cursor resizeForEdge: #left!
>
> Item was added:
> + ----- Method: RightGripMorph>>resizeCursor (in category 'accessing') -----
> + resizeCursor
> +
> +       ^ Cursor resizeForEdge: #right!
>
> Item was added:
> + ----- Method: BottomGripMorph>>gripLayoutFrame (in category 'accessing') -----
> + gripLayoutFrame
> +       ^ LayoutFrame
> +               fractions: (0 @ 1 corner: 1 @ 1)
> +               offsets: (0 @ self defaultHeight negated corner: 0@ 0)!
>
> Item was added:
> + ----- Method: TopGripMorph>>gripLayoutFrame (in category 'accessing') -----
> + gripLayoutFrame
> +       ^ LayoutFrame
> +               fractions: (0 @ 0 corner: 1 @ 0)
> +               offsets: (0 @ -40  corner: 0@ 0)!
>
>
>



More information about the Squeak-dev mailing list