The Trunk: Morphic-ar.403.mcz

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

The Trunk: Morphic-ar.403.mcz

commits-2
Andreas Raab uploaded a new version of Morphic to project The Trunk:
http://source.squeak.org/trunk/Morphic-ar.403.mcz

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

Name: Morphic-ar.403
Author: ar
Time: 28 March 2010, 3:06:47.714 pm
UUID: 35cb8716-1e23-404b-9c5d-bad6f7df8550
Ancestors: Morphic-klub.402

Merging Morphic-klub.402:

- added a search bar and a clock to the docking bar
- (ar) label the search entry for noobs
- (ar) first round of smart search for typing in globals or messages and fire browsers on those

=============== Diff against Morphic-cmm.401 ===============

Item was added:
+ ----- Method: SearchBarMorph>>smartSearch (in category 'search') -----
+ smartSearch
+ "Take the user input and perform an appropriate search"
+ | input |
+ input := self contents asString ifEmpty:[^self].
+ (Smalltalk bindingOf: input) ifNotNil:[:assoc|
+ "It's a global or a class"
+ ^ToolSet browse: assoc value class selector: nil.
+ ].
+ (SystemNavigation new allImplementorsOf: input asSymbol) ifNotEmpty:[:list|
+ ^SystemNavigation new
+ browseMessageList: list
+ name: 'Implementors of ' , input
+ ].
+ input first isUppercase ifTrue:[
+ (Utilities classFromPattern: input withCaption: '') ifNotNil:[:aClass|
+ ^ToolSet browse: aClass selector: nil.
+ ].
+ ] ifFalse:[
+ "Should offer a list of selectors or so"
+ ].
+ "Not found"
+ Beeper beepPrimitive.!

