Gridarta Editor
net.sf.gridarta.textedit.scripteditor.ScriptEditControl Class Reference

ScriptEditControl - Manages events and data flow for the script editor entity. More...

+ Inheritance diagram for net.sf.gridarta.textedit.scripteditor.ScriptEditControl:
+ Collaboration diagram for net.sf.gridarta.textedit.scripteditor.ScriptEditControl:

Public Member Functions

boolean closeActiveTab ()
 Close the active script-tab. More...
 
boolean closeAllTabs ()
 Close all opened script-tabs. More...
 
void newScript ()
 Open a new empty script document. More...
 
void openScriptFile (@NotNull final File file)
 Opens a script file. More...
 
void openUser ()
 Open a file which is chosen by the user. More...
 
void saveActiveTab ()
 Save the active script-tab to the stored file path. More...
 
void saveAsActiveTab ()
 Open a file browser and prompt the user for a location/name to store this file. More...
 
 ScriptEditControl (@NotNull final FileFilter scriptFileFilter, @NotNull final String scriptSuffix, @NotNull final Frame owner, final File defaultScriptDir, @NotNull final Preferences preferences, @NotNull final Exiter exiter, @NotNull final AppPreferencesModel appPreferencesModel, @NotNull final ScriptEditControlCallback callback)
 
void setAction (@NotNull final Action action, @NotNull final String name)
 Sets the Action instance for this editor action. More...
 
void setTextAreaDefaults (@NotNull final TextAreaDefaults textAreaDefaults)
 

Static Public Member Functions

static void registerActivePopup (@NotNull final CFPythonPopup activePopup)
 Register last active popup. More...
 

Package Functions

String getActiveFilePath ()
 
JEditTextArea getActiveTextArea ()
 

Private Member Functions

JFileChooser createOpenFileChooser (@NotNull final File defaultScriptDir)
 Creates the JFileChooser for opening a script file. More...
 
boolean saveTextToFile (@NotNull final File file, @NotNull final String text)
 Write the given text into the specified file. More...
 

Private Attributes

final AppPreferencesModel appPreferencesModel
 The global AppPreferencesModel instance. More...
 
final ScriptEditControlCallback callback
 The callback function for reporting problems when starting an external editor. More...
 
final JFileChooser openFileChooser
 JFileChooser for opening script files. More...
 
final FileFilter scriptFileFilter
 
final String scriptSuffix
 
final List< String > tabs
 
final ScriptEditView view
 

Static Private Attributes

static final ActionBuilder ACTION_BUILDER = ActionBuilderFactory.getInstance().getActionBuilder("net.sf.gridarta")
 Action Builder. More...
 
static CFPythonPopup activePopup
 The currently active popup. More...
 
static final Category LOG = Logger.getLogger(ScriptEditControl.class)
 The Logger for printing log messages. More...
 

Detailed Description

ScriptEditControl - Manages events and data flow for the script editor entity.

There's always at most only one frame open. Additional files get attached to the tab bar.

Author
Andreas Vogl

Definition at line 59 of file ScriptEditControl.java.

Constructor & Destructor Documentation

◆ ScriptEditControl()

net.sf.gridarta.textedit.scripteditor.ScriptEditControl.ScriptEditControl ( @NotNull final FileFilter  scriptFileFilter,
@NotNull final String  scriptSuffix,
@NotNull final Frame  owner,
final File  defaultScriptDir,
@NotNull final Preferences  preferences,
@NotNull final Exiter  exiter,
@NotNull final AppPreferencesModel  appPreferencesModel,
@NotNull final ScriptEditControlCallback  callback 
)

Member Function Documentation

◆ closeActiveTab()

◆ closeAllTabs()

◆ createOpenFileChooser()

JFileChooser net.sf.gridarta.textedit.scripteditor.ScriptEditControl.createOpenFileChooser ( @NotNull final File  defaultScriptDir)
private

Creates the JFileChooser for opening a script file.

Parameters
defaultScriptDirthe initial directory for the file chooser; will be ignored if invalid
Returns
the file chooser

Definition at line 234 of file ScriptEditControl.java.

References net.sf.gridarta.utils.FileChooserUtils.sanitizeCurrentDirectory(), net.sf.gridarta.textedit.scripteditor.ScriptEditControl.scriptFileFilter, and net.sf.gridarta.utils.FileChooserUtils.setCurrentDirectory().

Referenced by net.sf.gridarta.textedit.scripteditor.ScriptEditControl.ScriptEditControl().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ getActiveFilePath()

