eXept Software AG Logo

Smalltalk/X Webserver

Documentation of class 'MultiViewToolApplication':

Home

Documentation
www.exept.de
Everywhere
for:
[back]

Class: MultiViewToolApplication


Inheritance:

   Object
   |
   +--Model
      |
      +--ApplicationModel
         |
         +--ToolApplicationModel
            |
            +--MultiViewToolApplication
               |
               +--TerminalApplication
               |
               +--WorkspaceApplication

Package:
stx:libtool
Category:
Interface-Smalltalk
Version:
rev: 1.82 date: 2023/09/07 20:52:52
user: stefan
file: MultiViewToolApplication.st directory: libtool
module: stx stc-classLibrary: libtool

Description:


Common code for multiView applications (Workspace, Terminal app and maybe more later)

copyright

COPYRIGHT (c) 2004 by eXept Software AG All Rights Reserved This software is furnished under a license and may be used only in accordance with the terms of that license and with the inclusion of the above copyright notice. This software may not be provided or otherwise made available to, or used by, any other person. No title to or ownership of the software is hereby transferred.

Class protocol:

defaults
o  defaultEditToolbarVisible

o  defaultInfoVisible

o  defaultToolbarVisible

help specs
o  helpSpec
(comment from inherited method)
This resource specification was automatically generated
by the UIHelpTool of ST/X.

image specs
o  hideToolBarIcon

interface specs
o  windowSpec
This resource specification was automatically generated
by the UIPainter of ST/X.

Usage example(s):

     UIPainter new openOnClass:MultiViewToolApplication andSelector:#windowSpec
     MultiViewToolApplication new openInterface:#windowSpec
     MultiViewToolApplication open

menu specs
o  editToolBarMenu
This resource specification was automatically generated
by the MenuEditor of ST/X.

o  mainMenu
This resource specification was automatically generated
by the MenuEditor of ST/X.

Usage example(s):

     MenuEditor new openOnClass:MultiViewToolApplication andSelector:#mainMenu
     (Menu new fromLiteralArrayEncoding:(MultiViewToolApplication mainMenu)) startUp

o  tabMenu
This resource specification was automatically generated
by the MenuEditor of ST/X.

Usage example(s):

     MenuEditor new openOnClass:MultiViewToolApplication andSelector:#tabMenu
     (Menu new fromLiteralArrayEncoding:(MultiViewToolApplication tabMenu)) startUp

o  toolBarMenu
This resource specification was automatically generated
by the MenuEditor of ST/X.

Usage example(s):

     MenuEditor new openOnClass:MultiViewToolApplication andSelector:#toolBarMenu
     (Menu new fromLiteralArrayEncoding:(MultiViewToolApplication toolBarMenu)) startUp

o  viewMenu
This resource specification was automatically generated
by the MenuEditor of ST/X.

Usage example(s):

     MenuEditor new openOnClass:MultiViewToolApplication andSelector:#viewMenu
     (Menu new fromLiteralArrayEncoding:(MultiViewToolApplication viewMenu)) startUp

o  viewMenuExtraSlice

queries
o  isAbstract

o  isVisualStartable
return true, if this application can be started via #open.
(to allow start of a change browser via double-click in the browser)


Instance protocol:

accessing
o  selectedWorkspace
the currently selected (active) workspace

o  selectedWorkspaceApplication
Return an aoplication of selected (active) workspace or nil,
is currently selected workspace is not an embedded
ApplicationModel

o  tabMenuAt: index
for now: if that buffer is modified, do not allow removing.

