Presenty User Interface Application Framework
http://www.squeaksource.com/Presenty MIT license
Presenty User Interface Application Framework MIT license - - PowerPoint PPT Presentation
Presenty User Interface Application Framework MIT license http://www.squeaksource.com/Presenty Presenty Separation business logic of user interface application from presentation level Business logic of user interface application Sequence of
http://www.squeaksource.com/Presenty MIT license
Presenty Separation business logic of user interface application from presentation level
Business logic of user interface application
Sequence of domain user requests:
Business logic of user interface application Sequence of primitive user requests:
Presentation level
Widgets:
Presentation level
Classic package browser
Alt Browser
Classic browser, Alt-browser, Whisker browser, Newspeak browser
Classic browser, Alt-browser, Whisker browser, Newspeak browser
PtyBrowsePackagesTask>>body | package class method protocol | package := user select: 'Package' from: PackageOrganizer default packages. class := user select: 'Class' from: package classes. protocol := user select: 'Protocol' from: class protocols. method := user select: 'Method' from: (class methodsInProtocol: protocol). user lookAt: method sourceCodePreviewPresenter
List filters
List filters
Kernel selected Float selected Arithmetic selected
domain specific requests
PtyViewAreaPresenter
PtyTask
PtyTaskActivationStrategy
PtyTaskContext
parentContext task activation context parentViewArea context
PtyTaskActivationStrategy SeparatedAreaActivationStrategy InheritedActivationStrategy PtyViewAreaActivator PtyInlinedAreaActivator PtyPopUpAreaActivator PtyEmbeddedAreaActivator PtyNewAreaActivator PtyNewWindowActivator PtyModalAreaActivator areaActivator show view area to user
package := user select: 'Package' from: PackageOrganizer default packages. class := user select: 'Class' from: package classes.
view area near selected package item
its items near this button
guide addTask: [model value: (user select: 'Item' from: possibleItems)]. user lookAt: model preferredPreviewPresenter
extra task
popup view area with items list
happen parent task continue execution
task
as:
PtyPresenter PtyUserActionConnector PtyButtonUserActionActivator PtyMouseClickUserActionActivator PtyShortcutActionActivator Implements #hookupPresenter PtyUserAction connector PtyUserActionActivator * userActions action activators presenter *
Any list item has user action which executes PtyReturnValueFromPresenterTask User action PtyReturnToPreviousTask
Extendible UI contexts
prototype