Pharo-dev
By thread
pharo-dev@lists.pharo.org
By month
Messages by month
- ----- 2026 -----
- October
- September
- 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
- 4 participants
- 144623 messages
Re: [Pharo-project] Backporting fixes
by Igor Stasenko
On 7 June 2012 13:37, Helene Bilbo <thereluctantprogrammer(a)fastmail.fm> wrote:
>
> Marcus Denker-4 wrote
>>
>> On Jun 7, 2012, at 11:10 AM, Marcus Denker wrote:
>>
>>>
>>> On Jun 7, 2012, at 11:07 AM, Helene Bilbo wrote:
>>>
>>>>
>>>> Sean P. DeNigris wrote
>>>>>
>>>>> I want to backport some fixes from 2.0 into 1.4. What's the best way to
>>>>> do
>>>>> that?
>>>>>
>>>>> Also, it seems to me that, given our new development process, all bugs
>>>>> should be tagged for both 1.4 and 2.0 unless they specifically don't
>>>>> apply
>>>>> to 1.4...
>>
>>>> What does it take to do this? I often file in bug-fixes from the
>>>> issue-tracker, test it for my own projects, run the available tests -
>>>> but of
>>>> course i often do not understand why a fix works, or if it is well made.
>>>
>>>
>>> If you do that, can you add a note to the bug tracker that you did it?
>>> takes 2 seconds.
>>
>> In general, I think there is a miss-conception of how things are done.
>>
>> The secret is: Things are done because they are done.
>>
>> Â Â Â Marcus
>>
>>
>
> Well, of course.
> My question (and Seanâs i think) were more of the kind: âexplain us how
> things are done", and not "please do this for meâ. So if it is of any value
> if i load a fix in a fresh 1.4 image and run tests - but as in the FileList
> case do not really understand what is going on - is of any help, i will
> gladly do it.
> Helene.
>
Helene, don't think that confirming that it works (or not) don't have a value.
It has HUGE HUGE HUGE HUGE HUGE HUGE value.
Actually it is one of the most important things: i tend to have lack
of confidence in changes i make,
and i don't want to rush them into image unless someone will take a
look at them or confirm it works for them. And many others doing the
same. Review is very important to assure quality of changes.
And you'll do a lot of contribution by simply loading the code and
test if it works.
And sure thing it would be better if you could understand the nature of changes
but it is impossible since there are too many changes in too many areas,
so we must put a trust to people who did the fix, and most probably
know better than you (or pretends to have ;)
> --
> View this message in context: http://forum.world.st/Backporting-fixes-tp4633625p4633670.html
> Sent from the Pharo Smalltalk mailing list archive at Nabble.com.
>
--
Best regards,
Igor Stasenko.
June 7, 2012
Re: [Pharo-project] Backporting fixes
by Marcus Denker
On Jun 7, 2012, at 3:06 PM, Sean P. DeNigris wrote:
>
> Marcus Denker-4 wrote
>>
>> so we should really limit us a bit.
>> ...
>>
> Absolutely, that list is very reasonable. I'm thinking specifically of
> annoyances introduced in the last version or two (e.g. in 1.3 the "DebugIt"
> shortcut is broken, and was working in 1.2). These are contained and
> frustrating, but may not be showstoppers in the way that I think of that
> word.
>
Is there a fix?
> I think this is a really important topic because we don't want to give our
> users, esp. new and business ones, the feeling that they are immediately
> unsupported on release. That's why I was especially excited about the new
> release policy which specifies two bug fix releases to the currently
> released version over the first year.
>
>
Yes, but bug fix releases don't make the actual fixes happen automatically.
> Marcus Denker-4 wrote
>>
>> The best thing is to just do it.
>>
> Let me be more specific. What I meant by "how", is technically what do I do
> with a slice from 2.0 in 1.4? For example, let's say
> SLICE-Issue-5871-FileReferencegtgtrenameTo-should-assume-same-folder-SeanDeNigris.1
> gets integrated into 2.0. Several versions have passed in both contained MC
> packages from 1.4. In this case, I looked at all the changes and they're
> comment fixes and other benign items, but... if there were also incompatible
> changes, how would I get just the relevant ones into 1.4.
>
> I'm looking for some code /like/ this - given
> FileSystem-Core-SeanDeNigris.12, either merge or make a changeset of just
> the changes between it and its immediate ancestor (i.e. just the fix).
>
You ask the author to re-do the fix in 1.4. Yes, this is a lot of work. That is why
it just can't be done with everything.
Marcus
--
Marcus Denker -- http://marcusdenker.de
June 7, 2012
Re: [Pharo-project] A small issue with Nautilus and PickListMorph
by Daniel Uber
Mark,
Confirmed in a fresh 2.0 image. Opened issue 6044
http://code.google.com/p/pharo/issues/detail?id=6044.
It looks like no class implements wrappingBlock:, but it's called from
CodeCriticBrowser, KMDescription, and ChangesBrowser (the culprit here).
Dan
On 06/07/2012 07:55 AM, Mark Smith wrote:
> I'm having some issues with Nautilus (in Pharo 1.4 and Pharo 2.0a)
> when trying to rename a method, and more recently when generating
> instance variable accessors.
>
> It appears that we may be missing a dependency as the PickListMorph
> doesn't understand the wrappingBlock: message.
>
> Can anyone confirm this problem?
>
> All the best,
>
> Mark
>
> And incase this is useful to anyone â
>
> 7 June 2012 1:03:30.005 pm
>
> VM: Mac OS - intel - 1073 - CoInterpreter
> VMMaker-oscog-EstebanLorenzano.158 uuid:
> 82eded98-68af-4c80-a472-4f6de293adcf May 1 2012,
> StackToRegisterMappingCogit VMMaker-oscog-EstebanLorenzano.158 uuid:
> 82eded98-68af-4c80-a472-4f6de293adcf May 1 2012,
> https://git.gitorious.org/cogvm/blessed.git Commit:
> 6aa3fd0f1188078d3167dec1a53031a61b97b688 Date: Tue May 1 20:28:14 2012
> +0200 By: Esteban Lorenzano <estebanlm(a)gmail.com
> <mailto:estebanlm@gmail.com>>
> Image: Pharo1.4 [Latest update: #14438]
>
> PickListModel(Object)>>doesNotUnderstand: #wrappingBlock:
> Receiver: a PickListModel
> Arguments and temporary variables:
> aMessage: wrappingBlock: [:item | item nameToDisplay]
> exception: MessageNotUnderstood: PickListModel>>wrappingBlock:
> resumeValue: nil
June 7, 2012
Re: [Pharo-project] Backporting fixes
by Sean P. DeNigris
Marcus Denker-4 wrote
>
> so we should really limit us a bit.
> ...
>
Absolutely, that list is very reasonable. I'm thinking specifically of
annoyances introduced in the last version or two (e.g. in 1.3 the "DebugIt"
shortcut is broken, and was working in 1.2). These are contained and
frustrating, but may not be showstoppers in the way that I think of that
word.
I think this is a really important topic because we don't want to give our
users, esp. new and business ones, the feeling that they are immediately
unsupported on release. That's why I was especially excited about the new
release policy which specifies two bug fix releases to the currently
released version over the first year.
Marcus Denker-4 wrote
>
> The best thing is to just do it.
>
Let me be more specific. What I meant by "how", is technically what do I do
with a slice from 2.0 in 1.4? For example, let's say
SLICE-Issue-5871-FileReferencegtgtrenameTo-should-assume-same-folder-SeanDeNigris.1
gets integrated into 2.0. Several versions have passed in both contained MC
packages from 1.4. In this case, I looked at all the changes and they're
comment fixes and other benign items, but... if there were also incompatible
changes, how would I get just the relevant ones into 1.4.
I'm looking for some code /like/ this - given
FileSystem-Core-SeanDeNigris.12, either merge or make a changeset of just
the changes between it and its immediate ancestor (i.e. just the fix).
Cheers,
Sean
--
View this message in context: http://forum.world.st/Backporting-fixes-tp4633625p4633694.html
Sent from the Pharo Smalltalk mailing list archive at Nabble.com.
June 7, 2012
Re: [Pharo-project] A small issue with Nautilus and PickListMorph
by Benjamin
I will fix this :)
A method forgotten during a refactor :)
Thank yoiu,
Ben
On Jun 7, 2012, at 8:55 AM, Mark Smith wrote:
> I'm having some issues with Nautilus (in Pharo 1.4 and Pharo 2.0a) when trying to rename a method, and more recently when generating instance variable accessors.
>
> It appears that we may be missing a dependency as the PickListMorph doesn't understand the wrappingBlock: message.
>
> Can anyone confirm this problem?
>
> All the best,
>
> Mark
>
> And incase this is useful to anyone â
>
> 7 June 2012 1:03:30.005 pm
>
> VM: Mac OS - intel - 1073 - CoInterpreter VMMaker-oscog-EstebanLorenzano.158 uuid: 82eded98-68af-4c80-a472-4f6de293adcf May 1 2012, StackToRegisterMappingCogit VMMaker-oscog-EstebanLorenzano.158 uuid: 82eded98-68af-4c80-a472-4f6de293adcf May 1 2012, https://git.gitorious.org/cogvm/blessed.git Commit: 6aa3fd0f1188078d3167dec1a53031a61b97b688 Date: Tue May 1 20:28:14 2012 +0200 By: Esteban Lorenzano <estebanlm(a)gmail.com>
> Image: Pharo1.4 [Latest update: #14438]
>
> PickListModel(Object)>>doesNotUnderstand: #wrappingBlock:
> Receiver: a PickListModel
> Arguments and temporary variables:
> aMessage: wrappingBlock: [:item | item nameToDisplay]
> exception: MessageNotUnderstood: PickListModel>>wrappingBlock:
> resumeValue: nil
> Receiver's instance variables:
> dependents: a DependentsArray(a ListComposableModel)
> bindings: a BindingsHolder
> focusOrder: nil
> owner: a ChangesBrowser
> window: nil
> widget: nil
> defaultValueHolder: a NewValueHolder
> labelClickableHolder: a NewValueHolder
> listModel: a ListComposableModel
> pickedItemsHolder: a NewValueHolder
> wrapHolder: a NewValueHolder
> associationsItemToWrapper: a DictionaryValueHolder
> associationsWrapperToItem: a DictionaryValueHolder
>
> ChangesBrowser>>initializePickList
> Receiver: a ChangesBrowser
> Arguments and temporary variables:
>
> Receiver's instance variables:
> dependents: a DependentsArray(a ButtonModel a ButtonModel a PickListModel)
> bindings: a BindingsHolder
> focusOrder: nil
> owner: nil
> window: nil
> widget: nil
> acceptButton: a ButtonModel
> cancelButton: a ButtonModel
> pickList: a PickListModel
> textArea: nil
>
> ChangesBrowser>>initialize
> Receiver: a ChangesBrowser
> Arguments and temporary variables:
>
> Receiver's instance variables:
> dependents: a DependentsArray(a ButtonModel a ButtonModel a PickListModel)
> bindings: a BindingsHolder
> focusOrder: nil
> owner: nil
> window: nil
> widget: nil
> acceptButton: a ButtonModel
> cancelButton: a ButtonModel
> pickList: a PickListModel
> textArea: nil
>
> ChangesBrowser class(Behavior)>>new
> Receiver: ChangesBrowser
> Arguments and temporary variables:
>
> Receiver's instance variables:
> superclass: ComposableModel
> methodDict: a MethodDictionary(#accept->(ChangesBrowser>>#accept "a CompiledMet...etc...
> format: 150
> instanceVariables: #('acceptButton' 'cancelButton' 'pickList' 'textArea')
> organization: ('private' accept buildDiffFor: cancel change:)
> ('accessing' acce...etc...
> subclasses: nil
> name: #ChangesBrowser
> classPool: nil
> sharedPools: nil
> environment: a SystemDictionary(lots of globals)
> category: #'NautilusRefactoring-Utilities'
> traitComposition: {}
> localSelectors: nil
>
> ChangesBrowser class>>changes:
> Receiver: ChangesBrowser
> Arguments and temporary variables:
> aCollection: an Array(a RBRenameMethodRefactoring)
> Receiver's instance variables:
> superclass: ComposableModel
> methodDict: a MethodDictionary(#accept->(ChangesBrowser>>#accept "a CompiledMet...etc...
> format: 150
> instanceVariables: #('acceptButton' 'cancelButton' 'pickList' 'textArea')
> organization: ('private' accept buildDiffFor: cancel change:)
> ('accessing' acce...etc...
> subclasses: nil
> name: #ChangesBrowser
> classPool: nil
> sharedPools: nil
> environment: a SystemDictionary(lots of globals)
> category: #'NautilusRefactoring-Utilities'
> traitComposition: {}
> localSelectors: nil
>
> NautilusRefactoring>>internalPerformRefactorings:
> Receiver: a NautilusRefactoring
> Arguments and temporary variables:
> aCollectionRefactoring: an Array(a RBRenameMethodRefactoring)
> Receiver's instance variables:
> environment: a RBNamespace
> model: a NautilusUI
>
> [self internalPerformRefactorings: aCollectionRefactoring] in [[self internalPerformRefactorings: aCollectionRefactoring]
> on: RBRefactoringWarning
> do: [:exception | self handleWarning: exception]] in NautilusRefactoring>>performRefactorings:
> Receiver: a NautilusRefactoring
> Arguments and temporary variables:
> aCollectionRefactoring: an Array(a RBRenameMethodRefactoring)
> Receiver's instance variables:
> environment: a RBNamespace
> model: a NautilusUI
>
> BlockClosure>>on:do:
> Receiver: [self internalPerformRefactorings: aCollectionRefactoring]
> Arguments and temporary variables:
> exception: RBRefactoringWarning
> handlerAction: [:exception | self handleWarning: exception]
> handlerActive: true
> Receiver's instance variables:
> outerContext: [[self internalPerformRefactorings: aCollectionRefactoring]
> on:...etc...
> startpc: 47
> numArgs: 0
>
> [[self internalPerformRefactorings: aCollectionRefactoring]
> on: RBRefactoringWarning
> do: [:exception | self handleWarning: exception]] in NautilusRefactoring>>performRefactorings:
> Receiver: a NautilusRefactoring
> Arguments and temporary variables:
> aCollectionRefactoring: an Array(a RBRenameMethodRefactoring)
> Receiver's instance variables:
> environment: a RBNamespace
> model: a NautilusUI
>
> BlockClosure>>on:do:
> Receiver: [[self internalPerformRefactorings: aCollectionRefactoring]
> on: RBRefactoringWarning
> d...etc...
> Arguments and temporary variables:
> exception: RBRefactoringError
> handlerAction: [:exception | self handleError: exception]
> handlerActive: true
> Receiver's instance variables:
> outerContext: NautilusRefactoring>>performRefactorings:
> startpc: 42
> numArgs: 0
>
> NautilusRefactoring>>performRefactorings:
> Receiver: a NautilusRefactoring
> Arguments and temporary variables:
> aCollectionRefactoring: an Array(a RBRenameMethodRefactoring)
> Receiver's instance variables:
> environment: a RBNamespace
> model: a NautilusUI
>
> NautilusRefactoring>>performRefactoring:
> Receiver: a NautilusRefactoring
> Arguments and temporary variables:
> aRefactoring: a RBRenameMethodRefactoring
> Receiver's instance variables:
> environment: a RBNamespace
> model: a NautilusUI
>
> NautilusRefactoring>>renameMethodFor:
> Receiver: a NautilusRefactoring
> Arguments and temporary variables:
> aMethod: (OmExample>>#exampleMethod "a CompiledMethod(760741888)")
> refactoring: a RBRenameMethodRefactoring
> Receiver's instance variables:
> environment: a RBNamespace
> model: a NautilusUI
>
> [:target |
> | scroll |
> scroll := target methodWidget vScrollValue.
> target refactor renameMethodFor: target selectedMethod.
> target methodWidget vScrollValue: scroll] in NautilusRefactoring class>>buildRefactoringMethodShortcutsOn:
> Receiver: NautilusRefactoring
> Arguments and temporary variables:
> target: a NautilusUI
> scroll: 0.0
> Receiver's instance variables:
> superclass: Object
> methodDict: a MethodDictionary(size 140)
> format: 134
> instanceVariables: #('environment' 'model')
> organization: ('class var' abstractClassVarFrom: accessorsClassVarFrom: addClas...etc...
> subclasses: nil
> name: #NautilusRefactoring
> classPool: a Dictionary(#PromptOnRefactoring->true )
> sharedPools: nil
> environment: a SystemDictionary(lots of globals)
> category: #NautilusRefactoring
> traitComposition: {}
> localSelectors: nil
>
> BlockClosure>>cull:
> Receiver: [:target |
> | scroll |
> scroll := target methodWidget vScrollValue.
> target refactor rename...etc...
> Arguments and temporary variables:
> anArg: a NautilusUI
> Receiver's instance variables:
> outerContext: NautilusRefactoring class>>buildRefactoringMethodShortcutsOn:
> startpc: 75
> numArgs: 1
>
> BlockClosure>>cull:cull:
> Receiver: [:target |
> | scroll |
> scroll := target methodWidget vScrollValue.
> target refactor rename...etc...
> Arguments and temporary variables:
> firstArg: a NautilusUI
> secondArg: a PluggableIconListMorph(310902784)
> Receiver's instance variables:
> outerContext: NautilusRefactoring class>>buildRefactoringMethodShortcutsOn:
> startpc: 75
> numArgs: 1
>
> BlockClosure>>cull:cull:cull:
> Receiver: [:target |
> | scroll |
> scroll := target methodWidget vScrollValue.
> target refactor rename...etc...
> Arguments and temporary variables:
> firstArg: a NautilusUI
> secondArg: a PluggableIconListMorph(310902784)
> thirdArg: [keystroke '<Cmd-r>']
> Receiver's instance variables:
> outerContext: NautilusRefactoring class>>buildRefactoringMethodShortcutsOn:
> startpc: 75
> numArgs: 1
>
> KMCategoryTarget>>completeMatch:buffer:
> Receiver: a KMCategoryTarget
> Arguments and temporary variables:
> aKeymap: #rename on Cmd + R do [:target |
> | scroll |
> scroll := target methodWi...etc...
> aBuffer: an OrderedCollection([keystroke '<Cmd-r>'])
> Receiver's instance variables:
> target: a NautilusUI
> category: a KMCategory
> morph: a PluggableIconListMorph(310902784)
>
> [:l | l completeMatch: self buffer: aBuffer] in KMKeymap>>notifyCompleteMatchTo:buffer:
> Receiver: #rename on Cmd + R do [:target |
> | scroll |
> scroll := target methodWidget vScrollValue.
> ...etc...
> Arguments and temporary variables:
> aBuffer: a KMCategoryTarget
> l: an OrderedCollection([keystroke '<Cmd-r>'])
> Receiver's instance variables:
> action: [:target |
> | scroll |
> scroll := target methodWidget vScrollValue.
> tar...etc...
> name: #rename
> shortcut: Cmd + R
> defaultShortcut: Cmd + R
> description: 'Rename the seleted method'
>
> Array(SequenceableCollection)>>do:
> Receiver: an Array(a KMDispatcher a KMCategoryTarget)
> Arguments and temporary variables:
> aBlock: [:l | l completeMatch: self buffer: aBuffer]
> index: 2
> indexLimiT: 2
> Receiver's instance variables:
> an Array(a KMDispatcher a KMCategoryTarget)
>
> KMKeymap>>notifyCompleteMatchTo:buffer:
> Receiver: #rename on Cmd + R do [:target |
> | scroll |
> scroll := target methodWidget vScrollValue.
> ...etc...
> Arguments and temporary variables:
> aListener: an Array(a KMDispatcher a KMCategoryTarget)
> aBuffer: an OrderedCollection([keystroke '<Cmd-r>'])
> listeners: an Array(a KMDispatcher a KMCategoryTarget)
> Receiver's instance variables:
> action: [:target |
> | scroll |
> scroll := target methodWidget vScrollValue.
> tar...etc...
> name: #rename
> shortcut: Cmd + R
> defaultShortcut: Cmd + R
> description: 'Rename the seleted method'
>
> KMKeymap>>onMatchWith:notify:andDo:
> Receiver: #rename on Cmd + R do [:target |
> | scroll |
> scroll := target methodWidget vScrollValue.
> ...etc...
> Arguments and temporary variables:
> anEventBuffer: an OrderedCollection([keystroke '<Cmd-r>'])
> aMatchListener: an Array(a KMDispatcher a KMCategoryTarget)
> anAction: [^ self]
> Receiver's instance variables:
> action: [:target |
> | scroll |
> scroll := target methodWidget vScrollValue.
> tar...etc...
> name: #rename
> shortcut: Cmd + R
> defaultShortcut: Cmd + R
> description: 'Rename the seleted method'
>
> [:entry | entry
> onMatchWith: anEventBuffer
> notify: aMatchListener
> andDo: aBlock] in KMCategory>>onMatchWith:notify:andDo:
> Receiver: a KMCategory
> Arguments and temporary variables:
> anEventBuffer: #rename on Cmd + R do [:target |
> | scroll |
> scroll := target me...etc...
> aMatchListener: an OrderedCollection([keystroke '<Cmd-r>'])
> aBlock: an Array(a KMDispatcher a KMCategoryTarget)
> entry: [^ self]
> Receiver's instance variables:
> name: #NautilusMethodShortcuts
> platforms: a Dictionary(#MacOSX->a Dictionary() #all->a Dictionary(#addMethodsI...etc...
>
> Array(SequenceableCollection)>>do:
> Receiver: an Array(#rename on Cmd + R do [:target |
> | scroll |
> scroll := target methodWidget vScrol...etc...
> Arguments and temporary variables:
> aBlock: [:entry | entry
> onMatchWith: anEventBuffer
> notify: aMatchListener
> ...etc...
> index: 1
> indexLimiT: 15
> Receiver's instance variables:
> an Array(#rename on Cmd + R do [:target |
> | scroll |
> scroll := target methodWidget vScrol...etc...
>
> KMCategory>>onMatchWith:notify:andDo:
> Receiver: a KMCategory
> Arguments and temporary variables:
> anEventBuffer: an OrderedCollection([keystroke '<Cmd-r>'])
> aMatchListener: an Array(a KMDispatcher a KMCategoryTarget)
> aBlock: [^ self]
> Receiver's instance variables:
> name: #NautilusMethodShortcuts
> platforms: a Dictionary(#MacOSX->a Dictionary() #all->a Dictionary(#addMethodsI...etc...
>
> KMCategoryTarget>>verifyMatchWith:notifying:thenDoing:
> Receiver: a KMCategoryTarget
> Arguments and temporary variables:
> anEventBuffer: an OrderedCollection([keystroke '<Cmd-r>'])
> aListener: a KMDispatcher
> anAction: [^ self]
> Receiver's instance variables:
> target: a NautilusUI
> category: a KMCategory
> morph: a PluggableIconListMorph(310902784)
>
> [:aTarget | aTarget
> verifyMatchWith: anEventBuffer
> notifying: self
> thenDoing: [^ self]] in KMDispatcher>>dispatch:
> Receiver: a KMDispatcher
> Arguments and temporary variables:
> anEventBuffer: a KMCategoryTarget
> aTarget: an OrderedCollection([keystroke '<Cmd-r>'])
> Receiver's instance variables:
> target: a KMTarget
> buffer: an OrderedCollection()
> shortcut:
> currentEvent: [keystroke '<Cmd-r>']
> targets: a Set(a KMCategoryTarget)
> morph: a PluggableIconListMorph(310902784)
> directKeymaps: a KMCategory
>
> Set>>do:
> Receiver: a Set(a KMCategoryTarget a KMCategoryTarget)
> Arguments and temporary variables:
> aBlock: [:aTarget | aTarget
> verifyMatchWith: anEventBuffer
> notifying: self
> ...etc...
> index: 1
> each: a KMCategoryTarget
> indexLimiT: 5
> Receiver's instance variables:
> tally: 2
> array: an Array(a KMCategoryTarget nil a KMCategoryTarget nil nil)
>
> KMDispatcher>>dispatch:
> Receiver: a KMDispatcher
> Arguments and temporary variables:
> anEventBuffer: an OrderedCollection([keystroke '<Cmd-r>'])
> association: nil
> match: nil
> Receiver's instance variables:
> target: a KMTarget
> buffer: an OrderedCollection()
> shortcut:
> currentEvent: [keystroke '<Cmd-r>']
> targets: a Set(a KMCategoryTarget)
> morph: a PluggableIconListMorph(310902784)
> directKeymaps: a KMCategory
>
> KMDispatcher>>matchEvent:
> Receiver: a KMDispatcher
> Arguments and temporary variables:
> keyboardEvent: [keystroke '<Cmd-r>']
> Receiver's instance variables:
> target: a KMTarget
> buffer: an OrderedCollection()
> shortcut:
> currentEvent: [keystroke '<Cmd-r>']
> targets: a Set(a KMCategoryTarget)
> morph: a PluggableIconListMorph(310902784)
> directKeymaps: a KMCategory
>
> KMDispatcher>>dispatchKeystroke:
> Receiver: a KMDispatcher
> Arguments and temporary variables:
> aKeyEvent: [keystroke '<Cmd-r>']
> Receiver's instance variables:
> target: a KMTarget
> buffer: an OrderedCollection()
> shortcut:
> currentEvent: [keystroke '<Cmd-r>']
> targets: a Set(a KMCategoryTarget)
> morph: a PluggableIconListMorph(310902784)
> directKeymaps: a KMCategory
>
> PluggableIconListMorph(Morph)>>dispatchKeystrokeForEvent:
> Receiver: a PluggableIconListMorph(310902784)
> Arguments and temporary variables:
> evt: [keystroke '<Cmd-r>']
> Receiver's instance variables:
> bounds: (586.0(a)163.0) corner: (752.0(a)366.0)
> owner: a NautilusWindow(494927872)
> submorphs: an Array(a TransformMorph(571473920))
> fullBounds: (586@163) corner: (752@366)
> color: Color white
> extension: a MorphExtension (1042546688) [locked] [other: (dragEnabled -> tru...etc...
> borderWidth: 1
> borderColor: (Color r: 0.745 g: 0.745 b: 0.745)
> model: a MethodWidget
> open: false
> accessor: nil
> scrollBar: a ScrollBar(341835776)
> scroller: a TransformMorph(571473920)
> retractableScrollBar: false
> scrollBarOnLeft: false
> getMenuSelector: #elementsMenu:shifted:
> getMenuTitleSelector: nil
> hasFocus: false
> hScrollBar: a ScrollBar(457703424)
> list: nil
> getListSelector: #getMethods
> getListSizeSelector: #methodListSize
> getListElementSelector: #getMethodItem:
> getIndexSelector: #selectedMethodIndex
> setIndexSelector: #selectedMethodIndex:
> keystrokeActionSelector: nil
> autoDeselect: true
> lastKeystrokeTime: 0
> lastKeystrokes: ''
> doubleClickSelector: nil
> handlesBasicKeys: nil
> potentialDropRow: nil
> listMorph: a LazyMorphListMorph(491520000)
> hScrollRangeCache: nil
> dragItemSelector: nil
> dropItemSelector: nil
> wantsDropSelector: nil
> wrapSelector: #methodWrapper:
> searchedElement: nil
> multipleSelection: true
> dragOnOrOff: nil
> setSelectionListSelector: #methodSelectionAt:put:
> getSelectionListSelector: #methodSelectionAt:
> resetListSelector: #resetMethodsListSelection
> keystrokeSelector: nil
> backgroundColoringBlockOrSelector: nil
> separatorBlockOrSelector: nil
> separatorSize: nil
> separatorColor: nil
> lastNonZeroIndex: 1
> getIconSelector: #methodIconFor:
>
> PluggableIconListMorph(Morph)>>handleKeystroke:
> Receiver: a PluggableIconListMorph(310902784)
> Arguments and temporary variables:
> anEvent: [keystroke '<Cmd-r>']
> Receiver's instance variables:
> bounds: (586.0(a)163.0) corner: (752.0(a)366.0)
> owner: a NautilusWindow(494927872)
> submorphs: an Array(a TransformMorph(571473920))
> fullBounds: (586@163) corner: (752@366)
> color: Color white
> extension: a MorphExtension (1042546688) [locked] [other: (dragEnabled -> tru...etc...
> borderWidth: 1
> borderColor: (Color r: 0.745 g: 0.745 b: 0.745)
> model: a MethodWidget
> open: false
> accessor: nil
> scrollBar: a ScrollBar(341835776)
> scroller: a TransformMorph(571473920)
> retractableScrollBar: false
> scrollBarOnLeft: false
> getMenuSelector: #elementsMenu:shifted:
> getMenuTitleSelector: nil
> hasFocus: false
> hScrollBar: a ScrollBar(457703424)
> list: nil
> getListSelector: #getMethods
> getListSizeSelector: #methodListSize
> getListElementSelector: #getMethodItem:
> getIndexSelector: #selectedMethodIndex
> setIndexSelector: #selectedMethodIndex:
> keystrokeActionSelector: nil
> autoDeselect: true
> lastKeystrokeTime: 0
> lastKeystrokes: ''
> doubleClickSelector: nil
> handlesBasicKeys: nil
> potentialDropRow: nil
> listMorph: a LazyMorphListMorph(491520000)
> hScrollRangeCache: nil
> dragItemSelector: nil
> dropItemSelector: nil
> wantsDropSelector: nil
> wrapSelector: #methodWrapper:
> searchedElement: nil
> multipleSelection: true
> dragOnOrOff: nil
> setSelectionListSelector: #methodSelectionAt:put:
> getSelectionListSelector: #methodSelectionAt:
> resetListSelector: #resetMethodsListSelection
> keystrokeSelector: nil
> backgroundColoringBlockOrSelector: nil
> separatorBlockOrSelector: nil
> separatorSize: nil
> separatorColor: nil
> lastNonZeroIndex: 1
> getIconSelector: #methodIconFor:
>
> KeyboardEvent>>sentTo:
> Receiver: [keystroke '<Cmd-r>']
> Arguments and temporary variables:
> anObject: a PluggableIconListMorph(310902784)
> Receiver's instance variables:
> timeStamp: 44109
> source: a HandMorph(843055104)
> windowIndex: nil
> type: #keystroke
> buttons: 64
> position: (696@205)
> handler: nil
> wasHandled: true
> keyValue: 114
> charCode: 114
> scanCode: 15
>
> PluggableIconListMorph(Morph)>>handleEvent:
> Receiver: a PluggableIconListMorph(310902784)
> Arguments and temporary variables:
> anEvent: [keystroke '<Cmd-r>']
> Receiver's instance variables:
> bounds: (586.0(a)163.0) corner: (752.0(a)366.0)
> owner: a NautilusWindow(494927872)
> submorphs: an Array(a TransformMorph(571473920))
> fullBounds: (586@163) corner: (752@366)
> color: Color white
> extension: a MorphExtension (1042546688) [locked] [other: (dragEnabled -> tru...etc...
> borderWidth: 1
> borderColor: (Color r: 0.745 g: 0.745 b: 0.745)
> model: a MethodWidget
> open: false
> accessor: nil
> scrollBar: a ScrollBar(341835776)
> scroller: a TransformMorph(571473920)
> retractableScrollBar: false
> scrollBarOnLeft: false
> getMenuSelector: #elementsMenu:shifted:
> getMenuTitleSelector: nil
> hasFocus: false
> hScrollBar: a ScrollBar(457703424)
> list: nil
> getListSelector: #getMethods
> getListSizeSelector: #methodListSize
> getListElementSelector: #getMethodItem:
> getIndexSelector: #selectedMethodIndex
> setIndexSelector: #selectedMethodIndex:
> keystrokeActionSelector: nil
> autoDeselect: true
> lastKeystrokeTime: 0
> lastKeystrokes: ''
> doubleClickSelector: nil
> handlesBasicKeys: nil
> potentialDropRow: nil
> listMorph: a LazyMorphListMorph(491520000)
> hScrollRangeCache: nil
> dragItemSelector: nil
> dropItemSelector: nil
> wantsDropSelector: nil
> wrapSelector: #methodWrapper:
> searchedElement: nil
> multipleSelection: true
> dragOnOrOff: nil
> setSelectionListSelector: #methodSelectionAt:put:
> getSelectionListSelector: #methodSelectionAt:
> resetListSelector: #resetMethodsListSelection
> keystrokeSelector: nil
> backgroundColoringBlockOrSelector: nil
> separatorBlockOrSelector: nil
> separatorSize: nil
> separatorColor: nil
> lastNonZeroIndex: 1
> getIconSelector: #methodIconFor:
>
> MorphicEventDispatcher>>dispatchDefault:with:
> Receiver: a MorphicEventDispatcher
> Arguments and temporary variables:
> anEvent: [keystroke '<Cmd-r>']
> aMorph: a PluggableIconListMorph(310902784)
> localEvt: [keystroke '<Cmd-r>']
> index: 2
> child: a TransformMorph(571473920)
> morphs: an Array(a TransformMorph(571473920))
> inside: true
> Receiver's instance variables:
> lastType: #keystroke
> lastDispatch: #dispatchDefault:with:
>
> MorphicEventDispatcher>>dispatchEvent:with:
> Receiver: a MorphicEventDispatcher
> Arguments and temporary variables:
> anEvent: [keystroke '<Cmd-r>']
> aMorph: a PluggableIconListMorph(310902784)
> Receiver's instance variables:
> lastType: #keystroke
> lastDispatch: #dispatchDefault:with:
>
> PluggableIconListMorph(Morph)>>processEvent:using:
> Receiver: a PluggableIconListMorph(310902784)
> Arguments and temporary variables:
> anEvent: [keystroke '<Cmd-r>']
> defaultDispatcher: a MorphicEventDispatcher
> Receiver's instance variables:
> bounds: (586.0(a)163.0) corner: (752.0(a)366.0)
> owner: a NautilusWindow(494927872)
> submorphs: an Array(a TransformMorph(571473920))
> fullBounds: (586@163) corner: (752@366)
> color: Color white
> extension: a MorphExtension (1042546688) [locked] [other: (dragEnabled -> tru...etc...
> borderWidth: 1
> borderColor: (Color r: 0.745 g: 0.745 b: 0.745)
> model: a MethodWidget
> open: false
> accessor: nil
> scrollBar: a ScrollBar(341835776)
> scroller: a TransformMorph(571473920)
> retractableScrollBar: false
> scrollBarOnLeft: false
> getMenuSelector: #elementsMenu:shifted:
> getMenuTitleSelector: nil
> hasFocus: false
> hScrollBar: a ScrollBar(457703424)
> list: nil
> getListSelector: #getMethods
> getListSizeSelector: #methodListSize
> getListElementSelector: #getMethodItem:
> getIndexSelector: #selectedMethodIndex
> setIndexSelector: #selectedMethodIndex:
> keystrokeActionSelector: nil
> autoDeselect: true
> lastKeystrokeTime: 0
> lastKeystrokes: ''
> doubleClickSelector: nil
> handlesBasicKeys: nil
> potentialDropRow: nil
> listMorph: a LazyMorphListMorph(491520000)
> hScrollRangeCache: nil
> dragItemSelector: nil
> dropItemSelector: nil
> wantsDropSelector: nil
> wrapSelector: #methodWrapper:
> searchedElement: nil
> multipleSelection: true
> dragOnOrOff: nil
> setSelectionListSelector: #methodSelectionAt:put:
> getSelectionListSelector: #methodSelectionAt:
> resetListSelector: #resetMethodsListSelection
> keystrokeSelector: nil
> backgroundColoringBlockOrSelector: nil
> separatorBlockOrSelector: nil
> separatorSize: nil
> separatorColor: nil
> lastNonZeroIndex: 1
> getIconSelector: #methodIconFor:
>
> PluggableIconListMorph(Morph)>>processEvent:
> Receiver: a PluggableIconListMorph(310902784)
> Arguments and temporary variables:
> anEvent: [keystroke '<Cmd-r>']
> Receiver's instance variables:
> bounds: (586.0(a)163.0) corner: (752.0(a)366.0)
> owner: a NautilusWindow(494927872)
> submorphs: an Array(a TransformMorph(571473920))
> fullBounds: (586@163) corner: (752@366)
> color: Color white
> extension: a MorphExtension (1042546688) [locked] [other: (dragEnabled -> tru...etc...
> borderWidth: 1
> borderColor: (Color r: 0.745 g: 0.745 b: 0.745)
> model: a MethodWidget
> open: false
> accessor: nil
> scrollBar: a ScrollBar(341835776)
> scroller: a TransformMorph(571473920)
> retractableScrollBar: false
> scrollBarOnLeft: false
> getMenuSelector: #elementsMenu:shifted:
> getMenuTitleSelector: nil
> hasFocus: false
> hScrollBar: a ScrollBar(457703424)
> list: nil
> getListSelector: #getMethods
> getListSizeSelector: #methodListSize
> getListElementSelector: #getMethodItem:
> getIndexSelector: #selectedMethodIndex
> setIndexSelector: #selectedMethodIndex:
> keystrokeActionSelector: nil
> autoDeselect: true
> lastKeystrokeTime: 0
> lastKeystrokes: ''
> doubleClickSelector: nil
> handlesBasicKeys: nil
> potentialDropRow: nil
> listMorph: a LazyMorphListMorph(491520000)
> hScrollRangeCache: nil
> dragItemSelector: nil
> dropItemSelector: nil
> wantsDropSelector: nil
> wrapSelector: #methodWrapper:
> searchedElement: nil
> multipleSelection: true
> dragOnOrOff: nil
> setSelectionListSelector: #methodSelectionAt:put:
> getSelectionListSelector: #methodSelectionAt:
> resetListSelector: #resetMethodsListSelection
> keystrokeSelector: nil
> backgroundColoringBlockOrSelector: nil
> separatorBlockOrSelector: nil
> separatorSize: nil
> separatorColor: nil
> lastNonZeroIndex: 1
> getIconSelector: #methodIconFor:
>
>
> --- The full stack ---
> PickListModel(Object)>>doesNotUnderstand: #wrappingBlock:
> ChangesBrowser>>initializePickList
> ChangesBrowser>>initialize
> ChangesBrowser class(Behavior)>>new
> ChangesBrowser class>>changes:
> NautilusRefactoring>>internalPerformRefactorings:
> [self internalPerformRefactorings: aCollectionRefactoring] in [[self internalPerformRefactorings: aCollectionRefactoring]
> on: RBRefactoringWarning
> do: [:exception | self handleWarning: exception]] in NautilusRefactoring>>performRefactorings:
> BlockClosure>>on:do:
> [[self internalPerformRefactorings: aCollectionRefactoring]
> on: RBRefactoringWarning
> do: [:exception | self handleWarning: exception]] in NautilusRefactoring>>performRefactorings:
> BlockClosure>>on:do:
> NautilusRefactoring>>performRefactorings:
> NautilusRefactoring>>performRefactoring:
> NautilusRefactoring>>renameMethodFor:
> [:target |
> | scroll |
> scroll := target methodWidget vScrollValue.
> target refactor renameMethodFor: target selectedMethod.
> target methodWidget vScrollValue: scroll] in NautilusRefactoring class>>buildRefactoringMethodShortcutsOn:
> BlockClosure>>cull:
> BlockClosure>>cull:cull:
> BlockClosure>>cull:cull:cull:
> KMCategoryTarget>>completeMatch:buffer:
> [:l | l completeMatch: self buffer: aBuffer] in KMKeymap>>notifyCompleteMatchTo:buffer:
> Array(SequenceableCollection)>>do:
> KMKeymap>>notifyCompleteMatchTo:buffer:
> KMKeymap>>onMatchWith:notify:andDo:
> [:entry | entry
> onMatchWith: anEventBuffer
> notify: aMatchListener
> andDo: aBlock] in KMCategory>>onMatchWith:notify:andDo:
> Array(SequenceableCollection)>>do:
> KMCategory>>onMatchWith:notify:andDo:
> KMCategoryTarget>>verifyMatchWith:notifying:thenDoing:
> [:aTarget | aTarget
> verifyMatchWith: anEventBuffer
> notifying: self
> thenDoing: [^ self]] in KMDispatcher>>dispatch:
> Set>>do:
> KMDispatcher>>dispatch:
> KMDispatcher>>matchEvent:
> KMDispatcher>>dispatchKeystroke:
> PluggableIconListMorph(Morph)>>dispatchKeystrokeForEvent:
> PluggableIconListMorph(Morph)>>handleKeystroke:
> KeyboardEvent>>sentTo:
> PluggableIconListMorph(Morph)>>handleEvent:
> MorphicEventDispatcher>>dispatchDefault:with:
> MorphicEventDispatcher>>dispatchEvent:with:
> PluggableIconListMorph(Morph)>>processEvent:using:
> PluggableIconListMorph(Morph)>>processEvent:
> - - - - - - - - - - - - - - -
> - - - - - - - - - - - - - - - - - -
> PluggableIconListMorph(PluggableListMorph)>>handleFocusEvent:
> [ActiveHand := self.
> ActiveEvent := anEvent.
> result := focusHolder
> handleFocusEvent: (anEvent
> transformedBy: (focusHolder transformedFrom: self))] in HandMorph>>sendFocusEvent:to:clear:
> [aBlock value] in PasteUpMorph>>becomeActiveDuring:
> BlockClosure>>on:do:
> PasteUpMorph>>becomeActiveDuring:
> HandMorph>>sendFocusEvent:to:clear:
> HandMorph>>sendEvent:focus:clear:
> HandMorph>>sendKeyboardEvent:
> HandMorph>>handleEvent:
> HandMorph>>processEvents
> [:h |
> ActiveHand := h.
> h processEvents.
> ActiveHand := nil] in WorldState>>doOneCycleNowFor:
> Array(SequenceableCollection)>>do:
> WorldState>>handsDo:
> WorldState>>doOneCycleNowFor:
> WorldState>>doOneCycleFor:
> PasteUpMorph>>doOneCycle
> [[World doOneCycle.
> Processor yield.
> false] whileFalse.
> nil] in MorphicUIManager>>spawnNewProcess
> [self value.
> Processor terminateActive] in BlockClosure>>newProcess
June 7, 2012
[Pharo-project] A small issue with Nautilus and PickListMorph
by Mark Smith
I'm having some issues with Nautilus (in Pharo 1.4 and Pharo 2.0a) when trying to rename a method, and more recently when generating instance variable accessors.
It appears that we may be missing a dependency as the PickListMorph doesn't understand the wrappingBlock: message.
Can anyone confirm this problem?
All the best,
Mark
And incase this is useful to anyone â
7 June 2012 1:03:30.005 pm
VM: Mac OS - intel - 1073 - CoInterpreter VMMaker-oscog-EstebanLorenzano.158 uuid: 82eded98-68af-4c80-a472-4f6de293adcf May 1 2012, StackToRegisterMappingCogit VMMaker-oscog-EstebanLorenzano.158 uuid: 82eded98-68af-4c80-a472-4f6de293adcf May 1 2012, https://git.gitorious.org/cogvm/blessed.git Commit: 6aa3fd0f1188078d3167dec1a53031a61b97b688 Date: Tue May 1 20:28:14 2012 +0200 By: Esteban Lorenzano <estebanlm(a)gmail.com>
Image: Pharo1.4 [Latest update: #14438]
PickListModel(Object)>>doesNotUnderstand: #wrappingBlock:
Receiver: a PickListModel
Arguments and temporary variables:
aMessage: wrappingBlock: [:item | item nameToDisplay]
exception: MessageNotUnderstood: PickListModel>>wrappingBlock:
resumeValue: nil
Receiver's instance variables:
dependents: a DependentsArray(a ListComposableModel)
bindings: a BindingsHolder
focusOrder: nil
owner: a ChangesBrowser
window: nil
widget: nil
defaultValueHolder: a NewValueHolder
labelClickableHolder: a NewValueHolder
listModel: a ListComposableModel
pickedItemsHolder: a NewValueHolder
wrapHolder: a NewValueHolder
associationsItemToWrapper: a DictionaryValueHolder
associationsWrapperToItem: a DictionaryValueHolder
ChangesBrowser>>initializePickList
Receiver: a ChangesBrowser
Arguments and temporary variables:
Receiver's instance variables:
dependents: a DependentsArray(a ButtonModel a ButtonModel a PickListModel)
bindings: a BindingsHolder
focusOrder: nil
owner: nil
window: nil
widget: nil
acceptButton: a ButtonModel
cancelButton: a ButtonModel
pickList: a PickListModel
textArea: nil
ChangesBrowser>>initialize
Receiver: a ChangesBrowser
Arguments and temporary variables:
Receiver's instance variables:
dependents: a DependentsArray(a ButtonModel a ButtonModel a PickListModel)
bindings: a BindingsHolder
focusOrder: nil
owner: nil
window: nil
widget: nil
acceptButton: a ButtonModel
cancelButton: a ButtonModel
pickList: a PickListModel
textArea: nil
ChangesBrowser class(Behavior)>>new
Receiver: ChangesBrowser
Arguments and temporary variables:
Receiver's instance variables:
superclass: ComposableModel
methodDict: a MethodDictionary(#accept->(ChangesBrowser>>#accept "a CompiledMet...etc...
format: 150
instanceVariables: #('acceptButton' 'cancelButton' 'pickList' 'textArea')
organization: ('private' accept buildDiffFor: cancel change:)
('accessing' acce...etc...
subclasses: nil
name: #ChangesBrowser
classPool: nil
sharedPools: nil
environment: a SystemDictionary(lots of globals)
category: #'NautilusRefactoring-Utilities'
traitComposition: {}
localSelectors: nil
ChangesBrowser class>>changes:
Receiver: ChangesBrowser
Arguments and temporary variables:
aCollection: an Array(a RBRenameMethodRefactoring)
Receiver's instance variables:
superclass: ComposableModel
methodDict: a MethodDictionary(#accept->(ChangesBrowser>>#accept "a CompiledMet...etc...
format: 150
instanceVariables: #('acceptButton' 'cancelButton' 'pickList' 'textArea')
organization: ('private' accept buildDiffFor: cancel change:)
('accessing' acce...etc...
subclasses: nil
name: #ChangesBrowser
classPool: nil
sharedPools: nil
environment: a SystemDictionary(lots of globals)
category: #'NautilusRefactoring-Utilities'
traitComposition: {}
localSelectors: nil
NautilusRefactoring>>internalPerformRefactorings:
Receiver: a NautilusRefactoring
Arguments and temporary variables:
aCollectionRefactoring: an Array(a RBRenameMethodRefactoring)
Receiver's instance variables:
environment: a RBNamespace
model: a NautilusUI
[self internalPerformRefactorings: aCollectionRefactoring] in [[self internalPerformRefactorings: aCollectionRefactoring]
on: RBRefactoringWarning
do: [:exception | self handleWarning: exception]] in NautilusRefactoring>>performRefactorings:
Receiver: a NautilusRefactoring
Arguments and temporary variables:
aCollectionRefactoring: an Array(a RBRenameMethodRefactoring)
Receiver's instance variables:
environment: a RBNamespace
model: a NautilusUI
BlockClosure>>on:do:
Receiver: [self internalPerformRefactorings: aCollectionRefactoring]
Arguments and temporary variables:
exception: RBRefactoringWarning
handlerAction: [:exception | self handleWarning: exception]
handlerActive: true
Receiver's instance variables:
outerContext: [[self internalPerformRefactorings: aCollectionRefactoring]
on:...etc...
startpc: 47
numArgs: 0
[[self internalPerformRefactorings: aCollectionRefactoring]
on: RBRefactoringWarning
do: [:exception | self handleWarning: exception]] in NautilusRefactoring>>performRefactorings:
Receiver: a NautilusRefactoring
Arguments and temporary variables:
aCollectionRefactoring: an Array(a RBRenameMethodRefactoring)
Receiver's instance variables:
environment: a RBNamespace
model: a NautilusUI
BlockClosure>>on:do:
Receiver: [[self internalPerformRefactorings: aCollectionRefactoring]
on: RBRefactoringWarning
d...etc...
Arguments and temporary variables:
exception: RBRefactoringError
handlerAction: [:exception | self handleError: exception]
handlerActive: true
Receiver's instance variables:
outerContext: NautilusRefactoring>>performRefactorings:
startpc: 42
numArgs: 0
NautilusRefactoring>>performRefactorings:
Receiver: a NautilusRefactoring
Arguments and temporary variables:
aCollectionRefactoring: an Array(a RBRenameMethodRefactoring)
Receiver's instance variables:
environment: a RBNamespace
model: a NautilusUI
NautilusRefactoring>>performRefactoring:
Receiver: a NautilusRefactoring
Arguments and temporary variables:
aRefactoring: a RBRenameMethodRefactoring
Receiver's instance variables:
environment: a RBNamespace
model: a NautilusUI
NautilusRefactoring>>renameMethodFor:
Receiver: a NautilusRefactoring
Arguments and temporary variables:
aMethod: (OmExample>>#exampleMethod "a CompiledMethod(760741888)")
refactoring: a RBRenameMethodRefactoring
Receiver's instance variables:
environment: a RBNamespace
model: a NautilusUI
[:target |
| scroll |
scroll := target methodWidget vScrollValue.
target refactor renameMethodFor: target selectedMethod.
target methodWidget vScrollValue: scroll] in NautilusRefactoring class>>buildRefactoringMethodShortcutsOn:
Receiver: NautilusRefactoring
Arguments and temporary variables:
target: a NautilusUI
scroll: 0.0
Receiver's instance variables:
superclass: Object
methodDict: a MethodDictionary(size 140)
format: 134
instanceVariables: #('environment' 'model')
organization: ('class var' abstractClassVarFrom: accessorsClassVarFrom: addClas...etc...
subclasses: nil
name: #NautilusRefactoring
classPool: a Dictionary(#PromptOnRefactoring->true )
sharedPools: nil
environment: a SystemDictionary(lots of globals)
category: #NautilusRefactoring
traitComposition: {}
localSelectors: nil
BlockClosure>>cull:
Receiver: [:target |
| scroll |
scroll := target methodWidget vScrollValue.
target refactor rename...etc...
Arguments and temporary variables:
anArg: a NautilusUI
Receiver's instance variables:
outerContext: NautilusRefactoring class>>buildRefactoringMethodShortcutsOn:
startpc: 75
numArgs: 1
BlockClosure>>cull:cull:
Receiver: [:target |
| scroll |
scroll := target methodWidget vScrollValue.
target refactor rename...etc...
Arguments and temporary variables:
firstArg: a NautilusUI
secondArg: a PluggableIconListMorph(310902784)
Receiver's instance variables:
outerContext: NautilusRefactoring class>>buildRefactoringMethodShortcutsOn:
startpc: 75
numArgs: 1
BlockClosure>>cull:cull:cull:
Receiver: [:target |
| scroll |
scroll := target methodWidget vScrollValue.
target refactor rename...etc...
Arguments and temporary variables:
firstArg: a NautilusUI
secondArg: a PluggableIconListMorph(310902784)
thirdArg: [keystroke '<Cmd-r>']
Receiver's instance variables:
outerContext: NautilusRefactoring class>>buildRefactoringMethodShortcutsOn:
startpc: 75
numArgs: 1
KMCategoryTarget>>completeMatch:buffer:
Receiver: a KMCategoryTarget
Arguments and temporary variables:
aKeymap: #rename on Cmd + R do [:target |
| scroll |
scroll := target methodWi...etc...
aBuffer: an OrderedCollection([keystroke '<Cmd-r>'])
Receiver's instance variables:
target: a NautilusUI
category: a KMCategory
morph: a PluggableIconListMorph(310902784)
[:l | l completeMatch: self buffer: aBuffer] in KMKeymap>>notifyCompleteMatchTo:buffer:
Receiver: #rename on Cmd + R do [:target |
| scroll |
scroll := target methodWidget vScrollValue.
...etc...
Arguments and temporary variables:
aBuffer: a KMCategoryTarget
l: an OrderedCollection([keystroke '<Cmd-r>'])
Receiver's instance variables:
action: [:target |
| scroll |
scroll := target methodWidget vScrollValue.
tar...etc...
name: #rename
shortcut: Cmd + R
defaultShortcut: Cmd + R
description: 'Rename the seleted method'
Array(SequenceableCollection)>>do:
Receiver: an Array(a KMDispatcher a KMCategoryTarget)
Arguments and temporary variables:
aBlock: [:l | l completeMatch: self buffer: aBuffer]
index: 2
indexLimiT: 2
Receiver's instance variables:
an Array(a KMDispatcher a KMCategoryTarget)
KMKeymap>>notifyCompleteMatchTo:buffer:
Receiver: #rename on Cmd + R do [:target |
| scroll |
scroll := target methodWidget vScrollValue.
...etc...
Arguments and temporary variables:
aListener: an Array(a KMDispatcher a KMCategoryTarget)
aBuffer: an OrderedCollection([keystroke '<Cmd-r>'])
listeners: an Array(a KMDispatcher a KMCategoryTarget)
Receiver's instance variables:
action: [:target |
| scroll |
scroll := target methodWidget vScrollValue.
tar...etc...
name: #rename
shortcut: Cmd + R
defaultShortcut: Cmd + R
description: 'Rename the seleted method'
KMKeymap>>onMatchWith:notify:andDo:
Receiver: #rename on Cmd + R do [:target |
| scroll |
scroll := target methodWidget vScrollValue.
...etc...
Arguments and temporary variables:
anEventBuffer: an OrderedCollection([keystroke '<Cmd-r>'])
aMatchListener: an Array(a KMDispatcher a KMCategoryTarget)
anAction: [^ self]
Receiver's instance variables:
action: [:target |
| scroll |
scroll := target methodWidget vScrollValue.
tar...etc...
name: #rename
shortcut: Cmd + R
defaultShortcut: Cmd + R
description: 'Rename the seleted method'
[:entry | entry
onMatchWith: anEventBuffer
notify: aMatchListener
andDo: aBlock] in KMCategory>>onMatchWith:notify:andDo:
Receiver: a KMCategory
Arguments and temporary variables:
anEventBuffer: #rename on Cmd + R do [:target |
| scroll |
scroll := target me...etc...
aMatchListener: an OrderedCollection([keystroke '<Cmd-r>'])
aBlock: an Array(a KMDispatcher a KMCategoryTarget)
entry: [^ self]
Receiver's instance variables:
name: #NautilusMethodShortcuts
platforms: a Dictionary(#MacOSX->a Dictionary() #all->a Dictionary(#addMethodsI...etc...
Array(SequenceableCollection)>>do:
Receiver: an Array(#rename on Cmd + R do [:target |
| scroll |
scroll := target methodWidget vScrol...etc...
Arguments and temporary variables:
aBlock: [:entry | entry
onMatchWith: anEventBuffer
notify: aMatchListener
...etc...
index: 1
indexLimiT: 15
Receiver's instance variables:
an Array(#rename on Cmd + R do [:target |
| scroll |
scroll := target methodWidget vScrol...etc...
KMCategory>>onMatchWith:notify:andDo:
Receiver: a KMCategory
Arguments and temporary variables:
anEventBuffer: an OrderedCollection([keystroke '<Cmd-r>'])
aMatchListener: an Array(a KMDispatcher a KMCategoryTarget)
aBlock: [^ self]
Receiver's instance variables:
name: #NautilusMethodShortcuts
platforms: a Dictionary(#MacOSX->a Dictionary() #all->a Dictionary(#addMethodsI...etc...
KMCategoryTarget>>verifyMatchWith:notifying:thenDoing:
Receiver: a KMCategoryTarget
Arguments and temporary variables:
anEventBuffer: an OrderedCollection([keystroke '<Cmd-r>'])
aListener: a KMDispatcher
anAction: [^ self]
Receiver's instance variables:
target: a NautilusUI
category: a KMCategory
morph: a PluggableIconListMorph(310902784)
[:aTarget | aTarget
verifyMatchWith: anEventBuffer
notifying: self
thenDoing: [^ self]] in KMDispatcher>>dispatch:
Receiver: a KMDispatcher
Arguments and temporary variables:
anEventBuffer: a KMCategoryTarget
aTarget: an OrderedCollection([keystroke '<Cmd-r>'])
Receiver's instance variables:
target: a KMTarget
buffer: an OrderedCollection()
shortcut:
currentEvent: [keystroke '<Cmd-r>']
targets: a Set(a KMCategoryTarget)
morph: a PluggableIconListMorph(310902784)
directKeymaps: a KMCategory
Set>>do:
Receiver: a Set(a KMCategoryTarget a KMCategoryTarget)
Arguments and temporary variables:
aBlock: [:aTarget | aTarget
verifyMatchWith: anEventBuffer
notifying: self
...etc...
index: 1
each: a KMCategoryTarget
indexLimiT: 5
Receiver's instance variables:
tally: 2
array: an Array(a KMCategoryTarget nil a KMCategoryTarget nil nil)
KMDispatcher>>dispatch:
Receiver: a KMDispatcher
Arguments and temporary variables:
anEventBuffer: an OrderedCollection([keystroke '<Cmd-r>'])
association: nil
match: nil
Receiver's instance variables:
target: a KMTarget
buffer: an OrderedCollection()
shortcut:
currentEvent: [keystroke '<Cmd-r>']
targets: a Set(a KMCategoryTarget)
morph: a PluggableIconListMorph(310902784)
directKeymaps: a KMCategory
KMDispatcher>>matchEvent:
Receiver: a KMDispatcher
Arguments and temporary variables:
keyboardEvent: [keystroke '<Cmd-r>']
Receiver's instance variables:
target: a KMTarget
buffer: an OrderedCollection()
shortcut:
currentEvent: [keystroke '<Cmd-r>']
targets: a Set(a KMCategoryTarget)
morph: a PluggableIconListMorph(310902784)
directKeymaps: a KMCategory
KMDispatcher>>dispatchKeystroke:
Receiver: a KMDispatcher
Arguments and temporary variables:
aKeyEvent: [keystroke '<Cmd-r>']
Receiver's instance variables:
target: a KMTarget
buffer: an OrderedCollection()
shortcut:
currentEvent: [keystroke '<Cmd-r>']
targets: a Set(a KMCategoryTarget)
morph: a PluggableIconListMorph(310902784)
directKeymaps: a KMCategory
PluggableIconListMorph(Morph)>>dispatchKeystrokeForEvent:
Receiver: a PluggableIconListMorph(310902784)
Arguments and temporary variables:
evt: [keystroke '<Cmd-r>']
Receiver's instance variables:
bounds: (586.0(a)163.0) corner: (752.0(a)366.0)
owner: a NautilusWindow(494927872)
submorphs: an Array(a TransformMorph(571473920))
fullBounds: (586@163) corner: (752@366)
color: Color white
extension: a MorphExtension (1042546688) [locked] [other: (dragEnabled -> tru...etc...
borderWidth: 1
borderColor: (Color r: 0.745 g: 0.745 b: 0.745)
model: a MethodWidget
open: false
accessor: nil
scrollBar: a ScrollBar(341835776)
scroller: a TransformMorph(571473920)
retractableScrollBar: false
scrollBarOnLeft: false
getMenuSelector: #elementsMenu:shifted:
getMenuTitleSelector: nil
hasFocus: false
hScrollBar: a ScrollBar(457703424)
list: nil
getListSelector: #getMethods
getListSizeSelector: #methodListSize
getListElementSelector: #getMethodItem:
getIndexSelector: #selectedMethodIndex
setIndexSelector: #selectedMethodIndex:
keystrokeActionSelector: nil
autoDeselect: true
lastKeystrokeTime: 0
lastKeystrokes: ''
doubleClickSelector: nil
handlesBasicKeys: nil
potentialDropRow: nil
listMorph: a LazyMorphListMorph(491520000)
hScrollRangeCache: nil
dragItemSelector: nil
dropItemSelector: nil
wantsDropSelector: nil
wrapSelector: #methodWrapper:
searchedElement: nil
multipleSelection: true
dragOnOrOff: nil
setSelectionListSelector: #methodSelectionAt:put:
getSelectionListSelector: #methodSelectionAt:
resetListSelector: #resetMethodsListSelection
keystrokeSelector: nil
backgroundColoringBlockOrSelector: nil
separatorBlockOrSelector: nil
separatorSize: nil
separatorColor: nil
lastNonZeroIndex: 1
getIconSelector: #methodIconFor:
PluggableIconListMorph(Morph)>>handleKeystroke:
Receiver: a PluggableIconListMorph(310902784)
Arguments and temporary variables:
anEvent: [keystroke '<Cmd-r>']
Receiver's instance variables:
bounds: (586.0(a)163.0) corner: (752.0(a)366.0)
owner: a NautilusWindow(494927872)
submorphs: an Array(a TransformMorph(571473920))
fullBounds: (586@163) corner: (752@366)
color: Color white
extension: a MorphExtension (1042546688) [locked] [other: (dragEnabled -> tru...etc...
borderWidth: 1
borderColor: (Color r: 0.745 g: 0.745 b: 0.745)
model: a MethodWidget
open: false
accessor: nil
scrollBar: a ScrollBar(341835776)
scroller: a TransformMorph(571473920)
retractableScrollBar: false
scrollBarOnLeft: false
getMenuSelector: #elementsMenu:shifted:
getMenuTitleSelector: nil
hasFocus: false
hScrollBar: a ScrollBar(457703424)
list: nil
getListSelector: #getMethods
getListSizeSelector: #methodListSize
getListElementSelector: #getMethodItem:
getIndexSelector: #selectedMethodIndex
setIndexSelector: #selectedMethodIndex:
keystrokeActionSelector: nil
autoDeselect: true
lastKeystrokeTime: 0
lastKeystrokes: ''
doubleClickSelector: nil
handlesBasicKeys: nil
potentialDropRow: nil
listMorph: a LazyMorphListMorph(491520000)
hScrollRangeCache: nil
dragItemSelector: nil
dropItemSelector: nil
wantsDropSelector: nil
wrapSelector: #methodWrapper:
searchedElement: nil
multipleSelection: true
dragOnOrOff: nil
setSelectionListSelector: #methodSelectionAt:put:
getSelectionListSelector: #methodSelectionAt:
resetListSelector: #resetMethodsListSelection
keystrokeSelector: nil
backgroundColoringBlockOrSelector: nil
separatorBlockOrSelector: nil
separatorSize: nil
separatorColor: nil
lastNonZeroIndex: 1
getIconSelector: #methodIconFor:
KeyboardEvent>>sentTo:
Receiver: [keystroke '<Cmd-r>']
Arguments and temporary variables:
anObject: a PluggableIconListMorph(310902784)
Receiver's instance variables:
timeStamp: 44109
source: a HandMorph(843055104)
windowIndex: nil
type: #keystroke
buttons: 64
position: (696@205)
handler: nil
wasHandled: true
keyValue: 114
charCode: 114
scanCode: 15
PluggableIconListMorph(Morph)>>handleEvent:
Receiver: a PluggableIconListMorph(310902784)
Arguments and temporary variables:
anEvent: [keystroke '<Cmd-r>']
Receiver's instance variables:
bounds: (586.0(a)163.0) corner: (752.0(a)366.0)
owner: a NautilusWindow(494927872)
submorphs: an Array(a TransformMorph(571473920))
fullBounds: (586@163) corner: (752@366)
color: Color white
extension: a MorphExtension (1042546688) [locked] [other: (dragEnabled -> tru...etc...
borderWidth: 1
borderColor: (Color r: 0.745 g: 0.745 b: 0.745)
model: a MethodWidget
open: false
accessor: nil
scrollBar: a ScrollBar(341835776)
scroller: a TransformMorph(571473920)
retractableScrollBar: false
scrollBarOnLeft: false
getMenuSelector: #elementsMenu:shifted:
getMenuTitleSelector: nil
hasFocus: false
hScrollBar: a ScrollBar(457703424)
list: nil
getListSelector: #getMethods
getListSizeSelector: #methodListSize
getListElementSelector: #getMethodItem:
getIndexSelector: #selectedMethodIndex
setIndexSelector: #selectedMethodIndex:
keystrokeActionSelector: nil
autoDeselect: true
lastKeystrokeTime: 0
lastKeystrokes: ''
doubleClickSelector: nil
handlesBasicKeys: nil
potentialDropRow: nil
listMorph: a LazyMorphListMorph(491520000)
hScrollRangeCache: nil
dragItemSelector: nil
dropItemSelector: nil
wantsDropSelector: nil
wrapSelector: #methodWrapper:
searchedElement: nil
multipleSelection: true
dragOnOrOff: nil
setSelectionListSelector: #methodSelectionAt:put:
getSelectionListSelector: #methodSelectionAt:
resetListSelector: #resetMethodsListSelection
keystrokeSelector: nil
backgroundColoringBlockOrSelector: nil
separatorBlockOrSelector: nil
separatorSize: nil
separatorColor: nil
lastNonZeroIndex: 1
getIconSelector: #methodIconFor:
MorphicEventDispatcher>>dispatchDefault:with:
Receiver: a MorphicEventDispatcher
Arguments and temporary variables:
anEvent: [keystroke '<Cmd-r>']
aMorph: a PluggableIconListMorph(310902784)
localEvt: [keystroke '<Cmd-r>']
index: 2
child: a TransformMorph(571473920)
morphs: an Array(a TransformMorph(571473920))
inside: true
Receiver's instance variables:
lastType: #keystroke
lastDispatch: #dispatchDefault:with:
MorphicEventDispatcher>>dispatchEvent:with:
Receiver: a MorphicEventDispatcher
Arguments and temporary variables:
anEvent: [keystroke '<Cmd-r>']
aMorph: a PluggableIconListMorph(310902784)
Receiver's instance variables:
lastType: #keystroke
lastDispatch: #dispatchDefault:with:
PluggableIconListMorph(Morph)>>processEvent:using:
Receiver: a PluggableIconListMorph(310902784)
Arguments and temporary variables:
anEvent: [keystroke '<Cmd-r>']
defaultDispatcher: a MorphicEventDispatcher
Receiver's instance variables:
bounds: (586.0(a)163.0) corner: (752.0(a)366.0)
owner: a NautilusWindow(494927872)
submorphs: an Array(a TransformMorph(571473920))
fullBounds: (586@163) corner: (752@366)
color: Color white
extension: a MorphExtension (1042546688) [locked] [other: (dragEnabled -> tru...etc...
borderWidth: 1
borderColor: (Color r: 0.745 g: 0.745 b: 0.745)
model: a MethodWidget
open: false
accessor: nil
scrollBar: a ScrollBar(341835776)
scroller: a TransformMorph(571473920)
retractableScrollBar: false
scrollBarOnLeft: false
getMenuSelector: #elementsMenu:shifted:
getMenuTitleSelector: nil
hasFocus: false
hScrollBar: a ScrollBar(457703424)
list: nil
getListSelector: #getMethods
getListSizeSelector: #methodListSize
getListElementSelector: #getMethodItem:
getIndexSelector: #selectedMethodIndex
setIndexSelector: #selectedMethodIndex:
keystrokeActionSelector: nil
autoDeselect: true
lastKeystrokeTime: 0
lastKeystrokes: ''
doubleClickSelector: nil
handlesBasicKeys: nil
potentialDropRow: nil
listMorph: a LazyMorphListMorph(491520000)
hScrollRangeCache: nil
dragItemSelector: nil
dropItemSelector: nil
wantsDropSelector: nil
wrapSelector: #methodWrapper:
searchedElement: nil
multipleSelection: true
dragOnOrOff: nil
setSelectionListSelector: #methodSelectionAt:put:
getSelectionListSelector: #methodSelectionAt:
resetListSelector: #resetMethodsListSelection
keystrokeSelector: nil
backgroundColoringBlockOrSelector: nil
separatorBlockOrSelector: nil
separatorSize: nil
separatorColor: nil
lastNonZeroIndex: 1
getIconSelector: #methodIconFor:
PluggableIconListMorph(Morph)>>processEvent:
Receiver: a PluggableIconListMorph(310902784)
Arguments and temporary variables:
anEvent: [keystroke '<Cmd-r>']
Receiver's instance variables:
bounds: (586.0(a)163.0) corner: (752.0(a)366.0)
owner: a NautilusWindow(494927872)
submorphs: an Array(a TransformMorph(571473920))
fullBounds: (586@163) corner: (752@366)
color: Color white
extension: a MorphExtension (1042546688) [locked] [other: (dragEnabled -> tru...etc...
borderWidth: 1
borderColor: (Color r: 0.745 g: 0.745 b: 0.745)
model: a MethodWidget
open: false
accessor: nil
scrollBar: a ScrollBar(341835776)
scroller: a TransformMorph(571473920)
retractableScrollBar: false
scrollBarOnLeft: false
getMenuSelector: #elementsMenu:shifted:
getMenuTitleSelector: nil
hasFocus: false
hScrollBar: a ScrollBar(457703424)
list: nil
getListSelector: #getMethods
getListSizeSelector: #methodListSize
getListElementSelector: #getMethodItem:
getIndexSelector: #selectedMethodIndex
setIndexSelector: #selectedMethodIndex:
keystrokeActionSelector: nil
autoDeselect: true
lastKeystrokeTime: 0
lastKeystrokes: ''
doubleClickSelector: nil
handlesBasicKeys: nil
potentialDropRow: nil
listMorph: a LazyMorphListMorph(491520000)
hScrollRangeCache: nil
dragItemSelector: nil
dropItemSelector: nil
wantsDropSelector: nil
wrapSelector: #methodWrapper:
searchedElement: nil
multipleSelection: true
dragOnOrOff: nil
setSelectionListSelector: #methodSelectionAt:put:
getSelectionListSelector: #methodSelectionAt:
resetListSelector: #resetMethodsListSelection
keystrokeSelector: nil
backgroundColoringBlockOrSelector: nil
separatorBlockOrSelector: nil
separatorSize: nil
separatorColor: nil
lastNonZeroIndex: 1
getIconSelector: #methodIconFor:
--- The full stack ---
PickListModel(Object)>>doesNotUnderstand: #wrappingBlock:
ChangesBrowser>>initializePickList
ChangesBrowser>>initialize
ChangesBrowser class(Behavior)>>new
ChangesBrowser class>>changes:
NautilusRefactoring>>internalPerformRefactorings:
[self internalPerformRefactorings: aCollectionRefactoring] in [[self internalPerformRefactorings: aCollectionRefactoring]
on: RBRefactoringWarning
do: [:exception | self handleWarning: exception]] in NautilusRefactoring>>performRefactorings:
BlockClosure>>on:do:
[[self internalPerformRefactorings: aCollectionRefactoring]
on: RBRefactoringWarning
do: [:exception | self handleWarning: exception]] in NautilusRefactoring>>performRefactorings:
BlockClosure>>on:do:
NautilusRefactoring>>performRefactorings:
NautilusRefactoring>>performRefactoring:
NautilusRefactoring>>renameMethodFor:
[:target |
| scroll |
scroll := target methodWidget vScrollValue.
target refactor renameMethodFor: target selectedMethod.
target methodWidget vScrollValue: scroll] in NautilusRefactoring class>>buildRefactoringMethodShortcutsOn:
BlockClosure>>cull:
BlockClosure>>cull:cull:
BlockClosure>>cull:cull:cull:
KMCategoryTarget>>completeMatch:buffer:
[:l | l completeMatch: self buffer: aBuffer] in KMKeymap>>notifyCompleteMatchTo:buffer:
Array(SequenceableCollection)>>do:
KMKeymap>>notifyCompleteMatchTo:buffer:
KMKeymap>>onMatchWith:notify:andDo:
[:entry | entry
onMatchWith: anEventBuffer
notify: aMatchListener
andDo: aBlock] in KMCategory>>onMatchWith:notify:andDo:
Array(SequenceableCollection)>>do:
KMCategory>>onMatchWith:notify:andDo:
KMCategoryTarget>>verifyMatchWith:notifying:thenDoing:
[:aTarget | aTarget
verifyMatchWith: anEventBuffer
notifying: self
thenDoing: [^ self]] in KMDispatcher>>dispatch:
Set>>do:
KMDispatcher>>dispatch:
KMDispatcher>>matchEvent:
KMDispatcher>>dispatchKeystroke:
PluggableIconListMorph(Morph)>>dispatchKeystrokeForEvent:
PluggableIconListMorph(Morph)>>handleKeystroke:
KeyboardEvent>>sentTo:
PluggableIconListMorph(Morph)>>handleEvent:
MorphicEventDispatcher>>dispatchDefault:with:
MorphicEventDispatcher>>dispatchEvent:with:
PluggableIconListMorph(Morph)>>processEvent:using:
PluggableIconListMorph(Morph)>>processEvent:
- - - - - - - - - - - - - - -
- - - - - - - - - - - - - - - - - -
PluggableIconListMorph(PluggableListMorph)>>handleFocusEvent:
[ActiveHand := self.
ActiveEvent := anEvent.
result := focusHolder
handleFocusEvent: (anEvent
transformedBy: (focusHolder transformedFrom: self))] in HandMorph>>sendFocusEvent:to:clear:
[aBlock value] in PasteUpMorph>>becomeActiveDuring:
BlockClosure>>on:do:
PasteUpMorph>>becomeActiveDuring:
HandMorph>>sendFocusEvent:to:clear:
HandMorph>>sendEvent:focus:clear:
HandMorph>>sendKeyboardEvent:
HandMorph>>handleEvent:
HandMorph>>processEvents
[:h |
ActiveHand := h.
h processEvents.
ActiveHand := nil] in WorldState>>doOneCycleNowFor:
Array(SequenceableCollection)>>do:
WorldState>>handsDo:
WorldState>>doOneCycleNowFor:
WorldState>>doOneCycleFor:
PasteUpMorph>>doOneCycle
[[World doOneCycle.
Processor yield.
false] whileFalse.
nil] in MorphicUIManager>>spawnNewProcess
[self value.
Processor terminateActive] in BlockClosure>>newProcess
June 7, 2012
Re: [Pharo-project] Backporting fixes
by Ben Coman
Stéphane Ducasse wrote:
> + 1
> Marcus can you add it to the pharo-project web site.
>
>
>>> no new bugs tagged 1.4 are important ones for the incremental release.
>>> We will not maintain two versions in parallel. Just **important** = show stopper fixes.
>>>
>> Especially as one Person's enhancement is the other persons bug... any large change
>> will have side effects, so we should really limit us a bit.
>>
>> -> No new features.
>> -> No cleanups
>> -> If a bug was there in Pharo 1.1 already and we lived with it for years, fixing it in
>> the current dev version is (in many cases) enough.
>> (There are exceptions, but is does not happen often).
>> -> Community input is important. A ready-to-include fix with a description that it
>> was tested and a note that it for sure works will not be ignored.
>> For an entry that is nearly finished yet nobody even cares to test it, why bother?
>>
Just a random idea... that perhaps the issue tracker tags and templates
could be updated to advise of this philosophy.
* Remove template "Pharo 1.4 Enhancement".
* Template "Pharo 1.4 Bug" currently has an empty description. Include
Steph's description above - particularly the bit about recording which
Pharo version a fix has been tested on.. The template label might be
changed from "Milestone-1.4" to "Maintenance-1.4" - since that milestone
has already passed.
cheers, Ben
>> The best thing is to just do it. The list is here:
>>
>> http://code.google.com/p/pharo/issues/list?can=2&q=milestone%3D1.4
>>
>> Marcus
>>
>> --
>> Marcus Denker -- http://marcusdenker.de
>>
>>
>>
>
>
>
>
June 7, 2012
Re: [Pharo-project] Backporting fixes
by Sean P. DeNigris
Stéphane Ducasse wrote
>
> no new bugs tagged 1.4 are important ones for the incremental release.
>
I'm not talking about bugs /tagged/ 1.4, but bugs /in/ 1.4. I'm seeing bug
in the bug tracker that effect 1.4 and 2.0 that are tagged 2.0 by reflex and
no one gets a chance to consider whether they should be also fixed in 1.4.
--
View this message in context: http://forum.world.st/Backporting-fixes-tp4633625p4633681.html
Sent from the Pharo Smalltalk mailing list archive at Nabble.com.
June 7, 2012
Re: [Pharo-project] Backporting fixes
by Stéphane Ducasse
>> The secret is: Things are done because they are done.
>>
>> Marcus
>>
> My question (and Seanâs i think) were more of the kind: âexplain us how
> things are done", and not "please do this for meâ.
Really simple:
- we go to the issue list
- try to load the code
- read the code
- check if there is a test
- check that all the tests are working (or that new ones are not broken
So any input is important.
> So if it is of any value
> if i load a fix in a fresh 1.4 image and run tests - but as in the FileList
> case do not really understand what is going on - is of any help, i will
> gladly do it.
Stef
June 7, 2012
Re: [Pharo-project] Graphic Framework..
by Diogenes Moreira
Thanks tudor
Lic. Diógenes A. Moreira
Desde mi celular
El jun 7, 2012 8:34 a.m., "Tudor Girba" <tudor(a)tudorgirba.com> escribió:
> This link is for Morphic (the other one was for VisualWorks):
> http://www.moosetechnology.org/tools/eyesee
>
> Doru
>
>
>
> On Thu, Jun 7, 2012 at 1:21 PM, Diogenes Moreira
> <diogenes.moreira(a)gmail.com> wrote:
> > Thaks..
> > http://about.me/diogenes.moreira
> >
> >
> >
> >
> > 2012/6/7 Esteban Lorenzano <estebanlm(a)gmail.com>
> >>
> >> http://www.moosetechnology.org/tools/vw/eyesee
> >>
> >> On Jun 7, 2012, at 1:15 PM, Diogenes Moreira wrote:
> >>
> >> Hi Folk,
> >>
> >> Is there a framework for generate graphics chart, like excel.. (I'll
> kill
> >> one dragon hidden on the excel and access), for morphic to start, but
> the
> >> idea is using that image in a seaside application.
> >>
> >> Best
> >> D.
> >>
> >> http://about.me/diogenes.moreira
> >>
> >>
> >
>
>
>
> --
> www.tudorgirba.com
>
> "Every thing has its own flow"
>
>
June 7, 2012