[squeak-dev] The Trunk: Morphic-mt.1539.mcz

commits at source.squeak.org commits at source.squeak.org
Mon Sep 23 12:21:59 UTC 2019


Marcel Taeumel uploaded a new version of Morphic to project The Trunk:
http://source.squeak.org/trunk/Morphic-mt.1539.mcz

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

Name: Morphic-mt.1539
Author: mt
Time: 23 September 2019, 2:21:49.394954 pm
UUID: 73a17c57-fcfe-ab48-98c4-592cd316443b
Ancestors: Morphic-ct.1538

Try to improve usability of the world's docking bar "Projects" menu:
- gray-out items that are not useful
- revise action words in labels
- add "enter parent project" ... assuming that users now about the tree-structure of projects
- separate "close this project" with a line

=============== Diff against Morphic-ct.1538 ===============

Item was added:
+ ----- Method: MenuMorph>>addUpdatingItem: (in category 'construction') -----
+ addUpdatingItem: aBlock
+ 	| item |
+ 	item := UpdatingMenuItemMorph new.
+ 	aBlock value: item.
+ 	self addMenuItem: item!

Item was added:
+ ----- Method: TheWorldMainDockingBar>>canCloseProject (in category 'submenu - projects') -----
+ canCloseProject
+ 
+ 	^ self canEnterParentProject!

Item was added:
+ ----- Method: TheWorldMainDockingBar>>canEnterParentProject (in category 'submenu - projects') -----
+ canEnterParentProject
+ 	
+ 	^ Project current isTopProject not!

Item was added:
+ ----- Method: TheWorldMainDockingBar>>canEnterPreviousProject (in category 'submenu - projects') -----
+ canEnterPreviousProject
+ 
+ 	^ Project current previousProject notNil!

Item was added:
+ ----- Method: TheWorldMainDockingBar>>closeProject (in category 'submenu - projects') -----
+ closeProject
+ 
+ 	Project current close.!

Item was changed:
  ----- Method: TheWorldMainDockingBar>>closeProjectMenuItemOn: (in category 'submenu - projects') -----
  closeProjectMenuItemOn: menu
  
+ 	menu addUpdatingItem: [ :item |
- 	menu addItem: [ :item |
  		item
+ 			contents: 'Close This Project' translated;
- 			contents: 'Close Project' translated;
  			help: 'Close this project and return to parent one' translated;
+ 			target: self;
+ 			selector: #closeProject;
+ 			enablementSelector: #canCloseProject ]!
- 			target: Project current;
- 			selector: #close ]!

Item was added:
+ ----- Method: TheWorldMainDockingBar>>enterParentProject (in category 'submenu - projects') -----
+ enterParentProject
+ 	
+ 	^ Project returnToParentProject!

Item was added:
+ ----- Method: TheWorldMainDockingBar>>enterPreviousProject (in category 'submenu - projects') -----
+ enterPreviousProject
+ 
+ 	^ Project returnToPreviousProject!

Item was changed:
  ----- Method: TheWorldMainDockingBar>>jumpToProjectMenuItemOn: (in category 'submenu - projects') -----
  jumpToProjectMenuItemOn: menu
  
  	menu addItem: [ :item |
  		item
+ 			contents: 'Enter Project' translated;
- 			contents: 'Jump To Project' translated;
  			icon: MenuIcons smallProjectJumpIcon;
  			subMenuUpdater: self
  			selector: #updateJumpToProjectSubMenu: ]!

Item was changed:
  ----- Method: TheWorldMainDockingBar>>loadProjectMenuItemOn: (in category 'submenu - projects') -----
  loadProjectMenuItemOn: menu
  
  	menu addItem: [ :item |
  		item
  			contents: 'Load Project' translated;
+ 			help: 'Load a project from a file and enter it on success' translated;
- 			help: 'Load a project from a file' translated;
  			target: self;
  			selector: #loadProject ]!

Item was changed:
  ----- Method: TheWorldMainDockingBar>>newProjectMenuItemOn: (in category 'submenu - projects') -----
  newProjectMenuItemOn: menu
  
  	Project allSubclasses do: [ :each |
  		menu addItem: [ :item | 
  			item
+ 				contents: ('Create ', each name) translated;
+ 				help: ('Create a new ', each name, ' and open a viewer for it.') translated;
- 				contents: ('New ', each name) translated;
- 				help: ('Start a new ', each name) translated;
  				target: self;
  				selector: #newProject:;
  				arguments: { each } ] ] !

Item was added:
+ ----- Method: TheWorldMainDockingBar>>parentProjectMenuItemOn: (in category 'submenu - projects') -----
+ parentProjectMenuItemOn: menu
+ 
+ 	menu addUpdatingItem: [ :item |
+ 		item
+ 			contents: 'Enter Parent Project' translated;
+ 			help: 'Return to the parent project' translated;
+ 			target: self;
+ 			selector: #enterParentProject;
+ 			enablementSelector: #canEnterParentProject ]!

Item was changed:
  ----- Method: TheWorldMainDockingBar>>previousProjectMenuItemOn: (in category 'submenu - projects') -----
  previousProjectMenuItemOn: menu
  
+ 	menu addUpdatingItem: [ :item |
- 	menu addItem: [ :item |
  		item
+ 			contents: 'Enter Previous Project' translated;
- 			contents: 'Previous Project' translated;
  			help: 'Return to the most-recently-visited project' translated;
+ 			target: self;
+ 			selector: #enterPreviousProject;
+ 			enablementSelector: #canEnterPreviousProject ]!
- 			target: Project current world;
- 			selector: #goBack ]!

Item was changed:
  ----- Method: TheWorldMainDockingBar>>projectsMenuOn: (in category 'construction') -----
  projectsMenuOn: aDockingBar
  
  	aDockingBar addItem: [ :item |
  		item
  			contents: 'Projects' translated;
  			addSubMenu: [ :menu | 
  				self newProjectMenuItemOn: menu.
  				menu addLine.
  				self
  					saveProjectMenuItemOn: menu;
  					loadProjectMenuItemOn: menu.
  				menu addLine.
  				self
+ 					parentProjectMenuItemOn: menu;
  					previousProjectMenuItemOn: menu;
+ 					jumpToProjectMenuItemOn: menu.
+ 				menu addLine.
+ 				self closeProjectMenuItemOn: menu ] ]
- 					jumpToProjectMenuItemOn: menu;
- 					closeProjectMenuItemOn: menu ] ]
  !



More information about the Squeak-dev mailing list