String net.sf.gridarta.textedit.scripteditor.ScriptEditControl.getActiveFilePath ( )
package

◆ getActiveTextArea()

◆ newScript()

◆ openScriptFile()

void net.sf.gridarta.textedit.scripteditor.ScriptEditControl.openScriptFile ( @NotNull final File  file)

◆ openUser()

◆ registerActivePopup()

static void net.sf.gridarta.textedit.scripteditor.ScriptEditControl.registerActivePopup ( @NotNull final CFPythonPopup  activePopup)
static

Register last active popup.

When the script pad frame is hidden, this popup will be closed (if still open).

Parameters
activePopupactive popup to register

Definition at line 138 of file ScriptEditControl.java.

References net.sf.gridarta.textedit.scripteditor.ScriptEditControl.activePopup.

Referenced by net.sf.gridarta.textedit.scripteditor.CFPythonPopup.setCaretPosition().

+ Here is the caller graph for this function:

◆ saveActiveTab()

◆ saveAsActiveTab()

◆ saveTextToFile()

boolean net.sf.gridarta.textedit.scripteditor.ScriptEditControl.saveTextToFile ( @NotNull final File  file,
@NotNull final String  text 
)
private

Write the given text into the specified file.

Parameters
filetext gets saved into this file
texttext to be saved
Returns
true
if the file was saved, or
false
if an error occurred

Definition at line 398 of file ScriptEditControl.java.

References net.sf.gridarta.textedit.scripteditor.ScriptEditView.showMessage(), and net.sf.gridarta.textedit.scripteditor.ScriptEditControl.view.

Referenced by net.sf.gridarta.textedit.scripteditor.ScriptEditControl.saveActiveTab(), and net.sf.gridarta.textedit.scripteditor.ScriptEditControl.saveAsActiveTab().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ setAction()

void net.sf.gridarta.textedit.scripteditor.ScriptEditControl.setAction ( @NotNull final Action  action,
@NotNull final String  name 
)

Sets the Action instance for this editor action.

Parameters
actionthe action instance
namethe name of the action

Implements net.sf.gridarta.utils.EditorAction.

Definition at line 438 of file ScriptEditControl.java.

◆ setTextAreaDefaults()

void net.sf.gridarta.textedit.scripteditor.ScriptEditControl.setTextAreaDefaults ( @NotNull final TextAreaDefaults  textAreaDefaults)

Member Data Documentation

◆ ACTION_BUILDER

final ActionBuilder net.sf.gridarta.textedit.scripteditor.ScriptEditControl.ACTION_BUILDER = ActionBuilderFactory.getInstance().getActionBuilder("net.sf.gridarta")
staticprivate

◆ activePopup

CFPythonPopup net.sf.gridarta.textedit.scripteditor.ScriptEditControl.activePopup
staticprivate

The currently active popup.

Set to

null

if none has been opened yet.

Definition at line 79 of file ScriptEditControl.java.

Referenced by net.sf.gridarta.textedit.scripteditor.ScriptEditControl.closeActiveTab(), and net.sf.gridarta.textedit.scripteditor.ScriptEditControl.registerActivePopup().

◆ appPreferencesModel

final AppPreferencesModel net.sf.gridarta.textedit.scripteditor.ScriptEditControl.appPreferencesModel
private

◆ callback

final ScriptEditControlCallback net.sf.gridarta.textedit.scripteditor.ScriptEditControl.callback
private

The callback function for reporting problems when starting an external editor.

Definition at line 110 of file ScriptEditControl.java.

Referenced by net.sf.gridarta.textedit.scripteditor.ScriptEditControl.openScriptFile(), and net.sf.gridarta.textedit.scripteditor.ScriptEditControl.ScriptEditControl().

◆ LOG

final Category net.sf.gridarta.textedit.scripteditor.ScriptEditControl.LOG = Logger.getLogger(ScriptEditControl.class)
staticprivate

◆ openFileChooser

final JFileChooser net.sf.gridarta.textedit.scripteditor.ScriptEditControl.openFileChooser
private

◆ scriptFileFilter

final FileFilter net.sf.gridarta.textedit.scripteditor.ScriptEditControl.scriptFileFilter
private

◆ scriptSuffix

final String net.sf.gridarta.textedit.scripteditor.ScriptEditControl.scriptSuffix
private

◆ tabs

◆ view


The documentation for this class was generated from the following file: