The Trunk: Tools-cmm.649.mcz

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
2 messages Options
Reply | Threaded
Open this post in threaded view
|

The Trunk: Tools-cmm.649.mcz

commits-2
Chris Muller uploaded a new version of Tools to project The Trunk:
http://source.squeak.org/trunk/Tools-cmm.649.mcz

==================== Summary ====================

Name: Tools-cmm.649
Author: cmm
Time: 11 November 2015, 3:53:53.467 pm
UUID: beec1181-1635-40c7-b6d9-dcec70347f01
Ancestors: Tools-mt.648

- Fix "Key not found: nil" when saving method from method template.
- We now have two annotation pane preferences, use language which allows the user to know which is which.

=============== Diff against Tools-mt.648 ===============

Item was changed:
  ----- Method: Browser>>defineMessageFrom:notifying: (in category 'message functions') -----
  defineMessageFrom: aString notifying: aController
  "Compile the expressions in aString. Notify aController if a syntax error occurs. Install the compiled method in the selected class classified under  the currently selected message category name. Answer the selector obtained if compilation succeeds, nil otherwise."
  | selectedMessageName selector category oldMessageList selectedClassOrMetaClass |
  selectedMessageName := self selectedMessageName.
  oldMessageList := self messageList.
  selectedClassOrMetaClass := self selectedClassOrMetaClass.
  contents := nil.
  selector := (selectedClassOrMetaClass newParser parseSelector: aString).
  (self metaClassIndicated
  and: [(selectedClassOrMetaClass includesSelector: selector) not
  and: [Metaclass isScarySelector: selector]])
  ifTrue: ["A frist-time definition overlaps the protocol of Metaclasses"
  (self confirm: ((selector , ' is used in the existing class system.
  Overriding it could cause serious problems.
  Is this really what you want to do?') asText makeBoldFrom: 1 to: selector size))
  ifFalse: [^nil]].
  selector := selectedClassOrMetaClass
  compile: aString
+ classified: (selectedMessageName ifNotNil: [category := (selectedClassOrMetaClass >> selectedMessageName) methodReference ifNotNil: [ : ref | ref category ]])
- classified: (category := (selectedClassOrMetaClass >> selectedMessageName) methodReference category)
  notifying: aController.
  selector == nil ifTrue: [^ nil].
  contents := aString copy.
  selector ~~ selectedMessageName
  ifTrue:
  [category = ClassOrganizer nullCategory
  ifTrue: [self changed: #classSelectionChanged.
  self changed: #classList.
  self messageCategoryListIndex: 1].
  self setClassOrganizer.  "In case organization not cached"
  (oldMessageList includes: selector)
  ifFalse: [self changed: #messageList].
  self messageListIndex: (self messageList indexOf: selector)].
  ^ selector!

Item was changed:
  ----- Method: Debugger class>>wantsAnnotationPane (in category 'preferences') -----
  wantsAnnotationPane
+ <preference: 'Show annotation pane in the debugger.'
- <preference: 'Wants annotation pane'
  categoryList: #(debugger tools)
+ description: 'If true, a thin, horizontal annotation pane shows information about the selected method.'
- description: 'If true, show annotation for selected method.'
  type: #Boolean>
  ^ WantsAnnotationPane ifNil: [false]!


Reply | Threaded
Open this post in threaded view
|

Re: The Trunk: Tools-cmm.649.mcz

marcel.taeumel
Still not working. Now, I cannot put a method in a selected category without selecting at least one method in that category. It will just land in "as yet unclassified".

Pleeeaaaaase, return it to the old state. We seem to have to simple way to save a method and *not* selecting its category aftewards....

Best,
Marcel