o  workspaceHolder
holds the current (active tab's) view

o  workspaces

aspects
o  editToolBarVisibleHolder

o  hasEditToolBar

o  hasInfoLabel

o  infoVisibleHolder

o  selectedWorkspaceIndexHolder

o  tabList

o  toolBarVisibleHolder

aspects-queries
o  canRemoveAllWorkspacesExcept: idx

o  canRemoveWorkspace

o  canRemoveWorkspace: idx
and:[ (self workspacesTextViewAt:(self selectedWorkspaceIndexHolder value))

o  hasMultipleBuffersHolder

o  hasSelectionInActiveWorkspace

o  hasSelectionInActiveWorkspaceAndEditorIsNotReadonly

o  hasTextInActiveWorkspace

change & update
o  infoVisibilityChanged
#CodeView.

o  toolBarVisibilityChanged
force it to recompute its dimension

o  update: something with: aParameter from: changedObject
(comment from inherited method)
dependent is notified of some change -
Default is to try update:with:

o  updateLabelOfSelectedWorkspaceForFile: filename

o  windowLabelPrefix

o  workspaceSelectionChanged
self selected

defaults
o  defaultFileNameForLoad

o  defaultFileNameForSave

o  defaultFileNameForSaveAll

o  defaultPatternLoad

initialization
o  hideToolBarButtonCreated: aButton
aButton passiveLevel:1.

o  initialize

o  postBuildWith: aBuilder
(comment from inherited method)
this is sent after an interface is built from a spec,
but only iff the appModel is not the same as the topView's app
(i.e. if it is not a build for the same appModel again).
In the other case, postBuildAsSubcanvasWith is invoked.
Can be redefined in subclasses for additional setup after
the view has been built, but not yet opened.

menu-actions
o  addWindow: aWindow named: name

o  addWindow: aWindow named: name asFirst: asFirst

o  addWindow: aWindow named: name tabIcon: iconOrNil
add aWindow as a new tab

o  addWindow: aWindow named: name tabIcon: iconOrNil asFirst: asFirst
add aWindow as a new tab

o  addWorkspace

o  destroyTab: tabIndex

o  doIt

o  loadFile: aFileName

o  loadFile: aFileName encoding: encodingSymbolOrNil

o  loadFile: aFileName encoding: encodingSymbolOrNil label: label
load a file into the current tab

o  loadFile: aFileName label: lbl

o  menuLoad

o  menuPrint

o  menuSaveAllAs
saves all buffers into one common file

o  menuSaveAs
open a dialog asking for a filename,
then ask the current tab to save its contents there.

o  newWorkspace

o  openFontDialog

o  openSTXDocumentation
opens the top documentation file

o  openSettingsDialog
#('Debugger' #'AbstractSettingsApplication::DebuggerSettingsAppl' )

o  printIt

o  removeAllWorkspacesExcept: wsIndex

o  removeWorkspace

o  removeWorkspace: wsIndex
to force change (update workspaceHolder - even if same index)

o  renameWorkspace

o  renameWorkspace: wsIndex

o  renameWorkspace: wsIndex to: newName

menu-actions-editing
o  copySelection

o  cutSelection

o  paste

o  paste: aString
special code, to catch exeception sent from a scrolled view,
which has a different receiver tha v

o  pasteOrReplace

o  redo

o  search

o  selectAll

o  sendToSelectedWorkspacesTextView: selector

o  undo

private
o  askForFile: question default: defaultFilename forSave: forSaveBoolean allowAppend: allowAppend thenDo: aBlock
ask for the name of a file, then evaluate aBlock with the entered name
and a boolean whether append was choosen

o  askForFile: question default: defaultFilename forSave: forSaveBoolean thenDo: aBlock
ask for the name of a file, then evaluate aBlock with the entered name
and a boolean whether append was choosen

o  askForFile: question default: defaultFilename thenDo: aBlock
|file doAppend|

** This is an obsolete interface - do not use it (it may vanish in future versions) **

o  askForFile: question thenDo: aBlock

** This is an obsolete interface - do not use it (it may vanish in future versions) **

o  askIfAnyModified: arg1 yesButton: arg2
raise an error: must be redefined in concrete subclass(es)

** This method must be redefined in concrete classes (subclassResponsibility) **

o  askIfModified: question yesButton: yesButtonText
tell user, that code has been modified - let her confirm

o  createWorkspace
create a view to be put into a tab

o  isModifiedWorkspace: aView

** This method must be redefined in concrete classes (subclassResponsibility) **

o  selectedWorkspacesTextView

o  setLabel: label

o  workspaceViewOfView: aView
if called during early init phase

user actions
o  hideEditToolbar

o  hideToolbar



ST/X 7.7.0.0; WebServer 1.702 at 20f6060372b9.unknown:8081; Sun, 22 Dec 2024 03:23:14 GMT