[squeak-dev] The Trunk: Morphic-eem.658.mcz
commits at source.squeak.org
commits at source.squeak.org
Thu Jun 13 22:55:35 UTC 2013
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
|