Item was added:
+ ----- Method: SearchBarMorph>>initialize (in category 'initialize') -----
+ initialize
+
+ super initialize.
+ text := Text new.
+ backgroundColor := TranslucentColor gray alpha: 0.3.
+ self width: 200.
+ self crAction: (MessageSend receiver: self selector: #smartSearch).
+ self setBalloonText: 'Searches for globals and methods'.!

Item was added:
+ TextMorph subclass: #SearchBarMorph
+ instanceVariableNames: ''
+ classVariableNames: ''
+ poolDictionaries: ''
+ category: 'Morphic-Menus-DockingBar'!

Item was added:
+ ----- Method: SearchBarMorph>>fillStyle (in category 'initialize') -----
+ fillStyle
+
+ ^backgroundColor!

Item was added:
+ ----- Method: TheWorldMainDockingBar>>clockOn: (in category 'right side') -----
+ clockOn: aDockingBar
+
+ aDockingBar
+ addMorphBack: (
+ ClockMorph new
+ showSeconds: false;
+ yourself);
+ addDefaultSpace!

Item was changed:
  ----- Method: TheWorldMainDockingBar>>helpMenuOn: (in category 'construction') -----
  helpMenuOn: aDockingBar
 
  aDockingBar addItem: [ :it |
  it contents: 'Help' translated;
  addSubMenu: [ :menu |  'Todo'.
  menu addItem:[:item|
  item
  contents: 'Online Resources' translated;
  help: 'Online resources for Squeak' translated;
  target: self;
+ icon: MenuIcons smallHelpIcon;
  selector: #showSqueakResources ].
  menu addItem:[:item|
  item
  contents: 'Keyboard Shortcuts' translated;
  help: 'Keyboard bindings used in Squeak' translated;
  target: Utilities;
  selector: #openCommandKeyHelp ].
  menu addItem:[:item|
  item
  contents: 'Font Size Summary' translated;
  help: 'Font size summary from the old Squeak 3.10.2 help menu.' translated;
  target: TextStyle;
  selector: #fontSizeSummary ].
  menu addItem:[:item|
  item
  contents: 'Useful Expressions' translated;
  help: 'Useful expressions from the old Squeak 3.10.2 help menu.' translated;
  target: Utilities;
  selector: #openStandardWorkspace ].
  ]].!

Item was added:
+ ----- Method: TheWorldMainDockingBar>>searchBarOn: (in category 'right side') -----
+ searchBarOn: aDockingBar
+
+ aDockingBar
+ addMorphBack: (StringMorph new contents: 'Search: ');
+ addMorphBack: SearchBarMorph new;
+ addDefaultSpace!

Item was changed:
  ----- Method: TheWorldMainDockingBar>>menusOn: (in category 'construction') -----
  menusOn: aDockingBar
 
  self
  squeakMenuOn: aDockingBar;
  projectsMenuOn: aDockingBar;
  toolsMenuOn: aDockingBar;
  extrasMenuOn: aDockingBar;
  windowsMenuOn: aDockingBar;
+ helpMenuOn: aDockingBar.
+ aDockingBar addSpacer.
+ self
+ searchBarOn: aDockingBar;
+ clockOn: aDockingBar!
- helpMenuOn: aDockingBar!


Reply | Threaded
Open this post in threaded view
|

Re: The Trunk: Morphic-ar.403.mcz

Chris Muller-3
This is great, thanks!  The Docking Bar is now worth the real-estate
for me..  Thanks also for fixing the ClockMorph (from showing
milliseconds).

On Sun, Mar 28, 2010 at 5:07 PM,  <[hidden email]> wrote:

> Andreas Raab uploaded a new version of Morphic to project The Trunk:
> http://source.squeak.org/trunk/Morphic-ar.403.mcz
>
> ==================== Summary ====================
>
> Name: Morphic-ar.403
> Author: ar
> Time: 28 March 2010, 3:06:47.714 pm
> UUID: 35cb8716-1e23-404b-9c5d-bad6f7df8550
> Ancestors: Morphic-klub.402
>
> Merging Morphic-klub.402:
>
> - added a search bar and a clock to the docking bar
> - (ar) label the search entry for noobs
> - (ar) first round of smart search for typing in globals or messages and fire browsers on those
>
> =============== Diff against Morphic-cmm.401 ===============
>
> Item was added:
> + ----- Method: SearchBarMorph>>smartSearch (in category 'search') -----
> + smartSearch
> +       "Take the user input and perform an appropriate search"
> +       | input |
> +       input := self contents asString ifEmpty:[^self].
> +       (Smalltalk bindingOf: input) ifNotNil:[:assoc|
> +               "It's a global or a class"
> +               ^ToolSet browse: assoc value class selector: nil.
> +       ].
> +       (SystemNavigation new allImplementorsOf: input asSymbol) ifNotEmpty:[:list|
> +               ^SystemNavigation new
> +                       browseMessageList: list
> +                       name: 'Implementors of ' , input
> +       ].
> +       input first isUppercase ifTrue:[
> +               (Utilities classFromPattern: input withCaption: '') ifNotNil:[:aClass|
> +                       ^ToolSet browse: aClass selector: nil.
> +               ].
> +       ] ifFalse:[
> +               "Should offer a list of selectors or so"
> +       ].
> +       "Not found"
> +       Beeper beepPrimitive.!
>
> Item was added:
> + ----- Method: SearchBarMorph>>initialize (in category 'initialize') -----
> + initialize
> +
> +       super initialize.
> +       text := Text new.
> +       backgroundColor := TranslucentColor gray alpha: 0.3.
> +       self width: 200.
> +       self crAction: (MessageSend receiver: self selector: #smartSearch).
> +       self setBalloonText: 'Searches for globals and methods'.!
>
> Item was added:
> + TextMorph subclass: #SearchBarMorph
> +       instanceVariableNames: ''
> +       classVariableNames: ''
> +       poolDictionaries: ''
> +       category: 'Morphic-Menus-DockingBar'!
>
> Item was added:
> + ----- Method: SearchBarMorph>>fillStyle (in category 'initialize') -----
> + fillStyle
> +
> +       ^backgroundColor!
>
> Item was added:
> + ----- Method: TheWorldMainDockingBar>>clockOn: (in category 'right side') -----
> + clockOn: aDockingBar
> +
> +       aDockingBar
> +               addMorphBack: (
> +                       ClockMorph new
> +                               showSeconds: false;
> +                               yourself);
> +               addDefaultSpace!
>
> Item was changed:
>  ----- Method: TheWorldMainDockingBar>>helpMenuOn: (in category 'construction') -----
>  helpMenuOn: aDockingBar
>
>        aDockingBar addItem: [ :it |
>                it      contents: 'Help' translated;
>                        addSubMenu: [ :menu |  'Todo'.
>                                menu addItem:[:item|
>                                        item
>                                                contents: 'Online Resources' translated;
>                                                help: 'Online resources for Squeak' translated;
>                                                target: self;
> +                                               icon: MenuIcons smallHelpIcon;
>                                                selector: #showSqueakResources ].
>                                menu addItem:[:item|
>                                        item
>                                                contents: 'Keyboard Shortcuts' translated;
>                                                help: 'Keyboard bindings used in Squeak' translated;
>                                                target: Utilities;
>                                                selector: #openCommandKeyHelp ].
>                                menu addItem:[:item|
>                                        item
>                                                contents: 'Font Size Summary' translated;
>                                                help: 'Font size summary from the old Squeak 3.10.2 help menu.' translated;
>                                                target: TextStyle;
>                                                selector: #fontSizeSummary ].
>                                menu addItem:[:item|
>                                        item
>                                                contents: 'Useful Expressions' translated;
>                                                help: 'Useful expressions from the old Squeak 3.10.2 help menu.' translated;
>                                                target: Utilities;
>                                                selector: #openStandardWorkspace ].
>                        ]].!
>
> Item was added:
> + ----- Method: TheWorldMainDockingBar>>searchBarOn: (in category 'right side') -----
> + searchBarOn: aDockingBar
> +
> +       aDockingBar
> +               addMorphBack: (StringMorph new contents: 'Search: ');
> +               addMorphBack: SearchBarMorph new;
> +               addDefaultSpace!
>
> Item was changed:
>  ----- Method: TheWorldMainDockingBar>>menusOn: (in category 'construction') -----
>  menusOn: aDockingBar
>
>        self
>                squeakMenuOn: aDockingBar;
>                projectsMenuOn: aDockingBar;
>                toolsMenuOn: aDockingBar;
>                extrasMenuOn: aDockingBar;
>                windowsMenuOn: aDockingBar;
> +               helpMenuOn: aDockingBar.
> +       aDockingBar addSpacer.
> +       self
> +               searchBarOn: aDockingBar;
> +               clockOn: aDockingBar!
> -               helpMenuOn: aDockingBar!
>
>
>


Reply | Threaded
Open this post in threaded view
|

Re: The Trunk: Morphic-ar.403.mcz

Andreas.Raab
On 3/29/2010 12:15 PM, Chris Muller wrote:
> This is great, thanks!  The Docking Bar is now worth the real-estate
> for me..  Thanks also for fixing the ClockMorph (from showing
> milliseconds).

Agree. When I saw the search box I was dumbstruck by how obviously a
great idea that is. Almost always I start my engagements with the system
by opening a browser going to find a class and then go from there. With
this interface I can avoid several gestures by typing in the class name
and hit enter.

There's more work that should be done here; for example I'd like to link
in searches in other places for inexact matches (how about a Google
query?) but it's a *great* start.

It's also an area where I'd like to see Squeak headed - better
interfaces for both pros and noobs. The search box is a really good step
in that direction.

Cheers,
   - Andreas

> On Sun, Mar 28, 2010 at 5:07 PM,<[hidden email]>  wrote:
>> Andreas Raab uploaded a new version of Morphic to project The Trunk:
>> http://source.squeak.org/trunk/Morphic-ar.403.mcz
>>
>> ==================== Summary ====================
>>
>> Name: Morphic-ar.403
>> Author: ar
>> Time: 28 March 2010, 3:06:47.714 pm
>> UUID: 35cb8716-1e23-404b-9c5d-bad6f7df8550
>> Ancestors: Morphic-klub.402
>>
>> Merging Morphic-klub.402:
>>
>> - added a search bar and a clock to the docking bar
>> - (ar) label the search entry for noobs
>> - (ar) first round of smart search for typing in globals or messages and fire browsers on those
>>
>> =============== Diff against Morphic-cmm.401 ===============

Reply | Threaded
Open this post in threaded view
|

Re: The Trunk: Morphic-ar.403.mcz

Andreas.Raab
In reply to this post by Chris Muller-3
On 3/29/2010 12:15 PM, Chris Muller wrote:
> This is great, thanks!  The Docking Bar is now worth the real-estate
> for me..  Thanks also for fixing the ClockMorph (from showing
> milliseconds).

Agree. When I saw the search box I was dumbstruck by how obviously a
great idea that is. Almost always I start my engagements with the system
by opening a browser going to find a class and then go from there. With
this interface I can avoid several gestures by typing in the class name
and hit enter.

There's more work that should be done here; for example I'd like to link
in searches in other places for inexact matches (how about a Google
query?) but it's a *great* start.

It's also an area where I'd like to see Squeak headed - better
interfaces for both pros and noobs. The search box is a really good step
in that direction.

Cheers,
   - Andreas

> On Sun, Mar 28, 2010 at 5:07 PM,<[hidden email]>  wrote:
>> Andreas Raab uploaded a new version of Morphic to project The Trunk:
>> http://source.squeak.org/trunk/Morphic-ar.403.mcz
>>
>> ==================== Summary ====================
>>
>> Name: Morphic-ar.403
>> Author: ar
>> Time: 28 March 2010, 3:06:47.714 pm
>> UUID: 35cb8716-1e23-404b-9c5d-bad6f7df8550
>> Ancestors: Morphic-klub.402
>>
>> Merging Morphic-klub.402:
>>
>> - added a search bar and a clock to the docking bar
>> - (ar) label the search entry for noobs
>> - (ar) first round of smart search for typing in globals or messages and fire browsers on those
>>
>> =============== Diff against Morphic-cmm.401 ===============

Reply | Threaded
Open this post in threaded view
|

Re: The Trunk: Morphic-ar.403.mcz

Casey Ransberger-2
Oh man! This is killer!!

On Mon, Mar 29, 2010 at 12:27 PM, Andreas Raab <[hidden email]> wrote:
On 3/29/2010 12:15 PM, Chris Muller wrote:
This is great, thanks!  The Docking Bar is now worth the real-estate
for me..  Thanks also for fixing the ClockMorph (from showing
milliseconds).

Agree. When I saw the search box I was dumbstruck by how obviously a great idea that is. Almost always I start my engagements with the system by opening a browser going to find a class and then go from there. With this interface I can avoid several gestures by typing in the class name and hit enter.

There's more work that should be done here; for example I'd like to link in searches in other places for inexact matches (how about a Google query?) but it's a *great* start.

It's also an area where I'd like to see Squeak headed - better interfaces for both pros and noobs. The search box is a really good step in that direction.

Cheers,
 - Andreas

On Sun, Mar 28, 2010 at 5:07 PM,<[hidden email]>  wrote:
Andreas Raab uploaded a new version of Morphic to project The Trunk:
http://source.squeak.org/trunk/Morphic-ar.403.mcz

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

Name: Morphic-ar.403
Author: ar
Time: 28 March 2010, 3:06:47.714 pm
UUID: 35cb8716-1e23-404b-9c5d-bad6f7df8550
Ancestors: Morphic-klub.402

Merging Morphic-klub.402:

- added a search bar and a clock to the docking bar
- (ar) label the search entry for noobs
- (ar) first round of smart search for typing in globals or messages and fire browsers on those

=============== Diff against Morphic-cmm.401 ===============