Pharo-dev
By thread
pharo-dev@lists.pharo.org
By month
Messages by month
- ----- 2026 -----
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2025 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2024 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2023 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2022 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2021 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2020 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2019 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2018 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2017 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2016 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2015 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2014 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2013 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2012 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2011 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2010 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2009 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2008 -----
- December
- November
- October
- September
- August
- July
- June
- May
December 2009
- 96 participants
- 2069 messages
Re: [Pharo-project] Rome port
by John M McIntosh
Ya, for years now I've shipped the latest Rome plugin, which BTW I did compile,
within the Squeak macintosh carbon VM.
It's version 1.2.1
Likely the one https://gforge.inria.fr/frs/download.php/25047/RomePlugin.bundle.zip
should disappear to avoid confusion. Just use a 4.2.2 VM
I'll add building a RomePlugin for Squeak V5.0 to my list of things to do for Christmas.
On 2009-12-17, at 9:38 AM, Alexandre Bergel wrote:
> Michael, this is an excellent start!
> Thanks for this. This is important.
>
>> You will need the RomePlugin for your platform.
>> https://gforge.inria.fr/frs/download.php/25047/RomePlugin.bundle.zip
>> https://gforge.inria.fr/frs/download.php/25046/rome.zip
>
> There is a plugin next to the MacOSX VM. I do not know whether this is
> the same version of the plugin
--
===========================================================================
John M. McIntosh <johnmci(a)smalltalkconsulting.com> Twitter: squeaker68882
Corporate Smalltalk Consulting Ltd. http://www.smalltalkconsulting.com
===========================================================================
Dec. 17, 2009
Re: [Pharo-project] Rome port
by Alexandre Bergel
Michael, this is an excellent start!
Thanks for this. This is important.
> You will need the RomePlugin for your platform.
> https://gforge.inria.fr/frs/download.php/25047/RomePlugin.bundle.zip
> https://gforge.inria.fr/frs/download.php/25046/rome.zip
There is a plugin next to the MacOSX VM. I do not know whether this is
the same version of the plugin.
> To load:
>
> Get these two packages from PharoInbox (for now)
> Graphics-MichaelRueger.168
> FreeType-MichaelRueger.498
Unfortunately, I cannot load Graphics or FreeType.
When I load Graphics, the image freeze
When I load FreeType, I have an error: CompositionScanner does not
understand setFont
> To load Rome:
>
-=-=-=-=-=-=-=-=-=
Gofer new
impara: 'RomePharo';
addPackage: 'Rome-BalloonCanvas';
addPackage: 'Rome-Base';
addPackage: 'Rome-PluginCanvas';
addPackage: 'Rome-Fonts';
addPackage: 'Rome-Demo';
addPackage: 'Rome-Reference';
load
-=-=-=-=-=-=-=-=-=
The script above loads fine in 10500.
> Make sure that Freetype fonts are loaded:
>
> FreeTypeFontProvider current loadFromSystem.
> RomeFontManager resetDefault
Some of the demo work:
RomeDemo demoMovingCar
RomeDemo demoGradients
Some of them does not work:
RomeDemo demoDrawFreetypeString
RomeDemo demoStringWheel
...
I can provide help if necessary (limited although).
I would like to use Rome for Mondrian.
Is Rome based on Cairo? If yes, which version of Cairo, the last one?
Alexandre
--
_,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:
Alexandre Bergel http://www.bergel.eu
^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;.
Dec. 17, 2009
[Pharo-project] Latest OB broken in PharoCore
by Hernán Morales Durand
Hi,
I've installed OB with the following script (from
http://code.google.com/p/pharo/wiki/RewriteTools) in Pharo-Core:
Gofer new
squeaksource: 'rb';
addPackage: 'AST-Core';
addPackage: 'Refactoring-Core';
addPackage: 'Refactoring-Spelling';
renggli: 'omnibrowser';
addPackage: 'OmniBrowser';
addPackage: 'OB-Standard';
addPackage: 'OB-Morphic';
addPackage: 'OB-Shout';
addPackage: 'OB-Refactory';
addPackage: 'OB-Regex';
load.
but when opening an OB system browser there is a MNU related with
OBShoutPlatform:
17 December 2009 2:21:19 pm
VM: Win32 - IX86 - NT - Squeak3.10.2 of '5 June 2008' [latest update: #7179]
Image: PharoCore1.1ALPHA [Latest update: #11106]
SecurityManager state:
Restricted: false
FileAccess: true
SocketAccess: true
OBShoutPlatform(Object)>>doesNotUnderstand: #build:
Receiver: an OBShoutPlatform
Arguments and temporary variables:
aMessage: build: an OBSystemBrowser
exception: MessageNotUnderstood: OBShoutPlatform>>build:
resumeValue: nil
Receiver's instance variables:
an OBShoutPlatform
OBShoutPlatform(OBMorphicPlatform)>>handleBrowseRequest:
Receiver: an OBShoutPlatform
Arguments and temporary variables:
request: OBBrowseRequest
Receiver's instance variables:
an OBShoutPlatform
OBBrowseRequest>>handleWith:
Receiver: OBBrowseRequest
Arguments and temporary variables:
anObject: an OBShoutPlatform
Receiver's instance variables:
messageText: nil
tag: nil
signalContext: OBBrowseRequest(Exception)>>signal
handlerContext: nil
outerContext: nil
browser: an OBSystemBrowser
OBBrowseRequest(OBInteractionRequest)>>defaultAction
Receiver: OBBrowseRequest
Arguments and temporary variables:
Receiver's instance variables:
messageText: nil
tag: nil
signalContext: OBBrowseRequest(Exception)>>signal
handlerContext: nil
outerContext: nil
browser: an OBSystemBrowser
UndefinedObject>>handleSignal:
Receiver: nil
Arguments and temporary variables:
exception: OBBrowseRequest
Receiver's instance variables:
nil
MethodContext(ContextPart)>>handleSignal:
Receiver: BlockClosure>>on:do:
Arguments and temporary variables:
exception: OBBrowseRequest
val: nil
Receiver's instance variables:
sender: PasteUpMorph>>becomeActiveDuring:
pc: 17
stackp: 3
method: (BlockClosure>>#on:do: "a CompiledMethod(3772)")
closureOrNil: nil
receiver: [closure] in PasteUpMorph>>becomeActiveDuring:
OBBrowseRequest(Exception)>>signal
Receiver: OBBrowseRequest
Arguments and temporary variables:
Receiver's instance variables:
messageText: nil
tag: nil
signalContext: OBBrowseRequest(Exception)>>signal
handlerContext: nil
outerContext: nil
browser: an OBSystemBrowser
OBBrowseRequest class>>signal:
Receiver: OBBrowseRequest
Arguments and temporary variables:
aBrowser: an OBSystemBrowser
Receiver's instance variables:
superclass: OBInteractionRequest
methodDict: a MethodDictionary(#browser->(OBBrowseRequest>>#browser
"a Compiled...etc...
format: 142
instanceVariables: #('browser')
organization: ('accessing' browser browser:)
('dispatching' handleWith:)
('test...etc...
subclasses: nil
name: #OBBrowseRequest
classPool: nil
sharedPools: nil
environment: Smalltalk
category: #'OmniBrowser-Notifications'
traitComposition: {}
localSelectors: nil
OBSystemBrowser(OBBrowser)>>open
Receiver: an OBSystemBrowser
Arguments and temporary variables:
Receiver's instance variables:
panels: an OrderedCollection(an OBColumnPanel an OBFixedButtonPanel
an OBDefini...etc...
announcer: an OBAnnouncer
cmdFactories: {OBCmdRemoveClass. ORCmdFormat. OBCmdRevertMethod.
OBCmdRenameCat...etc...
hasChanges: nil
OBSystemBrowser class(OBBrowser class)>>open
Receiver: OBSystemBrowser
Arguments and temporary variables:
Receiver's instance variables:
superclass: OBCodeBrowser
methodDict: a
MethodDictionary(#defaultBackgroundColor->(OBSystemBrowser>>#defa...etc...
format: 138
instanceVariables: nil
organization: ('morphic' defaultBackgroundColor labelString)
('testing' isClass...etc...
subclasses: nil
name: #OBSystemBrowser
classPool: nil
sharedPools: nil
environment: Smalltalk
category: #'OB-Standard-Browsers'
traitComposition: {}
localSelectors: nil
OBSystemBrowserAdaptor class>>open
Receiver: OBSystemBrowserAdaptor
Arguments and temporary variables:
Receiver's instance variables:
superclass: Object
methodDict: a
MethodDictionary(#labelString->(OBSystemBrowserAdaptor>>#labelStr...etc...
format: 134
instanceVariables: #('class' 'selector')
organization: ('registry protocol' labelString openEditString:
setClass:selecto...etc...
subclasses: nil
name: #OBSystemBrowserAdaptor
classPool: nil
sharedPools: nil
environment: Smalltalk
category: #'OB-Standard-Utilities'
traitComposition: {}
localSelectors: nil
StandardToolSet class>>openClassBrowser
Receiver: StandardToolSet
Arguments and temporary variables:
Receiver's instance variables:
superclass: Object
methodDict: a MethodDictionary()
format: 2
instanceVariables: nil
organization: ('as yet unclassified')
subclasses: nil
name: #StandardToolSet
classPool: nil
sharedPools: nil
environment: Smalltalk
category: #'Tools-Base'
traitComposition: nil
localSelectors: nil
[] in ToggleMenuItemMorph(MenuItemMorph)>>invokeWithEvent:
Receiver: a ToggleMenuItemMorph(1516)'Class Browser'
Arguments and temporary variables:
evt: [835@167 mouseUp 23822953 nil]
selArgCount: #(0)
Receiver's instance variables:
bounds: 795@165 corner: 929@177
owner: a MenuMorph(1298)
submorphs: #()
fullBounds: 795@165 corner: 929@177
color: Color black
extension: a MorphExtension (2377)
font: a StrikeFontSet(Accuny12 12)
emphasis: 0
contents: 'Class Browser'
hasFocus: false
isEnabled: true
subMenu: nil
isSelected: false
target: StandardToolSet
selector: #openClassBrowser
arguments: #()
icon: nil
getStateSelector: nil
enablementSelector: nil
keyText: nil
BlockClosure>>ensure:
Receiver: [closure] in ToggleMenuItemMorph(MenuItemMorph)>>invokeWithEvent:
Arguments and temporary variables:
aBlock: [closure] in CursorWithMask(Cursor)>>showWhile:
returnValue: nil
b: nil
Receiver's instance variables:
outerContext: ToggleMenuItemMorph(MenuItemMorph)>>invokeWithEvent:
startpc: 136
numArgs: 0
CursorWithMask(Cursor)>>showWhile:
Receiver: ((CursorWithMask
extent: 16@16
depth: 1
fromArray: #(
2r0
2r10000000000000000000000...etc...
Arguments and temporary variables:
aBlock: [closure] in ToggleMenuItemMorph(MenuItemMorph)>>invokeWithEvent:
oldcursor: ((CursorWithMask
extent: 16@16
depth: 1
fromArray: #(
2r0
2r1...etc...
Receiver's instance variables:
bits: a Bitmap of length 16
width: 16
height: 16
depth: 1
offset: -1@-1
maskForm: Form(16x16x1)
ToggleMenuItemMorph(MenuItemMorph)>>invokeWithEvent:
Receiver: a ToggleMenuItemMorph(1516)'Class Browser'
Arguments and temporary variables:
evt: [835@167 mouseUp 23822953 nil]
w: a PasteUpMorph(1622) [world]
selArgCount: #(0)
Receiver's instance variables:
bounds: 795@165 corner: 929@177
owner: a MenuMorph(1298)
submorphs: #()
fullBounds: 795@165 corner: 929@177
color: Color black
extension: a MorphExtension (2377)
font: a StrikeFontSet(Accuny12 12)
emphasis: 0
contents: 'Class Browser'
hasFocus: false
isEnabled: true
subMenu: nil
isSelected: false
target: StandardToolSet
selector: #openClassBrowser
arguments: #()
icon: nil
getStateSelector: nil
enablementSelector: nil
keyText: nil
ToggleMenuItemMorph(MenuItemMorph)>>mouseUp:
Receiver: a ToggleMenuItemMorph(1516)'Class Browser'
Arguments and temporary variables:
evt: [835@167 mouseUp 23822953 nil]
Receiver's instance variables:
bounds: 795@165 corner: 929@177
owner: a MenuMorph(1298)
submorphs: #()
fullBounds: 795@165 corner: 929@177
color: Color black
extension: a MorphExtension (2377)
font: a StrikeFontSet(Accuny12 12)
emphasis: 0
contents: 'Class Browser'
hasFocus: false
isEnabled: true
subMenu: nil
isSelected: false
target: StandardToolSet
selector: #openClassBrowser
arguments: #()
icon: nil
getStateSelector: nil
enablementSelector: nil
keyText: nil
ToggleMenuItemMorph(MenuItemMorph)>>handleMouseUp:
Receiver: a ToggleMenuItemMorph(1516)'Class Browser'
Arguments and temporary variables:
anEvent: [835@167 mouseUp 23822953 nil]
Receiver's instance variables:
bounds: 795@165 corner: 929@177
owner: a MenuMorph(1298)
submorphs: #()
fullBounds: 795@165 corner: 929@177
color: Color black
extension: a MorphExtension (2377)
font: a StrikeFontSet(Accuny12 12)
emphasis: 0
contents: 'Class Browser'
hasFocus: false
isEnabled: true
subMenu: nil
isSelected: false
target: StandardToolSet
selector: #openClassBrowser
arguments: #()
icon: nil
getStateSelector: nil
enablementSelector: nil
keyText: nil
MouseButtonEvent>>sentTo:
Receiver: [835@167 mouseUp 23822953 nil]
Arguments and temporary variables:
anObject: a ToggleMenuItemMorph(1516)'Class Browser'
Receiver's instance variables:
timeStamp: 23822953
source: a HandMorph(3216)
windowIndex: nil
type: #mouseUp
buttons: 0
position: 835@167
handler: nil
wasHandled: true
whichButton: 4
ToggleMenuItemMorph(Morph)>>handleEvent:
Receiver: a ToggleMenuItemMorph(1516)'Class Browser'
Arguments and temporary variables:
anEvent: [835@167 mouseUp 23822953 nil]
Receiver's instance variables:
bounds: 795@165 corner: 929@177
owner: a MenuMorph(1298)
submorphs: #()
fullBounds: 795@165 corner: 929@177
color: Color black
extension: a MorphExtension (2377)
font: a StrikeFontSet(Accuny12 12)
emphasis: 0
contents: 'Class Browser'
hasFocus: false
isEnabled: true
subMenu: nil
isSelected: false
target: StandardToolSet
selector: #openClassBrowser
arguments: #()
icon: nil
getStateSelector: nil
enablementSelector: nil
keyText: nil
MorphicEventDispatcher>>dispatchDefault:with:
Receiver: a MorphicEventDispatcher
Arguments and temporary variables:
anEvent: [835@167 mouseUp 23822953 nil]
aMorph: a ToggleMenuItemMorph(1516)'Class Browser'
localEvt: nil
index: 1
child: nil
morphs: #()
inside: true
Receiver's instance variables:
lastType: #mouseUp
lastDispatch: #dispatchDefault:with:
MorphicEventDispatcher>>dispatchEvent:with:
Receiver: a MorphicEventDispatcher
Arguments and temporary variables:
anEvent: [835@167 mouseUp 23822953 nil]
aMorph: a ToggleMenuItemMorph(1516)'Class Browser'
Receiver's instance variables:
lastType: #mouseUp
lastDispatch: #dispatchDefault:with:
ToggleMenuItemMorph(Morph)>>processEvent:using:
Receiver: a ToggleMenuItemMorph(1516)'Class Browser'
Arguments and temporary variables:
anEvent: [835@167 mouseUp 23822953 nil]
defaultDispatcher: a MorphicEventDispatcher
Receiver's instance variables:
bounds: 795@165 corner: 929@177
owner: a MenuMorph(1298)
submorphs: #()
fullBounds: 795@165 corner: 929@177
color: Color black
extension: a MorphExtension (2377)
font: a StrikeFontSet(Accuny12 12)
emphasis: 0
contents: 'Class Browser'
hasFocus: false
isEnabled: true
subMenu: nil
isSelected: false
target: StandardToolSet
selector: #openClassBrowser
arguments: #()
icon: nil
getStateSelector: nil
enablementSelector: nil
keyText: nil
MorphicEventDispatcher>>dispatchDefault:with:
Receiver: a MorphicEventDispatcher
Arguments and temporary variables:
anEvent: [835@167 mouseUp 23822953 nil]
aMorph: a MenuMorph(1298)
localEvt: [835@167 mouseUp 23822953 nil]
index: 1
child: a ToggleMenuItemMorph(1516)'Class Browser'
morphs: an Array(a ToggleMenuItemMorph(1516)'Class Browser' a
ToggleMenuItemMor...etc...
inside: false
Receiver's instance variables:
lastType: #mouseUp
lastDispatch: #dispatchDefault:with:
MorphicEventDispatcher>>dispatchEvent:with:
Receiver: a MorphicEventDispatcher
Arguments and temporary variables:
anEvent: [835@167 mouseUp 23822953 nil]
aMorph: a MenuMorph(1298)
Receiver's instance variables:
lastType: #mouseUp
lastDispatch: #dispatchDefault:with:
MenuMorph(Morph)>>processEvent:using:
Receiver: a MenuMorph(1298)
Arguments and temporary variables:
anEvent: [835@167 mouseUp 23822953 nil]
defaultDispatcher: a MorphicEventDispatcher
Receiver's instance variables:
bounds: 791@161 corner: 933@336
owner: nil
submorphs: an Array(a ToggleMenuItemMorph(1516)'Class Browser' a
ToggleMenuItem...etc...
fullBounds: 791@161 corner: 934@337
color: (Color r: 0.871 g: 0.871 b: 0.871)
extension: a MorphExtension (4004) [other: (basicColor -> (Color
r: 0.784 g: 0...etc...
borderWidth: 1
borderColor: Color gray
defaultTarget: a TheWorldMenu
selectedItem: a ToggleMenuItemMorph(1516)'Class Browser'
stayUp: false
popUpOwner: a ToggleMenuItemMorph(2693)'Tools'
activeSubMenu: nil
activatorDockingBar: nil
embeddable: nil
MenuMorph(Morph)>>processEvent:
Receiver: a MenuMorph(1298)
Arguments and temporary variables:
anEvent: [835@167 mouseUp 23822953 nil]
Receiver's instance variables:
bounds: 791@161 corner: 933@336
owner: nil
submorphs: an Array(a ToggleMenuItemMorph(1516)'Class Browser' a
ToggleMenuItem...etc...
fullBounds: 791@161 corner: 934@337
color: (Color r: 0.871 g: 0.871 b: 0.871)
extension: a MorphExtension (4004) [other: (basicColor -> (Color
r: 0.784 g: 0...etc...
borderWidth: 1
borderColor: Color gray
defaultTarget: a TheWorldMenu
selectedItem: a ToggleMenuItemMorph(1516)'Class Browser'
stayUp: false
popUpOwner: a ToggleMenuItemMorph(2693)'Tools'
activeSubMenu: nil
activatorDockingBar: nil
embeddable: nil
MenuMorph>>handleFocusEvent:
Receiver: a MenuMorph(1298)
Arguments and temporary variables:
evt: [835@167 mouseUp 23822953 nil]
Receiver's instance variables:
bounds: 791@161 corner: 933@336
owner: nil
submorphs: an Array(a ToggleMenuItemMorph(1516)'Class Browser' a
ToggleMenuItem...etc...
fullBounds: 791@161 corner: 934@337
color: (Color r: 0.871 g: 0.871 b: 0.871)
extension: a MorphExtension (4004) [other: (basicColor -> (Color
r: 0.784 g: 0...etc...
borderWidth: 1
borderColor: Color gray
defaultTarget: a TheWorldMenu
selectedItem: a ToggleMenuItemMorph(1516)'Class Browser'
stayUp: false
popUpOwner: a ToggleMenuItemMorph(2693)'Tools'
activeSubMenu: nil
activatorDockingBar: nil
embeddable: nil
[] in HandMorph>>sendFocusEvent:to:clear:
Receiver: a HandMorph(3216)
Arguments and temporary variables:
anEvent: [835@167 mouseUp 23822953 nil]
focusHolder: a MenuMorph(1298)
result: #(nil)
Receiver's instance variables:
bounds: 709@476 corner: 725@492
owner: a PasteUpMorph(1622) [world]
submorphs: #()
fullBounds: 709@476 corner: 725@492
color: Color blue
extension: a MorphExtension (539) [eventHandler = an EventHandler]
mouseFocus: nil
keyboardFocus: nil
eventListeners: nil
mouseListeners: nil
keyboardListeners: nil
mouseClickState: nil
mouseOverHandler: a MouseOverHandler
lastMouseEvent: [709@476 mouseUp 23973171 nil]
targetOffset: 17@12
damageRecorder: a DamageRecorder
cacheCanvas: nil
cachedCanvasHasHoles: true
temporaryCursor: nil
temporaryCursorOffset: nil
hardwareCursor: nil
hasChanged: true
savedPatch: nil
userInitials: ''
lastEventBuffer: #(1 23973171 709 476 0 0 0 1)
lastKeyScanCode: 77
combinedChar: nil
[] in PasteUpMorph>>becomeActiveDuring:
Receiver: a PasteUpMorph(1622) [world]
Arguments and temporary variables:
aBlock: [closure] in HandMorph>>sendFocusEvent:to:clear:
Receiver's instance variables:
bounds: 0@0 corner: 1280@751
owner: nil
submorphs: an Array(a TaskbarMorph(3095) a SystemWindow(770) a
SystemWindow(359...etc...
fullBounds: 0@0 corner: 1280@751
color: (Color r: 0.97 g: 0.98 b: 1.0)
extension: a MorphExtension (2543) [eventHandler = an EventHandler]
[other: (...etc...
borderWidth: 0
borderColor: (Color r: 0.03 g: 0.02 b: 0.0)
model: a MorphicModel(1926)
cursor: 1
padding: 3
backgroundMorph: nil
isPartsBin: nil
autoLineLayout: false
indicateCursor: nil
resizeToFit: nil
worldState: a WorldState
griddingOn: nil
BlockClosure>>on:do:
Receiver: [closure] in PasteUpMorph>>becomeActiveDuring:
Arguments and temporary variables:
exception: Error
handlerAction: [closure] in PasteUpMorph>>becomeActiveDuring:
handlerActive: false
Receiver's instance variables:
outerContext: PasteUpMorph>>becomeActiveDuring:
startpc: 67
numArgs: 0
PasteUpMorph>>becomeActiveDuring:
Receiver: a PasteUpMorph(1622) [world]
Arguments and temporary variables:
aBlock: [closure] in HandMorph>>sendFocusEvent:to:clear:
priorWorld: a PasteUpMorph(1622) [world]
priorHand: a HandMorph(3216)
priorEvent: [835@167 mouseOver red nil nil]
Receiver's instance variables:
bounds: 0@0 corner: 1280@751
owner: nil
submorphs: an Array(a TaskbarMorph(3095) a SystemWindow(770) a
SystemWindow(359...etc...
fullBounds: 0@0 corner: 1280@751
color: (Color r: 0.97 g: 0.98 b: 1.0)
extension: a MorphExtension (2543) [eventHandler = an EventHandler]
[other: (...etc...
borderWidth: 0
borderColor: (Color r: 0.03 g: 0.02 b: 0.0)
model: a MorphicModel(1926)
cursor: 1
padding: 3
backgroundMorph: nil
isPartsBin: nil
autoLineLayout: false
indicateCursor: nil
resizeToFit: nil
worldState: a WorldState
griddingOn: nil
HandMorph>>sendFocusEvent:to:clear:
Receiver: a HandMorph(3216)
Arguments and temporary variables:
anEvent: [835@167 mouseUp 23822953 nil]
focusHolder: a MenuMorph(1298)
aBlock: [closure] in HandMorph>>sendMouseEvent:
w: a PasteUpMorph(1622) [world]
result: #(nil)
Receiver's instance variables:
bounds: 709@476 corner: 725@492
owner: a PasteUpMorph(1622) [world]
submorphs: #()
fullBounds: 709@476 corner: 725@492
color: Color blue
extension: a MorphExtension (539) [eventHandler = an EventHandler]
mouseFocus: nil
keyboardFocus: nil
eventListeners: nil
mouseListeners: nil
keyboardListeners: nil
mouseClickState: nil
mouseOverHandler: a MouseOverHandler
lastMouseEvent: [709@476 mouseUp 23973171 nil]
targetOffset: 17@12
damageRecorder: a DamageRecorder
cacheCanvas: nil
cachedCanvasHasHoles: true
temporaryCursor: nil
temporaryCursorOffset: nil
hardwareCursor: nil
hasChanged: true
savedPatch: nil
userInitials: ''
lastEventBuffer: #(1 23973171 709 476 0 0 0 1)
lastKeyScanCode: 77
combinedChar: nil
HandMorph>>sendEvent:focus:clear:
Receiver: a HandMorph(3216)
Arguments and temporary variables:
anEvent: [835@167 mouseUp 23822953 nil]
focusHolder: a MenuMorph(1298)
aBlock: [closure] in HandMorph>>sendMouseEvent:
result: nil
Receiver's instance variables:
bounds: 709@476 corner: 725@492
owner: a PasteUpMorph(1622) [world]
submorphs: #()
fullBounds: 709@476 corner: 725@492
color: Color blue
extension: a MorphExtension (539) [eventHandler = an EventHandler]
mouseFocus: nil
keyboardFocus: nil
eventListeners: nil
mouseListeners: nil
keyboardListeners: nil
mouseClickState: nil
mouseOverHandler: a MouseOverHandler
lastMouseEvent: [709@476 mouseUp 23973171 nil]
targetOffset: 17@12
damageRecorder: a DamageRecorder
cacheCanvas: nil
cachedCanvasHasHoles: true
temporaryCursor: nil
temporaryCursorOffset: nil
hardwareCursor: nil
hasChanged: true
savedPatch: nil
userInitials: ''
lastEventBuffer: #(1 23973171 709 476 0 0 0 1)
lastKeyScanCode: 77
combinedChar: nil
HandMorph>>sendMouseEvent:
Receiver: a HandMorph(3216)
Arguments and temporary variables:
anEvent: [835@167 mouseUp 23822953 nil]
Receiver's instance variables:
bounds: 709@476 corner: 725@492
owner: a PasteUpMorph(1622) [world]
submorphs: #()
fullBounds: 709@476 corner: 725@492
color: Color blue
extension: a MorphExtension (539) [eventHandler = an EventHandler]
mouseFocus: nil
keyboardFocus: nil
eventListeners: nil
mouseListeners: nil
keyboardListeners: nil
mouseClickState: nil
mouseOverHandler: a MouseOverHandler
lastMouseEvent: [709@476 mouseUp 23973171 nil]
targetOffset: 17@12
damageRecorder: a DamageRecorder
cacheCanvas: nil
cachedCanvasHasHoles: true
temporaryCursor: nil
temporaryCursorOffset: nil
hardwareCursor: nil
hasChanged: true
savedPatch: nil
userInitials: ''
lastEventBuffer: #(1 23973171 709 476 0 0 0 1)
lastKeyScanCode: 77
combinedChar: nil
HandMorph>>handleEvent:
Receiver: a HandMorph(3216)
Arguments and temporary variables:
anEvent: [835@167 mouseUp 23822953 nil]
evt: [835@167 mouseUp 23822953 nil]
ofs: nil
Receiver's instance variables:
bounds: 709@476 corner: 725@492
owner: a PasteUpMorph(1622) [world]
submorphs: #()
fullBounds: 709@476 corner: 725@492
color: Color blue
extension: a MorphExtension (539) [eventHandler = an EventHandler]
mouseFocus: nil
keyboardFocus: nil
eventListeners: nil
mouseListeners: nil
keyboardListeners: nil
mouseClickState: nil
mouseOverHandler: a MouseOverHandler
lastMouseEvent: [709@476 mouseUp 23973171 nil]
targetOffset: 17@12
damageRecorder: a DamageRecorder
cacheCanvas: nil
cachedCanvasHasHoles: true
temporaryCursor: nil
temporaryCursorOffset: nil
hardwareCursor: nil
hasChanged: true
savedPatch: nil
userInitials: ''
lastEventBuffer: #(1 23973171 709 476 0 0 0 1)
lastKeyScanCode: 77
combinedChar: nil
HandMorph>>processEvents
Receiver: a HandMorph(3216)
Arguments and temporary variables:
evt: [835@167 mouseUp 23822953 nil]
evtBuf: #(1 23822953 835 167 0 0 0 1)
type: 1
hadAny: false
Receiver's instance variables:
bounds: 709@476 corner: 725@492
owner: a PasteUpMorph(1622) [world]
submorphs: #()
fullBounds: 709@476 corner: 725@492
color: Color blue
extension: a MorphExtension (539) [eventHandler = an EventHandler]
mouseFocus: nil
keyboardFocus: nil
eventListeners: nil
mouseListeners: nil
keyboardListeners: nil
mouseClickState: nil
mouseOverHandler: a MouseOverHandler
lastMouseEvent: [709@476 mouseUp 23973171 nil]
targetOffset: 17@12
damageRecorder: a DamageRecorder
cacheCanvas: nil
cachedCanvasHasHoles: true
temporaryCursor: nil
temporaryCursorOffset: nil
hardwareCursor: nil
hasChanged: true
savedPatch: nil
userInitials: ''
lastEventBuffer: #(1 23973171 709 476 0 0 0 1)
lastKeyScanCode: 77
combinedChar: nil
[] in WorldState>>doOneCycleNowFor:
Receiver: a WorldState
Arguments and temporary variables:
h: a HandMorph(3216)
Receiver's instance variables:
hands: an Array(a HandMorph(3216))
viewBox: 0@0 corner: 1280@751
canvas: a FormCanvas on: DisplayScreen(1280x751x32)
damageRecorder: a DamageRecorder
stepList: a Heap(StepMessage(#stepAt: -> a SystemWindow(770))(a
SystemWindow(77...etc...
lastStepTime: 23973261
lastStepMessage: nil
lastCycleTime: 23973183
commandHistory: a CommandHistory
alarms: a Heap()
lastAlarmTime: 23973261
Array(SequenceableCollection)>>do:
Receiver: an Array(a HandMorph(3216))
Arguments and temporary variables:
aBlock: [closure] in WorldState>>doOneCycleNowFor:
index: 1
indexLimiT: 1
Receiver's instance variables:
an Array(a HandMorph(3216))
--- The full stack ---
OBShoutPlatform(Object)>>doesNotUnderstand: #build:
OBShoutPlatform(OBMorphicPlatform)>>handleBrowseRequest:
OBBrowseRequest>>handleWith:
OBBrowseRequest(OBInteractionRequest)>>defaultAction
UndefinedObject>>handleSignal:
MethodContext(ContextPart)>>handleSignal:
OBBrowseRequest(Exception)>>signal
OBBrowseRequest class>>signal:
OBSystemBrowser(OBBrowser)>>open
OBSystemBrowser class(OBBrowser class)>>open
OBSystemBrowserAdaptor class>>open
StandardToolSet class>>openClassBrowser
[] in ToggleMenuItemMorph(MenuItemMorph)>>invokeWithEvent:
BlockClosure>>ensure:
CursorWithMask(Cursor)>>showWhile:
ToggleMenuItemMorph(MenuItemMorph)>>invokeWithEvent:
ToggleMenuItemMorph(MenuItemMorph)>>mouseUp:
ToggleMenuItemMorph(MenuItemMorph)>>handleMouseUp:
MouseButtonEvent>>sentTo:
ToggleMenuItemMorph(Morph)>>handleEvent:
MorphicEventDispatcher>>dispatchDefault:with:
MorphicEventDispatcher>>dispatchEvent:with:
ToggleMenuItemMorph(Morph)>>processEvent:using:
MorphicEventDispatcher>>dispatchDefault:with:
MorphicEventDispatcher>>dispatchEvent:with:
MenuMorph(Morph)>>processEvent:using:
MenuMorph(Morph)>>processEvent:
MenuMorph>>handleFocusEvent:
[] in HandMorph>>sendFocusEvent:to:clear:
[] in PasteUpMorph>>becomeActiveDuring:
BlockClosure>>on:do:
PasteUpMorph>>becomeActiveDuring:
HandMorph>>sendFocusEvent:to:clear:
HandMorph>>sendEvent:focus:clear:
HandMorph>>sendMouseEvent:
HandMorph>>handleEvent:
HandMorph>>processEvents
[] in WorldState>>doOneCycleNowFor:
Array(SequenceableCollection)>>do:
- - - - - - - - - - - - - - -
- - - - - - - - - - - - - - - - - -
WorldState>>handsDo:
WorldState>>doOneCycleNowFor:
WorldState>>doOneCycleFor:
PasteUpMorph>>doOneCycle
[] in Project class>>spawnNewProcess
[] in BlockClosure>>newProcess
Hernán
Dec. 17, 2009
Re: [Pharo-project] Fwd: [squeak-dev] Stuff
by Marcus Denker
>> However they didn't want to be involved in the politics, and I cant say I blame them.
So let's see, what where our options last year?
1. Take over Squeak (just like Andreas did now)
2. Just step aside and do a fork.
3. Nicely ask to be involved with 3.11
1) was not possible. In 3.9, both Stef and me where in the Board. (We should not that we foundet it...)
But Stef left in disgust as it became clear the people there were not willing to do *anything*.
And I did not seek re-election after the community made it clear that they did not like our work on 3.9.
(and there was a PhD Thesis to write...)
As for 3: the community chose you to do 3.11! And it was made clear to us that we did everything wrong with
3.9. And everyone seemed happy to do what Squeakers do best: Discuss while doing nothing.
The other thing then is etoys... we put some effort into etoys in 3.9 (merge with squeakland.org, merge
with Diego's SmallLand which was the largest etoy installation at that point). But no child ever used it.
There was no interaction with the people who worked (payed!!) on etoys *at all*.
And it was clear that an etoys in Pharo would never be used. So why keep it? Especially as etoys is really
not easy to maintain. (I personally rate it as unmaintainable. It's a mess of epic proportion).
It's not an asset. It's a liability. But Squeak without etoys is not Squeak. So another name is quite
the right thing to do, no?
Than, why do we need something like Pharo anyway? The reason is that we used Squeak it *every* *single* *day*.
We used Squeak for teaching, we used it do do research. Phd Students used it, Master Students used it. People that
left the university started to use it in their company.
So, I am a Researcher, and my point of view of "Why Pharo" is this:
Doing Research is like exploring a mountain. A high mountain, the peak is covered in clouds, no idea where
exactly it is an just how high the peak is... yet it's there. And you *want* to get there.
So what would you do in this situation? There are four approaches:
1) Talk about The Peak, but don't do anything until someone invents a magical peak discovery device.
2) Go up. As far as you can. Do not waste time with acquiring good equipment, do not build camps.
(building a camps is not your goal! the peak is!)
3) Go up. But while doing it, start to note how to improve your equipment. Seek good spots for putting
up camps and storage for food. You will not find the peak this time. But you have learned a lot.
You know where to put a camp. You know how to stock it. You know what equipment would simplify the next try.
So you spend some energy... and haul up stuff to the secure place and build a camp. For sure, the
next expedition can go *far far* higher!
4) Just build equipment down in the valley. Don't go up before it's perfect!
So, I don't know what you would do. I would do 3). It has some really boring components, this Plan 3. Hauling stuff
up the mountain is not fun. It's not glorious. And there are no Sherpas to hire. In Research at the University,
there are no engineers. The PhD-Students and Researchers need to cary everything themselves... not working together,
not having fun together while doing will mean that you can't do it.
So Pharo, up to now, is just that: Hauling equipment and food up the mountain to form a stabilized camp. It's not
really that high. (other expeditions are laughing: "This is a trivial. What idiots. They have no Vision").
But they have *no camp* at all.
And as soon as ours is ready, we rest, and than we build the next... and the next, and the next. Higher and Higher up.
I always wonder how high we would already be (with lots of equipment and well-rested), if we would have used this strategy
the last 10 years for Squeak. But we did not.
VPRI is doing 2). The Squeak community prefers 1). Squeak 3.11 was 4).
But I fear, the magic device will never be discovered... and Squeak died in 3.11 because there was no visible artifact.
And starting all the time from the bottom is just not going to work (it did in the 70ties, when hills where small... Dan wrote
a paper about it even... but with the mountains of today, no way...).
So... back to haulin' more stuff....
Marcus
--
Marcus Denker -- http://www.marcusdenker.de
Dec. 17, 2009
Re: [Pharo-project] Call for companies using pharo to get a payed INRIA engineer
by Stéphane Ducasse
>> Hi Stef!
>
> There are several possibilities to get things sponsored by the european
> community for software projects, coordination of software projects, e.t.c.
>
> E.g. Koffice and GnuPG had such sponsoring. Here in Berlin, we get several
> projects with squeak at schools sponsored by EC. Pots are full. Ask s.b. who
> is specialized on that ... dunnow your structures in france ...
do you have a pointer on it in germany?
Because this would be interesting.
The problem is that we are too small (low visibility)
Stef
> regards, Guido Stepken
> --
> _______________________________________________
> Pharo-project mailing list
> Pharo-project(a)lists.gforge.inria.fr
> http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
Dec. 17, 2009
Re: [Pharo-project] Call for companies using pharo to get a payed INRIA engineer
by Guido Stepken
Stéphane Ducasse wrote:
>
>
> Hi guys
>
> we are writing a proposal to get an engineer for pharo from INRIA (nothing
> is clear but we should at least try).
> I learned this morning that we could apply. Some meetings are better than
> others :)
> So I have a small list but I'm sure that we have much more companies
> around using pharo.
>
> Stef
>
> _______________________________________________
> Pharo-project mailing list
> Pharo-project(a)lists.gforge.inria.fr
> http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
>
>
Hi Stef!
There are several possibilities to get things sponsored by the european
community for software projects, coordination of software projects, e.t.c.
E.g. Koffice and GnuPG had such sponsoring. Here in Berlin, we get several
projects with squeak at schools sponsored by EC. Pots are full. Ask s.b. who
is specialized on that ... dunnow your structures in france ...
regards, Guido Stepken
--
View this message in context: http://n2.nabble.com/Call-for-companies-using-pharo-to-get-a-payed-INRIA-en…
Sent from the Pharo Smalltalk mailing list archive at Nabble.com.
Dec. 17, 2009
Re: [Pharo-project] need hunter to kill the double paste bug.
by Michael Rueger
Do people actually experience the double paste problem on non-Mac platforms?
John M McIntosh wrote:
> Technically the behaviour between the the versions (3.x/4.x/5.x)
> should be the same, if you can show it's not, then it's a bug.
>
> In 5.0 we see the keydown and record data, but we don't actually get
> the character until text services decides what the unicode value is
> going to be based on the keyboard/language & deadkey support.
>
> Some time after the keydown (one or more) Text services calls
> insertText: on our view that then makes us generate the keydown,
> keystroke event using the same millisecond clock value.
>
> Milliseconds later the key goes up and we generate the key up event
> using the current clock time.
Could there be an interaction between key events and clipboard access?
Or a race conditions where the Mac menu and Squeak both process the
paste event?
I can't come up with any other explanation why double key events would
only happen on CMD-v...
That is maybe they are occurring on copy and cut as well, but we just
won't notice...
Michael
Dec. 17, 2009
Re: [Pharo-project] Fwd: [squeak-dev] Stuff
by keith
Anyhow,
in reference to my comment to Eliot, my smalltalk contribution life
died on the day Andreas took over squeak-dev, he with the help of the
board murdered it. And I am afraid that it might be for good. This is
probably a good thing because it was sucking up too much time and
effort. It is a shame that the Bob based squeak 3.11 building process
was actually complete, with automated testing demonstration within a
day or so of completion. Bob is all there if you want it.
If you had loaded squeaksource/Testing and contributed to it, and if
you had loaded MC1.5 LevelPlayingField right from the start then
perhaps I might be contributing to pharo now.
However I do have other things to do, in my time as a full time carer
I have discovered a cure for rape trauma, tourettes, and many other
severe mental illnesses, so my time will be better spend continuing
that research and documenting it. For example last year, I saw
paranoid schizophrenia healed in a 20 minute counseling-like session.
So applying a sense of perspective to the whole thing, who cares about
a few bytes here and there, when you really do have an opportunity to
change the world. There may be some books out in the next 5 years or
so. I also need to raise a couple of million pounds to fund a
rehabilitation facility for sufferers of Multiple Personality
Disorder, my current specialism.
so signing off
Keith
Dec. 17, 2009
Re: [Pharo-project] Fwd: [squeak-dev] Stuff
by keith
On 17 Dec 2009, at 14:15, Stéphane Ducasse wrote:
>
> On Dec 17, 2009, at 2:27 PM, keith wrote:
>
>>>
>>> You say you are rewriting PackageInfo, you could have rewritten the
>>> version that is in MC1.5, and built on what was going before.
>>>
>>
>> For example, do you have support for files in MC?
> No
>
>> do you have support for Package types?
>
> I have no idea what is a package types.
> I have no idea about orphanage. (you see I read the code)
>
>> do you have Matthew's extra wizzy iteration code?
>>
>> If you had simply said, we will load LevelPlayingField and fix
>> things there, this would have been a different story altogether.
>> You insist on making
>> things hard for yourself, then you complain that you have no time
>> to do things properly.
>
> But you know like me that MC is central for us and that we did not
> want to load code that brings in extra stuff.
What extra stuff? Either MC is to move forward or not. It can only
move forward if all users are prepared to move forward. Improvements
to MC1.5 effectively ground to a halt when you refused to use it,
because the effort of maintaining parity goes up, and the will to move
forward goes down.
If you had actually used it, you would have noticed the benefits, and
improvements of huge refactorings to the repository heirarchy, and the
ui tools. We would have had atomic loading debugged by now, and
probably binary loading (MC1.7) too.
The extra stuff was barely relevant. The orphanage simply keeps
anything that fails to load, until such time as it succeeds in
loading, thus enabling out of order loading of packages.
For example Seaside defines it's own PackageInfo. Package types
generalize this such that MyPackage.squeak MyPackage.test
MyPackage.impl MyPackage.dolphin pick subclasses of PackageInfo that
implement different packaging conventions, that are normally hand coded.
Keith
Dec. 17, 2009
Re: [Pharo-project] Fwd: [squeak-dev] Stuff
by Stéphane Ducasse
On Dec 17, 2009, at 2:27 PM, keith wrote:
>>
>> You say you are rewriting PackageInfo, you could have rewritten the
>> version that is in MC1.5, and built on what was going before.
>>
>
> For example, do you have support for files in MC?
No
> do you have support for Package types?
I have no idea what is a package types.
I have no idea about orphanage. (you see I read the code)
> do you have Matthew's extra wizzy iteration code?
>
> If you had simply said, we will load LevelPlayingField and fix things there, this would have been a different story altogether. You insist on making
> things hard for yourself, then you complain that you have no time to do things properly.
But you know like me that MC is central for us and that we did not want to load code that brings in extra stuff.
So I started to look at the speed up code and published three months ago some package in the inbox and nobody looked at it.
Stef
Dec. 17, 2009