mesquite.lib.duties
Class CharModelCurator

java.lang.Object
  extended by mesquite.lib.MenuOwner
      extended by mesquite.lib.EmployerEmployee
          extended by mesquite.lib.MesquiteModule
              extended by mesquite.lib.duties.CharModelCurator
All Implemented Interfaces:
Commandable, Doomable, Explainable, FileDirtier, FunctionExplainable, HNode, Identifiable, Listable, Logger, MesquiteListener, Showable
Direct Known Subclasses:
CharSubmodelCurator, WholeCharModelCurator

public abstract class CharModelCurator
extends MesquiteModule

This class of modules curates a subclass of character models for use in calculation routines.


Field Summary
 
Fields inherited from class mesquite.lib.MesquiteModule
author, browserString, checkMethodsAtStartup, hiredAsDefaultInScripting, lastResult, lastResultString, logWindow, mesquiteDirectory, mesquiteDirectoryPath, mesquiteTrunk, moduleInfo, prefsDirectory, proj, textEdgeCompensationHeight, textEdgeCompensationWidth, totalFinalized, userDirectory
 
Fields inherited from class mesquite.lib.EmployerEmployee
employees, employer, startupBailOut, stringPos, suppressHireQueries, totalCreated, totalDisposed, useOtherChoices
 
Fields inherited from class mesquite.lib.MenuOwner
considerPriorities, doomed, MAXPRIORITY, menuCompositionTime, menuCompositionTime1, menuCompositionTime2, menuCompositionTime2a, menuCompositionTime2b, menuCompositionTime2c, menuCompositionTime3, menuCompositionTime4, menuCompositionTime5, menuCompositionTime6, menuCompositionTime7, menuCompositionTime8, menuCompositionTime9, menuTracing, module, parser
 
Fields inherited from interface mesquite.lib.MesquiteListener
ANNOTATION_ADDED, ANNOTATION_CHANGED, ANNOTATION_DELETED, ASSOCIATED_CHANGED, BRANCHES_REARRANGED, BRANCHLENGTHS_CHANGED, COMMAND_CANCELLED, DATA_CHANGED, ELEMENT_CHANGED, ITEMS_ADDED, NAMES_CHANGED, OBJECT_DESTROYED, PARTS_ADDED, PARTS_CHANGED, PARTS_DELETED, PARTS_MOVED, SELECTION_CHANGED, TAXA_SUBSTITUTED, TEXTFIELD_EDITED, UNKNOWN, VALUE_CHANGED
 
Fields inherited from interface mesquite.lib.HNode
MOUSEDOWN, MOUSEEXIT, MOUSEMOVE
 
Constructor Summary
CharModelCurator()
           
 
Method Summary
abstract  boolean curatesModelClass(java.lang.Class modelClass)
           
 void disposeModel(CharacterModel model)
           
 void disposing(java.lang.Object obj)
          passes which object was disposed
 java.lang.Object doCommand(java.lang.String commandName, java.lang.String arguments, CommandChecker checker)
          A request for the MesquiteModule to perform a command.
 MesquiteModule editModelNonModal(CharacterModel model, ObjectContainer window)
          Edit model.
 void employeeQuit(MesquiteModule m)
          Generated by an employee who quit.
 void endJob()
          endJob is called as a module is quitting; modules should put their clean up code here.
 java.lang.Class getDutyClass()
          Returns duty Class the module belongs to; should be defined not by module itself but by abstract class representing duty
 java.lang.String getDutyName()
          Returns the name of the duty; set by the duty-defining library classes.
protected  CharacterModel getModel(int i)
           
abstract  java.lang.Class getModelClass()
           
protected  int getModelNumber(CharacterModel model)
           
abstract  java.lang.String getNameOfModelClass()
          Edit model.
abstract  java.lang.String getNEXUSNameOfModelClass()
           
 Snapshot getSnapshot(MesquiteFile file)
          Return Mesquite commands that will put the module (approximately) back into its current state.
protected  MesquiteWindow getWindow(int i)
           
protected  MesquiteModule getWindowHolder(int i)
           
 boolean isSubstantive()
          returns whether this module does substantive calculations affecting analysis results, or only a graphical/UI/input-output module
