[squeak-dev] The Trunk: Morphic-eem.658.mcz

Chris Muller asqueaker at gmail.com
Fri Jun 21 23:17:45 UTC 2013


Why do you want to disable pane-splitters?

On Thu, Jun 13, 2013 at 5:54 PM,  <commits at source.squeak.org> wrote:
> Eliot Miranda uploaded a new version of Morphic to project The Trunk:
> http://source.squeak.org/trunk/Morphic-eem.658.mcz
>
> ==================== Summary ====================
>
> Name: Morphic-eem.658
> Author: eem
> Time: 13 June 2013, 3:54:13.852 pm
> UUID: faf57af4-504d-42f3-b7fa-afd6fed1608d
> Ancestors: Morphic-eem.657
>
> Allow creartion of windows without pane splitters via an
> #allowPaneSplitters property that defaults to true.  i.e. to
> disable pane splitters use
>         win setProperty: #allowPaneSplitters toValue: false
> Get PluggableTextMorph>>doIt to answer its result.
>
> =============== Diff against Morphic-eem.657 ===============
>
> Item was changed:
>   ----- Method: PluggableTextMorph>>doIt (in category 'menu commands') -----
>   doIt
> +       ^self handleEdit: [textMorph editor evaluateSelection]!
> -       self handleEdit: [textMorph editor evaluateSelection]!
>
> Item was changed:
>   ----- Method: SystemWindow>>addMorph:fullFrame: (in category 'panes') -----
>   addMorph: aMorph fullFrame: aLayoutFrame
> +       "Add aMorph according to aLayoutFrame."
> +       | windowBorderWidth |
> -
> -       | left right bottom top windowBorderWidth |
>         windowBorderWidth := self class borderWidth.
> +       "If the property #allowPaneSplitters is set to false, do *not* inset morphs by the borderWidth
> +        to make room for splitters.  This allows windows with non-traditional contents to avoid their
> +        component morphs from being clipped.  Do *NOT* remove this code please!!  Just because
> +        there may be no setters of allowPaneSplitters to false in the image doesn't mean they're not
> +        out there.  Thanks!!  eem 6/13/2013"
> +       (self valueOfProperty: #allowPaneSplitters ifAbsent: [true]) ifTrue:
> +               [| left right bottom top |
>
> +               left := aLayoutFrame leftOffset ifNil: [0].
> +               right := aLayoutFrame rightOffset ifNil: [0].
> -       left := aLayoutFrame leftOffset ifNil: [0].
> -       right := aLayoutFrame rightOffset ifNil: [0].
>
> +               bottom := aLayoutFrame bottomOffset ifNil: [0].
> +               top := aLayoutFrame topOffset ifNil: [0].
> +
> +               aLayoutFrame rightFraction = 1 ifTrue: [aLayoutFrame rightOffset: right - windowBorderWidth].
> +               aLayoutFrame leftFraction = 0
> +                       ifTrue: [aLayoutFrame leftOffset: left + windowBorderWidth]
> +                       ifFalse: [aLayoutFrame leftOffset: left + ProportionalSplitterMorph splitterWidth].
> -       bottom := aLayoutFrame bottomOffset ifNil: [0].
> -       top := aLayoutFrame topOffset ifNil: [0].
> -
> -       aLayoutFrame rightFraction = 1 ifTrue: [aLayoutFrame rightOffset: right - windowBorderWidth].
> -       aLayoutFrame leftFraction = 0
> -               ifTrue: [aLayoutFrame leftOffset: left + windowBorderWidth]
> -               ifFalse: [aLayoutFrame leftOffset: left + ProportionalSplitterMorph splitterWidth].
>
> +               aLayoutFrame bottomFraction = 1 ifTrue: [aLayoutFrame bottomOffset: bottom - windowBorderWidth].
> +               aLayoutFrame topFraction = 0
> +                       ifTrue: [aLayoutFrame topOffset: top + windowBorderWidth]
> +                       ifFalse: [aLayoutFrame topOffset: top + ProportionalSplitterMorph splitterWidth]].
> +
> +       "this code should not be here!!!!  As of 6/13/2013 there aren't even any users of BrowserCommentTextMorph."
> -       aLayoutFrame bottomFraction = 1 ifTrue: [aLayoutFrame bottomOffset: bottom - windowBorderWidth].
> -       aLayoutFrame topFraction = 0
> -               ifTrue: [aLayoutFrame topOffset: top + windowBorderWidth]
> -               ifFalse: [aLayoutFrame topOffset: top + ProportionalSplitterMorph splitterWidth].
> -
>         (aMorph class name = #BrowserCommentTextMorph) ifTrue:
>                 [aLayoutFrame rightOffset: windowBorderWidth negated.
>                 aLayoutFrame leftOffset: windowBorderWidth.
>                 aLayoutFrame bottomOffset: windowBorderWidth negated.
>                 aLayoutFrame topOffset: (windowBorderWidth negated) + 4].
>
>         super addMorph: aMorph fullFrame: aLayoutFrame.
>
>         paneMorphs := paneMorphs copyReplaceFrom: 1 to: 0 with: (Array with: aMorph).
>         aMorph isImageMorph ifFalse:
>                 [aMorph adoptPaneColor: self paneColor.
>                  aMorph borderWidth: 1; borderColor: Color lightGray; color: Color white].
>         Preferences scrollBarsOnRight ifTrue:"reorder panes so flop-out right-side scrollbar is visible"
>                 [self addMorphBack: aMorph].
>
>         self addPaneSplitters!
>
>


More information about the Squeak-dev mailing list