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
- 5 participants
- 144618 messages
Re: [Pharo-project] [ANN] Gofer Project Loader 1.0 (BETA)
by Adrian Lienhard
ok, cool, then lets try to do it this way!
Estaban, how can we make Gofer Project Loader to be initialized with MetacelloRepositoryPharo1.0 in a Pharo 1.0 image and the other repository in 1.1 etc.?
Cheers,
Adrian
On Mar 18, 2010, at 18:14 , Dale Henrichs wrote:
> Okay,
>
> I think I am wrapping my brain around this discussion...Sometimes I can be very thick headed:)
>
> Yes that makes perfect sense ... I was thinking about a different issue (code that can only run in Pharo1.1 for example) ...
>
> And the Gofer Project Loader is the perfect place to manage this...independently of Metacello ... Yes!
>
> Dale
> ----- "Stéphane Ducasse" <stephane.ducasse(a)inria.fr> wrote:
>
> | On Mar 18, 2010, at 8:30 AM, Adrian Lienhard wrote:
> |
> | > Here is yet another way how we could model universes. We just have
> | multiple Metacello repositories:
> | >
> | > - MetacelloRepository is the one that everybody can commit to
> | (testing universe)
> | > - MetacelloRepositoryPharo1.0 is the stable universe for Pharo 1.0
> | > - MetacelloRepositoryPharo1.1 is the stable universe for Pharo 1.1
> | > - etc.
> |
> | Yes this is what I was thinking.
> | In general the policy for a metacello config is to be in the project
> | where it belongsto and **copied** to the MetacelloRepository.
> |
> | > A package always first gets into the testing universe and when it is
> | known to work in a particular version it is copied into the
> | appropriate repository. The Gofer Project Loader would just need to
> | know the repository for the current Pharo version. Like in Debian, one
> | can add the testing universe to get unstable versions if needed.
> | >
> | > This setup would not need any code changes in Metacello and it
> | allows us to use access rights to assign people to manage the process
> | and assert a certain level of quality.
> |
> | Yes!
> |
> | >
> | > Cheers,
> | > Adrian
> | >
> | >
> | > On Mar 17, 2010, at 23:41 , Miguel Enrique Cobá Martinez wrote:
> | >
> | >> El mié, 17-03-2010 a las 15:20 -0700, Dale Henrichs escribió:
> | >>> ----- "Esteban Lorenzano" <estebanlm(a)gmail.com> wrote:
> | >>>
> | >>> | > - any idea about how we go to differentiate "stable" and
> | "unstable"
> | >>> |
> | >>> | > universes for each Pharo version? How does the user know which
> | version
> | >>> | > is the one he needs for his version of Pharo? Sorry, this is
> | not
> | >>> | > directly related to the Gofer Project Loader but I think it is
> | the next
> | >>> | > important step towards a working package management system!
> | >>> |
> | >>> | No clue... maybe we need to add to Metacello a new "dependence
> | >>> | dimension", like "minimum version of distribution"... but Dale
> | can be
> | >>> | much more helpful than me in this area.
> | >>>
> | >>> I imagine that code targetted for specific Pharo versions will be
> | treated like we treat code targeted for different Smalltalk dialects.
> | So you would write specs like the following:
> | >>>
> | >>> spec for: #common do: [...].
> | >>> spec for: #squeakCommon do: [...].
> | >>> spec for: #pharo do: [...].
> | >>> spec for: #'pharo1.0' do: [...].
> | >>> spec for: #'pharo1.1' do: [...].
> | >>>
> | >>> or possibly like the following, if a finer version granularity is
> | needed:
> | >>>
> | >>> spec for: #common do: [...].
> | >>> spec for: #squeakCommon do: [...].
> | >>> spec for: #pharo do: [...].
> | >>> spec for: #'pharo1.0' do: [...].
> | >>> spec for: #'pharo1.0-10508' do: [...].
> | >>> spec for: #'pharo1.0-10515' do: [...].
> | >>> spec for: #'pharo1.1' do: [...].
> | >>> spec for: #'pharo1.1-11508' do: [...].
> | >>> spec for: #'pharo1.1-11515' do: [...].
> | >>>
> | >>> Dale
> | >>>
> | >>
> | >> umm, no please!
> | >>
> | >> There would be a lot of combinations after a while.
> | >>
> | >> Why about having a new spec universes message that accept a list
> | of
> | >> symbols, each symbol representing a given "universe" of tested
> | packages.
> | >> This list will be the only thing to modify when grouping different
> | >> versions of the same package in different repositories.
> | >>
> | >> For example, I start with ConfigurationOfMagma version 1.0r43. Two
> | weeks
> | >> later I release ConfigurationOfMagma with support for loading
> | 1.0r44.
> | >> Both this versions have been tested on Pharo 1.0. So the both are
> | >> marked
> | >>
> | >> spec universes: #(#pharo10).
> | >>
> | >> A week later Pharo 1.1 is released, and I test the configuration on
> | this
> | >> new version of pharo. Both work ok. So I modify the line to:
> | >>
> | >> spec universes: #(#pharo10 #pharo11)
> | >>
> | >> and commit.
> | >>
> | >> The tools (GoferProjectLoader) then add functionality to scan this
> | list
> | >> and presents the users only the appropriated ones based on the
> | image the
> | >> users is querying the repository.
> | >>
> | >> Of course this is very simplistic because as the debian model
> | shows,
> | >> requires a maintainer of each configuration and the user to report
> | if a
> | >> given #pharo11 marked version actually doesn't work. If something
> | don't
> | >> work, or a new version is given that works, or the tag #pharo11 is
> | >> removed from that version effectively removing it from that given
> | >> universe until bugs are fixed or worked around.
> | >>
> | >> What do you think?
> | >>
> | >> Cheers
> | >>> _______________________________________________
> | >>> Pharo-project mailing list
> | >>> Pharo-project(a)lists.gforge.inria.fr
> | >>>
> | http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
> | >>
> | >> --
> | >> Miguel Cobá
> | >> http://miguel.leugim.com.mx
> | >>
> | >>
> | >> _______________________________________________
> | >> Pharo-project mailing list
> | >> Pharo-project(a)lists.gforge.inria.fr
> | >>
> | http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
> | >
> | >
> | > _______________________________________________
> | > Pharo-project mailing list
> | > Pharo-project(a)lists.gforge.inria.fr
> | > http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
> |
> |
> | _______________________________________________
> | Pharo-project mailing list
> | Pharo-project(a)lists.gforge.inria.fr
> | http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
>
> _______________________________________________
> Pharo-project mailing list
> Pharo-project(a)lists.gforge.inria.fr
> http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
March 18, 2010
[Pharo-project] on PluggableTreeMorph changeSelected selector
by laurent laffont
Hi,
I have
aTreeMorph := PluggableTreeMorph
on: self
list: #items
selected: #selectedItem
changeSelected: #onItemClick:.
MyClass>>selectedItem
^ myCollection collect:[:item | PluggableListItemWrapper with: item]
When a item is selected, PluggableTreeMorph passes the wrapped item to
#onItemClick:
Shouldn't it be more consistent to have the instance of
PluggableListItemWrapper passed instead ?
Laurent Laffont
March 18, 2010
Re: [Pharo-project] [update 1.1] #11278
by Martin McClure
On 03/18/10 11:42, Marcus Denker wrote:
> 11278
> -----
>
> Issue 2136: Smalltalk and SmalltalkImage (CleaningSystemDictionary.3.cs)
After this update, attempting to "save as" the image results in a
walkback and a hot loop, apparently after the image is actually saved.
Launching the saved image gets into the same problem.
Debug log is:
THERE_BE_DRAGONS_HERE
MessageNotUnderstood: SmalltalkImage>>isRisc
18 March 2010 12:16:03 pm
VM: unix - i686 - linux - Squeak3.10.2 of '5 June 2008' [latest update:
#7179]
Image: PharoCore1.1ALPHA [Latest update: #11278]
SecurityManager state:
Restricted: false
FileAccess: true
SocketAccess: true
Working Dir /mnt/caboodle1/Martin/apps/pharo/PharoCore-1.1-11268-UNSTABLE
Trusted Dir
/mnt/caboodle1/Martin/apps/pharo/PharoCore-1.1-11268-UNSTABLE/secure
Untrusted Dir
/mnt/caboodle1/Martin/apps/pharo/PharoCore-1.1-11268-UNSTABLE/My Squeak
SmalltalkImage(Object)>>doesNotUnderstand: #isRisc
Receiver: Smalltalk
Arguments and temporary variables:
t1: isRisc
t2: MessageNotUnderstood: SmalltalkImage>>isRisc
t3: nil
Receiver's instance variables:
globals: a SystemDictionary(lots of globals)
RiscOSPlatform class>>isActivePlatform
Receiver: RiscOSPlatform
Arguments and temporary variables:
Receiver's instance variables:
superclass: OSPlatform
methodDict: a
MethodDictionary(#platformFamily->(RiscOSPlatform>>#platformFamil...etc...
format: 2
instanceVariables: nil
organization: ('accessing' platformFamily)
subclasses: nil
name: #RiscOSPlatform
classPool: nil
sharedPools: nil
environment: a SystemDictionary(lots of globals)
category: #'System-Platforms'
traitComposition: nil
localSelectors: nil
[] in OSPlatform class>>determineActivePlatformStartingAt:
Receiver: OSPlatform
Arguments and temporary variables:
t3: RiscOSPlatform
Receiver's instance variables:
superclass: Object
methodDict: a
MethodDictionary(#clipboardClass->(OSPlatform>>#clipboardClass "a...etc...
format: 2
instanceVariables: nil
organization: ('*System-Clipboard' clipboardClass)
('accessing' platformFamily ...etc...
subclasses: {MacOSXPlatform. RiscOSPlatform. UnixPlatform. Win32Platform}
name: #OSPlatform
classPool: a Dictionary(#Current->an UnixPlatform )
sharedPools: nil
environment: a SystemDictionary(lots of globals)
category: #'System-Platforms'
traitComposition: {}
localSelectors: nil
[] in OrderedCollection(Collection)>>detect:ifNone:
Receiver: an OrderedCollection(MacOSXPlatform RiscOSPlatform
UnixPlatform Win32Platform)
Arguments and temporary variables:
t1: RiscOSPlatform
t3: [closure] in OSPlatform class>>determineActivePlatformStartingAt:
Receiver's instance variables:
array: {MacOSXPlatform. RiscOSPlatform. UnixPlatform. Win32Platform}
firstIndex: 1
lastIndex: 4
OrderedCollection>>do:
Receiver: an OrderedCollection(MacOSXPlatform RiscOSPlatform
UnixPlatform Win32Platform)
Arguments and temporary variables:
t1: [closure] in OrderedCollection(Collection)>>detect:ifNone:
t2: 2
Receiver's instance variables:
array: {MacOSXPlatform. RiscOSPlatform. UnixPlatform. Win32Platform}
firstIndex: 1
lastIndex: 4
OrderedCollection(Collection)>>detect:ifNone:
Receiver: an OrderedCollection(MacOSXPlatform RiscOSPlatform
UnixPlatform Win32Platform)
Arguments and temporary variables:
t1: [closure] in OSPlatform class>>determineActivePlatformStartingAt:
t2: [closure] in OSPlatform class>>determineActivePlatformStartingAt:
Receiver's instance variables:
array: {MacOSXPlatform. RiscOSPlatform. UnixPlatform. Win32Platform}
firstIndex: 1
lastIndex: 4
OSPlatform class>>determineActivePlatformStartingAt:
Receiver: OSPlatform
Arguments and temporary variables:
t1: OSPlatform
t2: nil
Receiver's instance variables:
superclass: Object
methodDict: a
MethodDictionary(#clipboardClass->(OSPlatform>>#clipboardClass "a...etc...
format: 2
instanceVariables: nil
organization: ('*System-Clipboard' clipboardClass)
('accessing' platformFamily ...etc...
subclasses: {MacOSXPlatform. RiscOSPlatform. UnixPlatform. Win32Platform}
name: #OSPlatform
classPool: a Dictionary(#Current->an UnixPlatform )
sharedPools: nil
environment: a SystemDictionary(lots of globals)
category: #'System-Platforms'
traitComposition: {}
localSelectors: nil
OSPlatform class>>startUp:
Receiver: OSPlatform
Arguments and temporary variables:
t1: false
t2: nil
Receiver's instance variables:
superclass: Object
methodDict: a
MethodDictionary(#clipboardClass->(OSPlatform>>#clipboardClass "a...etc...
format: 2
instanceVariables: nil
organization: ('*System-Clipboard' clipboardClass)
('accessing' platformFamily ...etc...
subclasses: {MacOSXPlatform. RiscOSPlatform. UnixPlatform. Win32Platform}
name: #OSPlatform
classPool: a Dictionary(#Current->an UnixPlatform )
sharedPools: nil
environment: a SystemDictionary(lots of globals)
category: #'System-Platforms'
traitComposition: {}
localSelectors: nil
[] in [] in SmalltalkImage>>send:toClassesNamedIn:with:
Receiver: Smalltalk
Arguments and temporary variables:
t1: #startUp:
t3: false
t6: OSPlatform
Receiver's instance variables:
globals: a SystemDictionary(lots of globals)
BlockClosure>>on:do:
Receiver: [closure] in [] in SmalltalkImage>>send:toClassesNamedIn:with:
Arguments and temporary variables:
t1: Exception
t2: [closure] in [] in SmalltalkImage>>send:toClassesNamedIn:with:
t3: false
Receiver's instance variables:
outerContext: [] in SmalltalkImage>>send:toClassesNamedIn:with:
startpc: 133
numArgs: 0
[] in SmalltalkImage>>send:toClassesNamedIn:with:
Receiver: Smalltalk
Arguments and temporary variables:
t1: #OSPlatform
t3: #startUp:
t4: false
t5: an OrderedCollection()
t6: OSPlatform
Receiver's instance variables:
globals: a SystemDictionary(lots of globals)
OrderedCollection>>do:
Receiver: an OrderedCollection(#Delay #OSPlatform #DisplayScreen
#Cursor #InputEventFetcher #Process...etc...
Arguments and temporary variables:
t1: [closure] in SmalltalkImage>>send:toClassesNamedIn:with:
t2: 2
Receiver's instance variables:
array: #(#Delay #OSPlatform #DisplayScreen #Cursor #InputEventFetcher
#Processo...etc...
firstIndex: 1
lastIndex: 38
SmalltalkImage>>send:toClassesNamedIn:with:
Receiver: Smalltalk
Arguments and temporary variables:
t1: #startUp:
t2: an OrderedCollection(#Delay #OSPlatform #DisplayScreen #Cursor
#InputEventF...etc...
t3: false
t4: an OrderedCollection()
Receiver's instance variables:
globals: a SystemDictionary(lots of globals)
SmalltalkImage>>processStartUpList:
Receiver: Smalltalk
Arguments and temporary variables:
t1: false
Receiver's instance variables:
globals: a SystemDictionary(lots of globals)
SmalltalkImage>>snapshot:andQuit:embedded:
Receiver: Smalltalk
Arguments and temporary variables:
t1: true
t2: false
t3: false
t4: false
t5: '----SNAPSHOT----an Array(18 March 2010 12:16:02 pm) 11278.image
priorSourc...etc...
Receiver's instance variables:
globals: a SystemDictionary(lots of globals)
SmalltalkImage>>snapshot:andQuit:
Receiver: Smalltalk
Arguments and temporary variables:
t1: true
t2: false
Receiver's instance variables:
globals: a SystemDictionary(lots of globals)
SmalltalkImage>>saveImageInFileNamed:
Receiver: Smalltalk
Arguments and temporary variables:
t1:
'/mnt/caboodle1/Martin/apps/pharo/PharoCore-1.1-11268-UNSTABLE/11278.image'...etc...
t2:
'/mnt/caboodle1/Martin/apps/pharo/PharoCore-1.1-11268-UNSTABLE/11278.image'...etc...
t3:
'/mnt/caboodle1/Martin/apps/pharo/PharoCore-1.1-11268-UNSTABLE/updated.imag...etc...
Receiver's instance variables:
globals: a SystemDictionary(lots of globals)
SmalltalkImage>>saveAs:
Receiver: Smalltalk
Arguments and temporary variables:
t1: '11278'
Receiver's instance variables:
globals: a SystemDictionary(lots of globals)
WorldState class>>saveAs
Receiver: WorldState
Arguments and temporary variables:
t1: '11278'
t2: nil
Receiver's instance variables:
superclass: Object
methodDict: a MethodDictionary(#activeHand->(WorldState>>#activeHand
"a Compile...etc...
format: 154
instanceVariables: #('hands' 'viewBox' 'canvas' 'damageRecorder'
'stepList' 'la...etc...
organization: ('alarms' addAlarm:withArguments:for:at:
adjustAlarmTimes: alarmS...etc...
subclasses: nil
name: #WorldState
classPool: a Dictionary(#CanSurrenderToOS->true
#DebugShowDamage->false #Deferr...etc...
sharedPools: nil
environment: a SystemDictionary(lots of globals)
category: #'Morphic-Worlds'
traitComposition: {}
localSelectors: nil
[] in ToggleMenuItemMorph(MenuItemMorph)>>invokeWithEvent:
Receiver: a ToggleMenuItemMorph(1907)'Save as...'
Arguments and temporary variables:
t1: [195@387 mouseUp 857540 nil]
t3: 0
Receiver's instance variables:
bounds: 169@376 corner: 314@394
owner: a MenuMorph(1782)
submorphs: #()
fullBounds: 169@376 corner: 314@394
color: Color black
extension: a MorphExtension (4039)
font: a StrikeFont(Bitmap DejaVu Sans 9 14)
emphasis: 0
contents: 'Save as...'
hasFocus: false
isEnabled: true
subMenu: nil
isSelected: false
target: WorldState
selector: #saveAs
arguments: #()
icon: Form(16x16x32)
getStateSelector: nil
enablementSelector: nil
keyText: nil
BlockClosure>>ensure:
Receiver: [closure] in ToggleMenuItemMorph(MenuItemMorph)>>invokeWithEvent:
Arguments and temporary variables:
t1: [closure] in CursorWithMask(Cursor)>>showWhile:
t2: nil
t3: nil
Receiver's instance variables:
outerContext: ToggleMenuItemMorph(MenuItemMorph)>>invokeWithEvent:
startpc: 132
numArgs: 0
CursorWithMask(Cursor)>>showWhile:
Receiver: ((CursorWithMask
extent: 16@16
depth: 1
fromArray: #(
2r0
2r10000000000000000000000...etc...
Arguments and temporary variables:
t1: [closure] in ToggleMenuItemMorph(MenuItemMorph)>>invokeWithEvent:
t2: ((CursorWithMask
extent: 16@16
depth: 1
fromArray: #(
2r0
2r10000000...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(1907)'Save as...'
Arguments and temporary variables:
t1: [195@387 mouseUp 857540 nil]
t2: a PasteUpMorph(1622) [world]
Receiver's instance variables:
bounds: 169@376 corner: 314@394
owner: a MenuMorph(1782)
submorphs: #()
fullBounds: 169@376 corner: 314@394
color: Color black
extension: a MorphExtension (4039)
font: a StrikeFont(Bitmap DejaVu Sans 9 14)
emphasis: 0
contents: 'Save as...'
hasFocus: false
isEnabled: true
subMenu: nil
isSelected: false
target: WorldState
selector: #saveAs
arguments: #()
icon: Form(16x16x32)
getStateSelector: nil
enablementSelector: nil
keyText: nil
ToggleMenuItemMorph(MenuItemMorph)>>mouseUp:
Receiver: a ToggleMenuItemMorph(1907)'Save as...'
Arguments and temporary variables:
t1: [195@387 mouseUp 857540 nil]
Receiver's instance variables:
bounds: 169@376 corner: 314@394
owner: a MenuMorph(1782)
submorphs: #()
fullBounds: 169@376 corner: 314@394
color: Color black
extension: a MorphExtension (4039)
font: a StrikeFont(Bitmap DejaVu Sans 9 14)
emphasis: 0
contents: 'Save as...'
hasFocus: false
isEnabled: true
subMenu: nil
isSelected: false
target: WorldState
selector: #saveAs
arguments: #()
icon: Form(16x16x32)
getStateSelector: nil
enablementSelector: nil
keyText: nil
ToggleMenuItemMorph(MenuItemMorph)>>handleMouseUp:
Receiver: a ToggleMenuItemMorph(1907)'Save as...'
Arguments and temporary variables:
t1: [195@387 mouseUp 857540 nil]
Receiver's instance variables:
bounds: 169@376 corner: 314@394
owner: a MenuMorph(1782)
submorphs: #()
fullBounds: 169@376 corner: 314@394
color: Color black
extension: a MorphExtension (4039)
font: a StrikeFont(Bitmap DejaVu Sans 9 14)
emphasis: 0
contents: 'Save as...'
hasFocus: false
isEnabled: true
subMenu: nil
isSelected: false
target: WorldState
selector: #saveAs
arguments: #()
icon: Form(16x16x32)
getStateSelector: nil
enablementSelector: nil
keyText: nil
MouseButtonEvent>>sentTo:
Receiver: [195@387 mouseUp 857540 nil]
Arguments and temporary variables:
t1: a ToggleMenuItemMorph(1907)'Save as...'
Receiver's instance variables:
timeStamp: 857540
source: a HandMorph(3216)
windowIndex: nil
type: #mouseUp
buttons: 0
position: 195@387
handler: nil
wasHandled: true
whichButton: 4
ToggleMenuItemMorph(Morph)>>handleEvent:
Receiver: a ToggleMenuItemMorph(1907)'Save as...'
Arguments and temporary variables:
t1: [195@387 mouseUp 857540 nil]
Receiver's instance variables:
bounds: 169@376 corner: 314@394
owner: a MenuMorph(1782)
submorphs: #()
fullBounds: 169@376 corner: 314@394
color: Color black
extension: a MorphExtension (4039)
font: a StrikeFont(Bitmap DejaVu Sans 9 14)
emphasis: 0
contents: 'Save as...'
hasFocus: false
isEnabled: true
subMenu: nil
isSelected: false
target: WorldState
selector: #saveAs
arguments: #()
icon: Form(16x16x32)
getStateSelector: nil
enablementSelector: nil
keyText: nil
MorphicEventDispatcher>>dispatchDefault:with:
Receiver: a MorphicEventDispatcher
Arguments and temporary variables:
t1: [195@387 mouseUp 857540 nil]
t2: a ToggleMenuItemMorph(1907)'Save as...'
t3: nil
t4: 1
t5: nil
t6: #()
t7: true
Receiver's instance variables:
lastType: #mouseUp
lastDispatch: #dispatchDefault:with:
MorphicEventDispatcher>>dispatchEvent:with:
Receiver: a MorphicEventDispatcher
Arguments and temporary variables:
t1: [195@387 mouseUp 857540 nil]
t2: a ToggleMenuItemMorph(1907)'Save as...'
Receiver's instance variables:
lastType: #mouseUp
lastDispatch: #dispatchDefault:with:
ToggleMenuItemMorph(Morph)>>processEvent:using:
Receiver: a ToggleMenuItemMorph(1907)'Save as...'
Arguments and temporary variables:
t1: [195@387 mouseUp 857540 nil]
t2: a MorphicEventDispatcher
Receiver's instance variables:
bounds: 169@376 corner: 314@394
owner: a MenuMorph(1782)
submorphs: #()
fullBounds: 169@376 corner: 314@394
color: Color black
extension: a MorphExtension (4039)
font: a StrikeFont(Bitmap DejaVu Sans 9 14)
emphasis: 0
contents: 'Save as...'
hasFocus: false
isEnabled: true
subMenu: nil
isSelected: false
target: WorldState
selector: #saveAs
arguments: #()
icon: Form(16x16x32)
getStateSelector: nil
enablementSelector: nil
keyText: nil
MorphicEventDispatcher>>dispatchDefault:with:
Receiver: a MorphicEventDispatcher
Arguments and temporary variables:
t1: [195@387 mouseUp 857540 nil]
t2: a MenuMorph(1782)
t3: [195@387 mouseUp 857540 nil]
t4: 13
t5: a ToggleMenuItemMorph(1907)'Save as...'
t6: an Array(an AlignmentMorph(996) a ToggleMenuItemMorph(500)'System
Browser' ...etc...
t7: false
Receiver's instance variables:
lastType: #mouseUp
lastDispatch: #dispatchDefault:with:
MorphicEventDispatcher>>dispatchEvent:with:
Receiver: a MorphicEventDispatcher
Arguments and temporary variables:
t1: [195@387 mouseUp 857540 nil]
t2: a MenuMorph(1782)
Receiver's instance variables:
lastType: #mouseUp
lastDispatch: #dispatchDefault:with:
MenuMorph(Morph)>>processEvent:using:
Receiver: a MenuMorph(1782)
Arguments and temporary variables:
t1: [195@387 mouseUp 857540 nil]
t2: a MorphicEventDispatcher
Receiver's instance variables:
bounds: 165@171 corner: 318@436
owner: nil
submorphs: an Array(an AlignmentMorph(996) a
ToggleMenuItemMorph(500)'System Br...etc...
fullBounds: 165@171 corner: 319@437
color: (Color r: 0.871 g: 0.871 b: 0.871)
extension: a MorphExtension (1330) [other: (basicColor -> (Color r:
0.784 g: 0...etc...
borderWidth: 1
borderColor: Color gray
defaultTarget: nil
selectedItem: a ToggleMenuItemMorph(1907)'Save as...'
stayUp: false
popUpOwner: nil
activeSubMenu: nil
activatorDockingBar: nil
embeddable: nil
MenuMorph(Morph)>>processEvent:
Receiver: a MenuMorph(1782)
Arguments and temporary variables:
t1: [195@387 mouseUp 857540 nil]
Receiver's instance variables:
bounds: 165@171 corner: 318@436
owner: nil
submorphs: an Array(an AlignmentMorph(996) a
ToggleMenuItemMorph(500)'System Br...etc...
fullBounds: 165@171 corner: 319@437
color: (Color r: 0.871 g: 0.871 b: 0.871)
extension: a MorphExtension (1330) [other: (basicColor -> (Color r:
0.784 g: 0...etc...
borderWidth: 1
borderColor: Color gray
defaultTarget: nil
selectedItem: a ToggleMenuItemMorph(1907)'Save as...'
stayUp: false
popUpOwner: nil
activeSubMenu: nil
activatorDockingBar: nil
embeddable: nil
MenuMorph>>handleFocusEvent:
Receiver: a MenuMorph(1782)
Arguments and temporary variables:
t1: [195@387 mouseUp 857540 nil]
Receiver's instance variables:
bounds: 165@171 corner: 318@436
owner: nil
submorphs: an Array(an AlignmentMorph(996) a
ToggleMenuItemMorph(500)'System Br...etc...
fullBounds: 165@171 corner: 319@437
color: (Color r: 0.871 g: 0.871 b: 0.871)
extension: a MorphExtension (1330) [other: (basicColor -> (Color r:
0.784 g: 0...etc...
borderWidth: 1
borderColor: Color gray
defaultTarget: nil
selectedItem: a ToggleMenuItemMorph(1907)'Save as...'
stayUp: false
popUpOwner: nil
activeSubMenu: nil
activatorDockingBar: nil
embeddable: nil
[] in HandMorph>>sendFocusEvent:to:clear:
Receiver: a HandMorph(3216)
Arguments and temporary variables:
t1: [195@387 mouseUp 857540 nil]
t2: a MenuMorph(1782)
t5: #(nil)
Receiver's instance variables:
bounds: 228@452 corner: 244@468
owner: a PasteUpMorph(1622) [world]
submorphs: #()
fullBounds: nil
color: Color blue
extension: a MorphExtension (539) [eventHandler = an EventHandler]
mouseFocus: nil
keyboardFocus: a PluggableButtonMorph(3549)
eventListeners: nil
mouseListeners: nil
keyboardListeners: nil
mouseClickState: nil
mouseOverHandler: a MouseOverHandler
lastMouseEvent: [228@452 mouseUp 865364 nil]
targetOffset: 26@17
damageRecorder: a DamageRecorder
cacheCanvas: nil
cachedCanvasHasHoles: true
temporaryCursor: nil
temporaryCursorOffset: nil
hardwareCursor: nil
hasChanged: true
savedPatch: nil
userInitials: ''
lastEventBuffer: #(1 865364 228 452 0 0 0 1)
lastKeyScanCode: 56
combinedChar: nil
[] in PasteUpMorph>>becomeActiveDuring:
Receiver: a PasteUpMorph(1622) [world]
Arguments and temporary variables:
t1: [closure] in HandMorph>>sendFocusEvent:to:clear:
Receiver's instance variables:
bounds: 0@0 corner: 808@609
owner: nil
submorphs: an Array(a TaskbarMorph(3095) a PreDebugWindow(1728) an
ImageMorph(9...etc...
fullBounds: nil
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:
t1: Error
t2: [closure] in PasteUpMorph>>becomeActiveDuring:
t3: false
Receiver's instance variables:
outerContext: PasteUpMorph>>becomeActiveDuring:
startpc: 67
numArgs: 0
PasteUpMorph>>becomeActiveDuring:
Receiver: a PasteUpMorph(1622) [world]
Arguments and temporary variables:
t1: [closure] in HandMorph>>sendFocusEvent:to:clear:
t2: a PasteUpMorph(1622) [world]
t3: a HandMorph(3216)
t4: [195@387 mouseOver red nil nil]
Receiver's instance variables:
bounds: 0@0 corner: 808@609
owner: nil
submorphs: an Array(a TaskbarMorph(3095) a PreDebugWindow(1728) an
ImageMorph(9...etc...
fullBounds: nil
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
--- The full stack ---
SmalltalkImage(Object)>>doesNotUnderstand: #isRisc
RiscOSPlatform class>>isActivePlatform
[] in OSPlatform class>>determineActivePlatformStartingAt:
[] in OrderedCollection(Collection)>>detect:ifNone:
OrderedCollection>>do:
OrderedCollection(Collection)>>detect:ifNone:
OSPlatform class>>determineActivePlatformStartingAt:
OSPlatform class>>startUp:
[] in [] in SmalltalkImage>>send:toClassesNamedIn:with:
BlockClosure>>on:do:
[] in SmalltalkImage>>send:toClassesNamedIn:with:
OrderedCollection>>do:
SmalltalkImage>>send:toClassesNamedIn:with:
SmalltalkImage>>processStartUpList:
SmalltalkImage>>snapshot:andQuit:embedded:
SmalltalkImage>>snapshot:andQuit:
SmalltalkImage>>saveImageInFileNamed:
SmalltalkImage>>saveAs:
WorldState class>>saveAs
[] 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
------------------------------------------------------------
March 18, 2010
Re: [Pharo-project] Remove Pen and PenPointRecorder ??
by Fernando olivero
Actually it wast just a weird coincidence!
I'm preparing a talk in which i have talk about the initial IDEs, so i had to put some screenshots of Smalltalk-72 and Smalltalk-80.
so i took that one from the book entitled "Inside Smalltalk" ( http://stephane.ducasse.free.fr/FreeBooks.html)
And imagine my surprise when the subject just came up in the pharo list! I couldn't resist putting that screen shot!
Saludos,
Fernando
On Mar 18, 2010, at 7:22 PM, Mariano Martinez Peck wrote:
> Yes yes! I said in a funny way :)
> I couldn't believe you found that picture with exactly that class. That's amazing. Where did you get it ?
>
> On Thu, Mar 18, 2010 at 7:20 PM, Fernando olivero <oliverof(a)lu.unisi.ch> wrote:
>
> On Mar 18, 2010, at 6:52 PM, Stéphane Ducasse wrote:
>
> > No just young and fool (like I would like to be)
> > We need more people like you to kick our asses.
>
>
> mariano, i just wanted to put that old picture!
>
>
> >
> >> nuuuuuu hahahahhaha Incredible!!!
> >>
> >> ok guys...sorry for being the bad guy haha
> >>
> >
>
>
> Stef is right, you are doing a great job in cleaning up the mess!
>
> > _______________________________________________
> > Pharo-project mailing list
> > Pharo-project(a)lists.gforge.inria.fr
> > http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
>
>
> _______________________________________________
> Pharo-project mailing list
> Pharo-project(a)lists.gforge.inria.fr
> http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
>
> <ATT00001..txt>
March 18, 2010
[Pharo-project] [update 1.1] #11278
by Marcus Denker
11278
-----
Issue 2136: Smalltalk and SmalltalkImage (CleaningSystemDictionary.3.cs)
--
Marcus Denker -- http://www.marcusdenker.de
INRIA Lille -- Nord Europe. Team RMoD.
March 18, 2010
Re: [Pharo-project] About getting HashedCollection (another dream happening)
by Martin McClure
On 03/18/10 11:30, Stéphane Ducasse wrote:
> Hi martin
>
> ok tell us what is good for you and we freeze and give you access for your changes :)
> When. Which version do you want to stay stable?
> I know that marcus is integrated my changes (of yesterday) now.
I should have been more clear -- what I want to stay stable is the
hashed collection code (primarily Set and subclasses) in PharoCore 1.1.
Other changes are OK, though other changes to Kernel might make the
merge more interesting.
I'm running a system update right now to get to the current.
-Martin
March 18, 2010
Re: [Pharo-project] About getting HashedCollection (another dream happening)
by Stéphane Ducasse
Hi martin
ok tell us what is good for you and we freeze and give you access for your changes :)
When. Which version do you want to stay stable?
I know that marcus is integrated my changes (of yesterday) now.
Stef
On Mar 18, 2010, at 7:23 PM, Martin McClure wrote:
> On 03/14/10 06:22, Stéphane Ducasse wrote:
>> thanks.
>>
>> I'm waiting for the hash fixes that martin and andres are looking at.
>
> OK, you've jostled me into once more actively trying to integrate the hash changes into current 1.1... hopefully I'll be able to push to the inbox soon. It will help greatly if no other changes are integrated in the meantime, though. The code changes aren't large, but this is one of those cases where changing the running system from within gets tricky.
>
> -Martin
>
>
March 18, 2010
Re: [Pharo-project] About getting HashedCollection (another dream happening)
by Martin McClure
On 03/14/10 06:22, Stéphane Ducasse wrote:
> thanks.
>
> I'm waiting for the hash fixes that martin and andres are looking at.
OK, you've jostled me into once more actively trying to integrate the
hash changes into current 1.1... hopefully I'll be able to push to the
inbox soon. It will help greatly if no other changes are integrated in
the meantime, though. The code changes aren't large, but this is one of
those cases where changing the running system from within gets tricky.
-Martin
March 18, 2010
Re: [Pharo-project] Remove Pen and PenPointRecorder ??
by Mariano Martinez Peck
Yes yes! I said in a funny way :)
I couldn't believe you found that picture with exactly that class. That's
amazing. Where did you get it ?
On Thu, Mar 18, 2010 at 7:20 PM, Fernando olivero <oliverof(a)lu.unisi.ch>wrote:
>
> On Mar 18, 2010, at 6:52 PM, Stéphane Ducasse wrote:
>
> > No just young and fool (like I would like to be)
> > We need more people like you to kick our asses.
>
>
> mariano, i just wanted to put that old picture!
>
>
> >
> >> nuuuuuu hahahahhaha Incredible!!!
> >>
> >> ok guys...sorry for being the bad guy haha
> >>
> >
>
>
> Stef is right, you are doing a great job in cleaning up the mess!
>
> > _______________________________________________
> > Pharo-project mailing list
> > Pharo-project(a)lists.gforge.inria.fr
> > http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
>
>
> _______________________________________________
> Pharo-project mailing list
> Pharo-project(a)lists.gforge.inria.fr
> http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
>
March 18, 2010
Re: [Pharo-project] Remove Pen and PenPointRecorder ??
by Fernando olivero
On Mar 18, 2010, at 6:52 PM, Stéphane Ducasse wrote:
> No just young and fool (like I would like to be)
> We need more people like you to kick our asses.
mariano, i just wanted to put that old picture!
>
>> nuuuuuu hahahahhaha Incredible!!!
>>
>> ok guys...sorry for being the bad guy haha
>>
>
Stef is right, you are doing a great job in cleaning up the mess!
> _______________________________________________
> Pharo-project mailing list
> Pharo-project(a)lists.gforge.inria.fr
> http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
March 18, 2010