abstract  CharacterModel makeNewModel(java.lang.String name)
          Make new model and return (don't add to file or show to edit)
 boolean okToDispose(java.lang.Object obj, int queryUser)
          Asks whether it's ok to delete the object as far as the listener is concerned (e.g., is it in use?)
abstract  CharacterModel readCharacterModel(java.lang.String name, MesquiteInteger stringPos, java.lang.String description, int format)
           
 boolean requestPrimaryChoice()
          returns whether this module is requesting to appear as a primary choice
 MesquiteModule showEditor(CharacterModel model)
          Edit model.
 
Methods inherited from class mesquite.lib.MesquiteModule
accumulateParameters, addNEXUSBlock, alert, alert, anySubstantivePrereleases, broadCastAssignedID, changed, classFieldChanged, clearLastResult, clearResultAndLastResult, compatibleWithSystem, containerOfModule, createSupportDirectory, deleteSupportDirectory, discreetAlert, discreetAlert, dispose, echoStringToFile, employeeOutputInvalid, employeeParametersChanged, employerWithWindow, fileAboutToBeWritten, fileDirtiedByCommand, fileElementAdded, fileReadIn, finalize, findNEXUSBlock, getAppletInfo, getAuthors, getAutoSaveMacros, getBrowserManualPath, getBrowserPanel, getBuildDate, getBuildVersion, getCitation, getCommandPagePath, getCompatibilityTest, getDateReleased, getDefaultModule, getDocsPath, getExpectedPath, getExplanation, getFunctionIconPath, getHireSubchoice, getHTMLExplanation, getID, getIfLastEmployee, getKeywords, getManualPath, getMesquiteVersion, getModuleInfo, getName, getNameAndParameters, getNameForMenuItem, getNexusBlockTest, getNexusCommands, getNexusCommandTest, getPackageImagesPath, getPackageIntroModule, getPackagePath, getParameters, getParametersChangedNotifier, getPath, getPermanentIDString, getProject, getRootImageDirectoryPath, getRootPath, getShortClassName, getShortClassName, getSizedRootImageFilePath, getSubfunctions, getSubfunctionsVector, getURLString, getUserChooseable, getVersion, getVersionInt, getVersionOfFirstRelease, getVeryShortName, getXMLPrefsVersion, iQuit, iQuit, isCorrectRootTag, isPrerelease, listEmployeeParameters, listEmployees, loadPreferences, log, log, logln, logln, loglnNoEcho, logNoEcho, makeCommand, mesquiteStartup, nameIsInstanceOf, nameMatches, offHold, onHold, outputInvalid, pageModule, panelGoAway, parametersChanged, parametersChanged, parseFullXMLDocument, permanentIDExists, preparePreferencesForFile, preparePreferencesForXML, processPreferencesFromFile, processPreferencesFromXML, processSingleXMLPreference, projectEstablished, quittingConditions, readNexusBlock, readNexusCommand, readUnrecognizedCommand, registerSubfunction, removeNEXUSBlock, removePaging, reportProfiling, respondToPaging, returningPage, saveLastResult, saveLastResult, saveLastResult, saveLastResult, saveLastResultString, saveLastResultString, setAutoSaveMacros, setProject, setToLastEmployee, showCitation, showHTMLSnippet, showLogWindow, showLogWindow, showManual, showMe, showWebPage, showWebPage, sorry, startJob, startProfiling, storePreferences, superStartJob, supportDirectoryPath, toString, URLinPackageIntro, windowGoAway, writeNexusCommands, xmlPrefsVersionMustMatch
 
Methods inherited from class mesquite.lib.EmployerEmployee
canHireMoreThanOnce, closeDownAllEmployees, decrementEmployeeBrowserRefreshSuppression, deferBranchPriority, employeeOfWhichEmployee, findCharacterDataEditor, findCharacterDataEditorRec, findElementManager, findEmployee, findEmployee, findEmployeeNeed, findEmployeeWithDuty, findEmployeeWithDuty, findEmployeeWithIDNumber, findEmployeeWithName, findEmployeeWithName, findEmployeeWithName, findEmployeeWithPermanentID, findEmployerWithDuty, findImmediateEmployeeWithDuty, findModelCurator, findModelCuratorRec, findModules, findModulesWithDuty, findNearestColleagueWithDuty, findNearestColleagueWithName, findNearestModuleWithDuty, findNextEmployeeWithDuty, fireEmployee, getClonableEmployeeCommand, getEmployeeNeeds, getEmployeeNeedsVector, getEmployeeReference, getEmployeeVector, getEmployer, getEmployerPath, getExplanationByWhichHired, getFileCoordinator, getHColor, getHDaughters, getHImage, getHiredAs, getHiringCommand, getHiringCondition, getHMother, getHShow, getImmediateEmployeesWithDuty, getNextEmployeeWithDuty, getNumberOfEmployees, getNumSupplements, getSearchableAsModule, getSupplementName, getTypeName, hireAllCompatibleEmployees, hireAllEmployees, hireAllOtherCompatibleEmployees, hireAllOtherEmployees, hireCompatibleEmployee, hireEmployee, hireEmployeeFromModuleInfo, hireNamedEmployee, hireNamedEmployee, hireNamedEmployee, hNodeAction, hSupplementTouched, incrementEmployeeBrowserRefreshSuppression, instantiateEmployee, instantiateModule, internalStartUp, isEmployerOf, isMacroAnchor, isPriorityFixed, listEmployees, listNeeds, makeEmployeeVector, moduleActiveWord, moveEmployeeToFront, numCompatibleModulesAvailable, numModulesAvailable, purposeOfEmployee, queryChooseModule, refreshBrowser, registerEmployeeNeed, registerEmployeeNeed, replaceCompatibleEmployee, replaceEmployee, replaceEmployeeWithNext, setHiringCommand, setPriorityFixed, setShowHiringPath, whatIsMyPurpose
 
Methods inherited from class mesquite.lib.MenuOwner
addAuxiliaryMenu, addCheckMenuItem, addCheckMenuItemToSubmenu, addItemToSubmenu, addItemToSubmenu, addLineToSubmenu, addMenuItem, addMenuItem, addMenuItem, addMenuLine, addModuleMenuItems, addSubmenu, addSubmenu, addSubmenu, addSubmenu, addSubmenu, checkMISVector, composeMenuBar, decrementMenuResetSuppression, defineMenus, deleteAllMenuItems, deleteMenuItem, destroyMenu, disposeMenuSpecifications, doom, findMenuAmongEmployers, getContainingMenuSpec, getMenu, getMenuItemSpecs, getMenuResetSuppression, getModuleWindow, getUseMenubar, incrementMenuResetSuppression, isDoomed, makeMenu, needsMenu, recomposeWindowsMenu, resetAllMenuBars, resetAllWindowsMenus, resetContainingMenuBar, setMenuResetSuppression, setMenuToUse, setModule, setModuleWindow, setUndoMenuItemEnabled, setUseMenubar, showPopUp, zeroMenuResetSuppression
 
Methods inherited from class java.lang.Object
clone, equals, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

CharModelCurator

public CharModelCurator()
Method Detail

getDutyClass

public java.lang.Class getDutyClass()
Description copied from class: MesquiteModule
Returns duty Class the module belongs to; should be defined not by module itself but by abstract class representing duty

Specified by:
getDutyClass in class MesquiteModule

getDutyName

public java.lang.String getDutyName()
Description copied from class: MesquiteModule
Returns the name of the duty; set by the duty-defining library classes.

Overrides:
getDutyName in class MesquiteModule

getNameOfModelClass

public abstract java.lang.String getNameOfModelClass()
Edit model. Editing must be done in a modal dialog box becuase the results are needed immediately.* public abstract void editModelModal(CharacterModel model); //NOT YET IMPLEMENTED


getNEXUSNameOfModelClass

public abstract java.lang.String getNEXUSNameOfModelClass()

curatesModelClass

public abstract boolean curatesModelClass(java.lang.Class modelClass)

getModelClass

public abstract java.lang.Class getModelClass()

makeNewModel

public abstract CharacterModel makeNewModel(java.lang.String name)
Make new model and return (don't add to file or show to edit)


readCharacterModel

public abstract CharacterModel readCharacterModel(java.lang.String name,
                                                  MesquiteInteger stringPos,
                                                  java.lang.String description,
                                                  int format)

isSubstantive

public boolean isSubstantive()
Description copied from class: MesquiteModule
returns whether this module does substantive calculations affecting analysis results, or only a graphical/UI/input-output module

Overrides:
isSubstantive in class MesquiteModule

endJob

public void endJob()
Description copied from class: MesquiteModule
endJob is called as a module is quitting; modules should put their clean up code here.

Overrides:
endJob in class MesquiteModule

requestPrimaryChoice

public boolean requestPrimaryChoice()
returns whether this module is requesting to appear as a primary choice

Overrides:
requestPrimaryChoice in class MesquiteModule

getWindow

protected MesquiteWindow getWindow(int i)

getWindowHolder

protected MesquiteModule getWindowHolder(int i)

getModel

protected CharacterModel getModel(int i)

getModelNumber

protected int getModelNumber(CharacterModel model)

employeeQuit

public void employeeQuit(MesquiteModule m)
Description copied from class: MesquiteModule
Generated by an employee who quit. The MesquiteModule should act accordingly.

Overrides:
employeeQuit in class MesquiteModule

disposing

public void disposing(java.lang.Object obj)
passes which object was disposed

Specified by:
disposing in interface MesquiteListener
Overrides:
disposing in class MesquiteModule

okToDispose

public boolean okToDispose(java.lang.Object obj,
                           int queryUser)
Asks whether it's ok to delete the object as far as the listener is concerned (e.g., is it in use?)

Specified by:
okToDispose in interface MesquiteListener
Overrides:
okToDispose in class MesquiteModule

disposeModel

public void disposeModel(CharacterModel model)

getSnapshot

public Snapshot getSnapshot(MesquiteFile file)
Description copied from class: MesquiteModule
Return Mesquite commands that will put the module (approximately) back into its current state. Used so that on file save, a Mesquite block can be saved that will return the user more or less to previous state.

Overrides:
getSnapshot in class MesquiteModule

doCommand

public java.lang.Object doCommand(java.lang.String commandName,
                                  java.lang.String arguments,
                                  CommandChecker checker)
Description copied from class: MesquiteModule
A request for the MesquiteModule to perform a command. It is passed two strings, the name of the command and the arguments. This should be overridden by any module that wants to respond to a command.

Specified by:
doCommand in interface Commandable
Overrides:
doCommand in class MesquiteModule

editModelNonModal

public MesquiteModule editModelNonModal(CharacterModel model,
                                        ObjectContainer window)
Edit model. Editing to be done in non-modal window, which is to be returned in the ObjectContainer. Returns the module to whom commands are to be sent (in case WindowServer used). Methods using window holder service should override this


showEditor

public MesquiteModule showEditor(CharacterModel model)
Edit model. Editing to be done in non-modal window. Methods not using window holder service could override this. Returns the module that owns the window produced.