-
Notifications
You must be signed in to change notification settings - Fork 3
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Reworking main UI #23
Conversation
…ter clicking the show/hide inspector button
…s to context menus
…. And adding this command to the chest content's toolbar and context menu
…h code to illustrate Chest's API usage
I reworked fully only the main UI, and not the secondary views (e.g: store / load popup layouts, tree table view). I think their rework deserve their own PR |
…tion because that sends messages to unitialized objects
Looks like unrelated tests. Maybe the random failure in NewTools should have a fix though |
src/Chest/ChestPresenter.class.st
Outdated
{ #category : #accessing } | ||
ChestPresenter class >> showInspector: anObject [ | ||
|
||
^ ShowInspector := anObject |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
setters should not return anything specific
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
indeed, the "generate accessors" feature did that
src/Chest/ChestPresenter.class.st
Outdated
{ #category : #accessing } | ||
ChestPresenter class >> showPlayground: anObject [ | ||
|
||
^ ShowPlayground := anObject |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
setters should not return anything specific
src/Chest/ChestPresenter.class.st
Outdated
add: showPlaygroundContainer; | ||
add: showInspectorContainer expand: false; | ||
yourself. | ||
"showInspectorContainer remove: inspector." |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
remove comment
showPlaygroundContainer remove: playground. | ||
showPlaygroundButton icon: (self application iconNamed: #disable) | ||
] | ||
|
||
{ #category : #helper } | ||
ChestPresenter >> iconManager [ |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
What is the icon manager?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Something that should disappear, I guess: it has no senders
addColumn: (SpStringTableColumn | ||
title: 'Class' | ||
evaluated: [ :association | | ||
association value class printString ]) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Are we looking for the class name?
It is better to get it using class name
rather than printString
, unless printing provides more info.
The problem I see is that the implementation of print string for classes can change (maybe it will never do) and print others things, while it looks like we always want the name.
Cleaner UI:
shorter toolbar
adding actions:
"Inspect chest" via the chest table's contextual menu
"Add chest" is still in the chest's toolbar but is now also in the associated context menu
new action "Add item" that opens a pop-up to enter an expression whose result will be stored in the selected chest:
Before validating the expression:
After validating the expression:
custom expandable views, which can be configured via the system settings and/or class settings (and thus via a script):
View without playground or inspector:
View with playground only:
View with inspector only:
View with playground + inspector: