org.sandev.TaskHeap.TaskHeapUI
Class UIActionHandler

java.lang.Object
  extended byorg.sandev.ui.util.UIActionHandlerBase
      extended byorg.sandev.TaskHeap.TaskHeapUI.UIActionHandler

public class UIActionHandler
extends org.sandev.ui.util.UIActionHandlerBase

Handles SandUI actions.


Field Summary
static java.lang.String DAY14COLOR
           
static java.lang.String DAY1COLOR
           
static java.lang.String DAY2COLOR
           
static java.lang.String DAY30COLOR
           
static java.lang.String DAY7COLOR
           
static java.lang.String OLDCOLOR
           
 
Fields inherited from class org.sandev.ui.util.UIActionHandlerBase
classEnum, LOGDEBUG, LOGERROR, LOGINFO, LOGWARN
 
Constructor Summary
UIActionHandler()
           
 
Method Summary
 org.sandev.basics.util.UIFormContext addNoteAction(org.sandev.basics.util.UIFormContext uifc, org.sandev.basics.util.UserWorkLog uwl, org.sandev.basics.util.UIFormOwner owner, org.sandev.basics.util.AuthUser user)
          Change the current instance to be the source of the report and add a new note to it.
 boolean addNoteActive(org.sandev.basics.util.UIFormContext uifc, org.sandev.basics.util.UIFormOwner owner, org.sandev.basics.util.AuthUser user)
          If we are displaying a PlanComponentReport, then we present the option to directly add a new note to the source component.
 org.sandev.basics.util.UIFormContext addPlanButtonAction(org.sandev.basics.util.UIFormContext uifc, org.sandev.basics.util.UserWorkLog uwl, org.sandev.basics.util.UIFormOwner owner, org.sandev.basics.util.AuthUser user)
          Calls through to addPlanComponentAction with componentClass Plan
 boolean addPlanButtonActive(org.sandev.basics.util.UIFormContext uifc, org.sandev.basics.util.UIFormOwner owner, org.sandev.basics.util.AuthUser user)
          Calls through to addPlanComponentActive
 org.sandev.basics.util.UIFormContext addPlanComponentAction(org.sandev.basics.util.UIFormContext uifc, org.sandev.basics.util.UserWorkLog uwl, org.sandev.basics.util.UIFormOwner owner, org.sandev.basics.util.AuthUser user, java.lang.String componentClass)
          Set us up so we are adding a new component to the current Plan.
 boolean addPlanComponentActive(org.sandev.basics.util.UIFormContext uifc, org.sandev.basics.util.UIFormOwner owner, org.sandev.basics.util.AuthUser user)
          If we are displaying a Plan, or the PlanComponent summary of a Plan, then present the option to add a new component reference to it.
 org.sandev.basics.util.UIFormContext addTaskButtonAction(org.sandev.basics.util.UIFormContext uifc, org.sandev.basics.util.UserWorkLog uwl, org.sandev.basics.util.UIFormOwner owner, org.sandev.basics.util.AuthUser user)
          Calls through to addPlanComponentAction with componentClass Task
 boolean addTaskButtonActive(org.sandev.basics.util.UIFormContext uifc, org.sandev.basics.util.UIFormOwner owner, org.sandev.basics.util.AuthUser user)
          Calls through to addPlanComponentActive
 org.sandev.basics.util.UIFormContext applyButtonAction(org.sandev.basics.util.UIFormContext uifc, org.sandev.basics.util.UserWorkLog uwl, org.sandev.basics.util.UIFormOwner owner, org.sandev.basics.util.AuthUser user)
          Synonym for save.
 boolean applyButtonActive(org.sandev.basics.util.UIFormContext uifc, org.sandev.basics.util.UIFormOwner owner, org.sandev.basics.util.AuthUser user)
          Return true if the apply button should be displayed, false otherwise.
 org.sandev.basics.util.UIFormContext componentEditAction(org.sandev.basics.util.UIFormContext uifc, org.sandev.basics.util.UserWorkLog uwl, org.sandev.basics.util.UIFormOwner owner, org.sandev.basics.util.AuthUser user)
          Change the current instance to be the source of the report for editing.
 boolean componentEditActive(org.sandev.basics.util.UIFormContext uifc, org.sandev.basics.util.UIFormOwner owner, org.sandev.basics.util.AuthUser user)
          If we are displaying a PlanComponentReport, then we present the option to switch to editing the source PlanComponent.
 org.sandev.basics.util.UIFormContext componentSummaryAction(org.sandev.basics.util.UIFormContext uifc, org.sandev.basics.util.UserWorkLog uwl, org.sandev.basics.util.UIFormOwner owner, org.sandev.basics.util.AuthUser user)
          Create the summary PlanComponentReport and display it.
 boolean componentSummaryActive(org.sandev.basics.util.UIFormContext uifc, org.sandev.basics.util.UIFormOwner owner, org.sandev.basics.util.AuthUser user)
          If we are listing a PlanComponentStruct derived instance, then we present the option to generate a summary report for it.
protected  java.lang.String computeOutlinePath(Plan plan, org.sandev.basics.util.UIFormOwner owner, org.sandev.basics.util.AuthUser user)
          Return the outline path for the given component or the empty string if it is top level or for any other reason can't be figured out.
 org.sandev.basics.util.UIFormContext confirmChildrenButtonAction(org.sandev.basics.util.UIFormContext uifc, org.sandev.basics.util.UserWorkLog uwl, org.sandev.basics.util.UIFormOwner owner, org.sandev.basics.util.AuthUser user)
          Get all the unnassigned
protected  void confirmChildrenRec(org.sandev.basics.structs.SandPersistMessage spm, org.sandev.basics.util.UIFormOwner owner, org.sandev.basics.util.AuthUser user, org.sandev.basics.util.UserWorkLog uwl)
          Verify that each referenced child has the correct parent reference.
 org.sandev.basics.util.UIFormContext confirmParentsButtonAction(org.sandev.basics.util.UIFormContext uifc, org.sandev.basics.util.UserWorkLog uwl, org.sandev.basics.util.UIFormOwner owner, org.sandev.basics.util.AuthUser user)
          Walk all of the Tasks, Plans, and ExternalPlans checking that each parent reference has the given instance as a child.
 org.sandev.basics.util.UIFormContext defaultButtonAction(org.sandev.basics.util.UIFormContext uifc, org.sandev.basics.util.UserWorkLog uwl, org.sandev.basics.util.UIFormOwner owner, org.sandev.basics.util.AuthUser user)
          Return the DisplayParams to the default values.
 boolean defaultButtonActive(org.sandev.basics.util.UIFormContext uifc, org.sandev.basics.util.UIFormOwner owner, org.sandev.basics.util.AuthUser user)
          Return true if the default button should be displayed, false otherwise.
 org.sandev.basics.util.UIFormContext displayParamsInitAction(org.sandev.basics.util.UIFormContext uifc, org.sandev.basics.util.UserWorkLog uwl, org.sandev.basics.util.UIFormOwner owner, org.sandev.basics.util.AuthUser user)
          Initialize the DisplayParams.
 org.sandev.basics.util.UIFormContext dumpTableFormInitAction(org.sandev.basics.util.UIFormContext uifc, org.sandev.basics.util.UserWorkLog uwl, org.sandev.basics.util.UIFormOwner owner, org.sandev.basics.util.AuthUser user)
          Initialize the dump display.
 org.sandev.basics.util.UIFormContext dumpTasksButtonAction(org.sandev.basics.util.UIFormContext uifc, org.sandev.basics.util.UserWorkLog uwl, org.sandev.basics.util.UIFormOwner owner, org.sandev.basics.util.AuthUser user)
          Switch to the dump screen to show the tasks data as a single table for spreadsheet use.
 boolean dumpTasksButtonActive(org.sandev.basics.util.UIFormContext uifc, org.sandev.basics.util.UIFormOwner owner, org.sandev.basics.util.AuthUser user)
          Return true if the DumpTasksButton should be displayed.
 org.sandev.basics.util.UIFormContext emailLoginAction(org.sandev.basics.util.UIFormContext uifc, org.sandev.basics.util.UserWorkLog uwl, org.sandev.basics.util.UIFormOwner owner, org.sandev.basics.util.AuthUser user)
          Email the login information to the current Reader or Resource.
 boolean emailLoginActive(org.sandev.basics.util.UIFormContext uifc, org.sandev.basics.util.UIFormOwner owner, org.sandev.basics.util.AuthUser user)
          Return true if the EmailLogin button should be displayed, false otherwise.
 org.sandev.basics.util.UIFormContext exportAllButtonAction(org.sandev.basics.util.UIFormContext uifc, org.sandev.basics.util.UserWorkLog uwl, org.sandev.basics.util.UIFormOwner owner, org.sandev.basics.util.AuthUser user)
          Call to export the TaskHeap report and XML dump.
 boolean exportAllButtonActive(org.sandev.basics.util.UIFormContext uifc, org.sandev.basics.util.UIFormOwner owner, org.sandev.basics.util.AuthUser user)
          Return true if there is at least one PlanComponent in the current tree that was modified more recently than the data export file.
 org.sandev.basics.util.UIFormContext exportDataAction(org.sandev.basics.util.UIFormContext uifc, org.sandev.basics.util.UserWorkLog uwl, org.sandev.basics.util.UIFormOwner owner, org.sandev.basics.util.AuthUser user)
          Execute a DataImportExport message writing IMPORTEXPORTFILENAME to the output directory specified by the UIFormOwner.
 org.sandev.basics.util.UIFormContext externalPlansButtonAction(org.sandev.basics.util.UIFormContext uifc, org.sandev.basics.util.UserWorkLog uwl, org.sandev.basics.util.UIFormOwner owner, org.sandev.basics.util.AuthUser user)
          User has pressed the "ExternalPlans" button to init the display with a general ExternalPlanQuery
 org.sandev.basics.util.UIFormContext fetchHoursButtonAction(org.sandev.basics.util.UIFormContext uifc, org.sandev.basics.util.UserWorkLog uwl, org.sandev.basics.util.UIFormOwner owner, org.sandev.basics.util.AuthUser user)
          Fetch the hours for the current ExternalPlan updating the lastModifiedReason with what we did.
 boolean fetchHoursButtonActive(org.sandev.basics.util.UIFormContext uifc, org.sandev.basics.util.UIFormOwner owner, org.sandev.basics.util.AuthUser user)
          Return true if we are working with an ExternalPlan.
protected  ExternalPlan fetchHoursForExternalPlan(org.sandev.basics.util.UIFormContext uifc, org.sandev.basics.util.UserWorkLog uwl, org.sandev.basics.util.UIFormOwner owner, org.sandev.basics.util.AuthUser user, ExternalPlan ep)
          Refresh the hours for the given ExternalPlan, returning the updated version.
 org.sandev.basics.util.UIFormContext filterButtonAction(org.sandev.basics.util.UIFormContext uifc, org.sandev.basics.util.UserWorkLog uwl, org.sandev.basics.util.UIFormOwner owner, org.sandev.basics.util.AuthUser user)
          Synonym for edit.
 boolean filterButtonActive(org.sandev.basics.util.UIFormContext uifc, org.sandev.basics.util.UIFormOwner owner, org.sandev.basics.util.AuthUser user)
          Return true if the filter button should be displayed, false otherwise.
protected  DisplayParams getDisplayParams(org.sandev.basics.util.UIFormContext uifc)
          Return the DisplayParams or null if not found.
protected  PlanTreeElement getTaskHeap(org.sandev.basics.util.UIFormOwner owner, org.sandev.basics.util.AuthUser user, org.sandev.basics.util.UIFormContext uifc)
          Build the top level TaskHeap and return it.
 org.sandev.basics.util.UIFormContext heapAttributesFormInitAction(org.sandev.basics.util.UIFormContext uifc, org.sandev.basics.util.UserWorkLog uwl, org.sandev.basics.util.UIFormOwner owner, org.sandev.basics.util.AuthUser user)
          Init our display with the single HeapAttributes instance.
 org.sandev.basics.util.UIFormContext importDataAction(org.sandev.basics.util.UIFormContext uifc, org.sandev.basics.util.UserWorkLog uwl, org.sandev.basics.util.UIFormOwner owner, org.sandev.basics.util.AuthUser user)
          Execute a DataImportExport message using the previously exported IMPORTEXPORTFILENAME from the output directory as the source.
 boolean isExportUpToDate(org.sandev.basics.util.UIFormOwner owner, org.sandev.basics.util.AuthUser user, PlanTreeElement root)
          Return true if all elements in the given tree were last modified before the current export file was written.
 boolean isTreeUpToDate(PlanTreeElement root, long lastModTime)
          Return true if all elements in the given tree were last modified before the time specified.
protected  boolean isVisible(PlanTreeElement parent, org.sandev.basics.structs.SandPersistMessage spm, DisplayParams dp)
          Return true if the given plan component should be visible, false otherwise.
 org.sandev.basics.util.UIFormContext makeCurrentAction(org.sandev.basics.util.UIFormContext uifc, org.sandev.basics.util.UserWorkLog uwl, org.sandev.basics.util.UIFormOwner owner, org.sandev.basics.util.AuthUser user)
          Set the current plan in the DisplayParams to be the current Plan.
 boolean makeCurrentActive(org.sandev.basics.util.UIFormContext uifc, org.sandev.basics.util.UIFormOwner owner, org.sandev.basics.util.AuthUser user)
          Return true if the MakeCurrent button should be displayed, false otherwise.
 org.sandev.basics.util.UIFormContext masterWBSReportAction(org.sandev.basics.util.UIFormContext uifc, org.sandev.basics.util.UserWorkLog uwl, org.sandev.basics.util.UIFormOwner owner, org.sandev.basics.util.AuthUser user)
          Calls through to myPlansFormInitAction
 org.sandev.basics.util.UIFormContext moveToCurrentAction(org.sandev.basics.util.UIFormContext uifc, org.sandev.basics.util.UserWorkLog uwl, org.sandev.basics.util.UIFormOwner owner, org.sandev.basics.util.AuthUser user)
          Add the plan component we are currently working with to the current plan.
 boolean moveToCurrentActive(org.sandev.basics.util.UIFormContext uifc, org.sandev.basics.util.UIFormOwner owner, org.sandev.basics.util.AuthUser user)
          If we are viewing a component that belongs to a plan other than the one that we have current, then present the option to move it to the current plan.
 org.sandev.basics.util.UIFormContext myPlansFormInitAction(org.sandev.basics.util.UIFormContext uifc, org.sandev.basics.util.UserWorkLog uwl, org.sandev.basics.util.UIFormOwner owner, org.sandev.basics.util.AuthUser user)
          Init our collection display.
 org.sandev.basics.util.UIFormContext plansButtonAction(org.sandev.basics.util.UIFormContext uifc, org.sandev.basics.util.UserWorkLog uwl, org.sandev.basics.util.UIFormOwner owner, org.sandev.basics.util.AuthUser user)
          User has pressed the "plans" button to init the display with a general PlanQuery.
 org.sandev.basics.util.UIFormContext plansFormInitAction(org.sandev.basics.util.UIFormContext uifc, org.sandev.basics.util.UserWorkLog uwl, org.sandev.basics.util.UIFormOwner owner, org.sandev.basics.util.AuthUser user)
          Init our query and result collection.
 org.sandev.basics.util.UIFormContext planWrapAction(org.sandev.basics.util.UIFormContext uifc, org.sandev.basics.util.UserWorkLog uwl, org.sandev.basics.util.UIFormOwner owner, org.sandev.basics.util.AuthUser user)
          Create a new Plan with the current Task name, and place the current Task inside of it with a new name.
 boolean planWrapActive(org.sandev.basics.util.UIFormContext uifc, org.sandev.basics.util.UIFormOwner owner, org.sandev.basics.util.AuthUser user)
          If we are displaying a Task, then we present the option to wrap it into a corresponding Plan.
 org.sandev.basics.util.UIFormContext readersButtonAction(org.sandev.basics.util.UIFormContext uifc, org.sandev.basics.util.UserWorkLog uwl, org.sandev.basics.util.UIFormOwner owner, org.sandev.basics.util.AuthUser user)
          User has pressed the "readers" button to init the display with a general reader query.
 org.sandev.basics.util.UIFormContext readersTabAction(org.sandev.basics.util.UIFormContext uifc, org.sandev.basics.util.UserWorkLog uwl, org.sandev.basics.util.UIFormOwner owner, org.sandev.basics.util.AuthUser user)
          Calls through to readersButtonAction.
 org.sandev.basics.util.UIFormContext rebuildTutorialButtonAction(org.sandev.basics.util.UIFormContext uifc, org.sandev.basics.util.UserWorkLog uwl, org.sandev.basics.util.UIFormOwner owner, org.sandev.basics.util.AuthUser user)
          Rebuild the tutorial plans and tasks.
 boolean rebuildTutorialButtonActive(org.sandev.basics.util.UIFormContext uifc, org.sandev.basics.util.UIFormOwner owner, org.sandev.basics.util.AuthUser user)
          Return true if the RebuildTutorialButton should be displayed, false otehrwise.
 org.sandev.basics.util.UIFormContext recalcAction(org.sandev.basics.util.UIFormContext uifc, org.sandev.basics.util.UserWorkLog uwl, org.sandev.basics.util.UIFormOwner owner, org.sandev.basics.util.AuthUser user)
          Do the recalc.
 boolean recalcActive(org.sandev.basics.util.UIFormContext uifc, org.sandev.basics.util.UIFormOwner owner, org.sandev.basics.util.AuthUser user)
          Return true if the recalc button should be displayed, false otherwise.
protected  void refreshExternalPlans(org.sandev.basics.util.UIFormContext uifc, org.sandev.basics.util.UserWorkLog uwl, org.sandev.basics.util.UIFormOwner owner, org.sandev.basics.util.AuthUser user)
          Fetch the data for all cached ExternalPlans that are beyond the allowable latency set in the HeapAttributes.
 org.sandev.basics.util.UIFormContext resourcesButtonAction(org.sandev.basics.util.UIFormContext uifc, org.sandev.basics.util.UserWorkLog uwl, org.sandev.basics.util.UIFormOwner owner, org.sandev.basics.util.AuthUser user)
          User has pressed the "resources" button to init the display with a general resource query.
 org.sandev.basics.util.UIFormContext resourcesFormInitAction(org.sandev.basics.util.UIFormContext uifc, org.sandev.basics.util.UserWorkLog uwl, org.sandev.basics.util.UIFormOwner owner, org.sandev.basics.util.AuthUser user)
          Init our query and result collection.
 org.sandev.basics.util.UIFormContext resourcesTabAction(org.sandev.basics.util.UIFormContext uifc, org.sandev.basics.util.UserWorkLog uwl, org.sandev.basics.util.UIFormOwner owner, org.sandev.basics.util.AuthUser user)
          Calls through to resourcesButtonAction
protected  org.sandev.basics.structs.SandPersistMessage safeGetInstance(org.sandev.basics.util.UIFormOwner owner, java.lang.String instClass, long uniqueID, org.sandev.basics.util.AuthUser user)
          Return the instance or null if anything happens.
protected  void setOutlineDisplayFields(PlanTreeElement pte, org.sandev.basics.util.IntReference lineNumber, java.lang.String drillpath)
          Factored method for setting some of the outline display values.
 org.sandev.basics.util.UIFormContext taskHeapMailButtonAction(org.sandev.basics.util.UIFormContext uifc, org.sandev.basics.util.UserWorkLog uwl, org.sandev.basics.util.UIFormOwner owner, org.sandev.basics.util.AuthUser user)
          Write out the entire TaskHeap into a report file suitable for offline reference.
 boolean taskHeapMailButtonActive(org.sandev.basics.util.UIFormContext uifc, org.sandev.basics.util.UIFormOwner owner, org.sandev.basics.util.AuthUser user)
          Return true if the mail heap button should be displayed
 org.sandev.basics.util.UIFormContext taskHeapReportButtonAction(org.sandev.basics.util.UIFormContext uifc, org.sandev.basics.util.UserWorkLog uwl, org.sandev.basics.util.UIFormOwner owner, org.sandev.basics.util.AuthUser user)
          Write out the entire TaskHeap into a report file suitable for offline reference.
 org.sandev.basics.util.UIFormContext taskPhasesButtonAction(org.sandev.basics.util.UIFormContext uifc, org.sandev.basics.util.UserWorkLog uwl, org.sandev.basics.util.UIFormOwner owner, org.sandev.basics.util.AuthUser user)
          User has pressed the "TaskPhases" button to init the display with a general TaskPhaseQuery
 org.sandev.basics.util.UIFormContext tasksButtonAction(org.sandev.basics.util.UIFormContext uifc, org.sandev.basics.util.UserWorkLog uwl, org.sandev.basics.util.UIFormOwner owner, org.sandev.basics.util.AuthUser user)
          User has pressed the "Tasks" button to init the display with a general TaskQuery.
 org.sandev.basics.util.UIFormContext tasksFormInitAction(org.sandev.basics.util.UIFormContext uifc, org.sandev.basics.util.UserWorkLog uwl, org.sandev.basics.util.UIFormOwner owner, org.sandev.basics.util.AuthUser user)
          Init our query and result collection.
 org.sandev.basics.util.UIFormContext taskTypesButtonAction(org.sandev.basics.util.UIFormContext uifc, org.sandev.basics.util.UserWorkLog uwl, org.sandev.basics.util.UIFormOwner owner, org.sandev.basics.util.AuthUser user)
          User has pressed the "TaskTypes" button to init the display with a general TaskTypeQuery
protected  PlanTreeElement treeElementForComponent(org.sandev.basics.structs.SandPersistMessage spm, PlanTreeElement parent, int childIndex, org.sandev.basics.util.IntReference lineNumber, org.sandev.basics.util.IntReference currPlanMark, org.sandev.basics.util.UIFormOwner owner, org.sandev.basics.util.AuthUser user, HeapAttributes ha, ElapsedTimeCalendar cal, DisplayParams dp, java.lang.String drillpath)
          Return a new PlanTreeElement for the given PlanComponentStruct.
protected  org.sandev.basics.structs.SandPersistMessage wrappedGetInstance(org.sandev.basics.util.UIFormOwner owner, java.lang.String instClass, long uniqueID, org.sandev.basics.util.AuthUser user)
          Return the requested instance or null if it cannot be found or if anything goes wrong.
 
Methods inherited from class org.sandev.ui.util.UIActionHandlerBase
getClassEnum, getSpecifiedInstance, hasClassQueryAccess, initCollectionDisplay, refreshGlobalDataAction, resetContextToCollection, setClassEnum, setContextFromQuery
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

DAY1COLOR

public static final java.lang.String DAY1COLOR
See Also:
Constant Field Values

DAY2COLOR

public static final java.lang.String DAY2COLOR
See Also:
Constant Field Values

DAY7COLOR

public static final java.lang.String DAY7COLOR
See Also:
Constant Field Values

DAY14COLOR

public static final java.lang.String DAY14COLOR
See Also:
Constant Field Values

DAY30COLOR

public static final java.lang.String DAY30COLOR
See Also:
Constant Field Values

OLDCOLOR

public static final java.lang.String OLDCOLOR
See Also:
Constant Field Values
Constructor Detail

UIActionHandler

public UIActionHandler()
Method Detail

wrappedGetInstance

protected org.sandev.basics.structs.SandPersistMessage wrappedGetInstance(org.sandev.basics.util.UIFormOwner owner,
                                                                          java.lang.String instClass,
                                                                          long uniqueID,
                                                                          org.sandev.basics.util.AuthUser user)
                                                                   throws org.sandev.basics.util.UIFormManagerException
Return the requested instance or null if it cannot be found or if anything goes wrong. Rewraps all SandExceptions as UIFormManagerExceptions

Throws:
org.sandev.basics.util.UIFormManagerException

safeGetInstance

protected org.sandev.basics.structs.SandPersistMessage safeGetInstance(org.sandev.basics.util.UIFormOwner owner,
                                                                       java.lang.String instClass,
                                                                       long uniqueID,
                                                                       org.sandev.basics.util.AuthUser user)
Return the instance or null if anything happens. Eats all SandExceptions.


importDataAction

public org.sandev.basics.util.UIFormContext importDataAction(org.sandev.basics.util.UIFormContext uifc,
                                                             org.sandev.basics.util.UserWorkLog uwl,
                                                             org.sandev.basics.util.UIFormOwner owner,
                                                             org.sandev.basics.util.AuthUser user)
                                                      throws org.sandev.basics.util.UIFormManagerException
Execute a DataImportExport message using the previously exported IMPORTEXPORTFILENAME from the output directory as the source. Use the RESTORE action to preserve the lastUpdateTimes of the imported data.

Throws:
org.sandev.basics.util.UIFormManagerException

exportDataAction

public org.sandev.basics.util.UIFormContext exportDataAction(org.sandev.basics.util.UIFormContext uifc,
                                                             org.sandev.basics.util.UserWorkLog uwl,
                                                             org.sandev.basics.util.UIFormOwner owner,
                                                             org.sandev.basics.util.AuthUser user)
                                                      throws org.sandev.basics.util.UIFormManagerException
Execute a DataImportExport message writing IMPORTEXPORTFILENAME to the output directory specified by the UIFormOwner. Note that we must dump the Resource records first, so that on import they are loaded before the Readers. The import will load each Resource first as a Resource, and then as a Reader. Because the Reader information is the same as the Resource information, the second load will simply be skipped.

Throws:
org.sandev.basics.util.UIFormManagerException

confirmChildrenButtonAction

public org.sandev.basics.util.UIFormContext confirmChildrenButtonAction(org.sandev.basics.util.UIFormContext uifc,
                                                                        org.sandev.basics.util.UserWorkLog uwl,
                                                                        org.sandev.basics.util.UIFormOwner owner,
                                                                        org.sandev.basics.util.AuthUser user)
                                                                 throws org.sandev.basics.util.UIFormManagerException
Get all the unnassigned

Throws:
org.sandev.basics.util.UIFormManagerException

confirmChildrenRec

protected void confirmChildrenRec(org.sandev.basics.structs.SandPersistMessage spm,
                                  org.sandev.basics.util.UIFormOwner owner,
                                  org.sandev.basics.util.AuthUser user,
                                  org.sandev.basics.util.UserWorkLog uwl)
                           throws org.sandev.basics.structs.SandException
Verify that each referenced child has the correct parent reference. If the child is a Plan, then check each of its children via recursive call.

Throws:
org.sandev.basics.structs.SandException

confirmParentsButtonAction

public org.sandev.basics.util.UIFormContext confirmParentsButtonAction(org.sandev.basics.util.UIFormContext uifc,
                                                                       org.sandev.basics.util.UserWorkLog uwl,
                                                                       org.sandev.basics.util.UIFormOwner owner,
                                                                       org.sandev.basics.util.AuthUser user)
                                                                throws org.sandev.basics.util.UIFormManagerException
Walk all of the Tasks, Plans, and ExternalPlans checking that each parent reference has the given instance as a child.

Throws:
org.sandev.basics.util.UIFormManagerException

rebuildTutorialButtonActive

public boolean rebuildTutorialButtonActive(org.sandev.basics.util.UIFormContext uifc,
                                           org.sandev.basics.util.UIFormOwner owner,
                                           org.sandev.basics.util.AuthUser user)
Return true if the RebuildTutorialButton should be displayed, false otehrwise. This button is only active for the demo deplyment.


rebuildTutorialButtonAction

public org.sandev.basics.util.UIFormContext rebuildTutorialButtonAction(org.sandev.basics.util.UIFormContext uifc,
                                                                        org.sandev.basics.util.UserWorkLog uwl,
                                                                        org.sandev.basics.util.UIFormOwner owner,
                                                                        org.sandev.basics.util.AuthUser user)
                                                                 throws org.sandev.basics.util.UIFormManagerException
Rebuild the tutorial plans and tasks.

Throws:
org.sandev.basics.util.UIFormManagerException

displayParamsInitAction

public org.sandev.basics.util.UIFormContext displayParamsInitAction(org.sandev.basics.util.UIFormContext uifc,
                                                                    org.sandev.basics.util.UserWorkLog uwl,
                                                                    org.sandev.basics.util.UIFormOwner owner,
                                                                    org.sandev.basics.util.AuthUser user)
                                                             throws org.sandev.basics.util.UIFormManagerException
Initialize the DisplayParams.

Throws:
org.sandev.basics.util.UIFormManagerException

filterButtonActive

public boolean filterButtonActive(org.sandev.basics.util.UIFormContext uifc,
                                  org.sandev.basics.util.UIFormOwner owner,
                                  org.sandev.basics.util.AuthUser user)
Return true if the filter button should be displayed, false otherwise.


filterButtonAction

public org.sandev.basics.util.UIFormContext filterButtonAction(org.sandev.basics.util.UIFormContext uifc,
                                                               org.sandev.basics.util.UserWorkLog uwl,
                                                               org.sandev.basics.util.UIFormOwner owner,
                                                               org.sandev.basics.util.AuthUser user)
                                                        throws org.sandev.basics.util.UIFormManagerException
Synonym for edit. Sets the action to be edit and falls through to the standard processing.

Throws:
org.sandev.basics.util.UIFormManagerException

applyButtonActive

public boolean applyButtonActive(org.sandev.basics.util.UIFormContext uifc,
                                 org.sandev.basics.util.UIFormOwner owner,
                                 org.sandev.basics.util.AuthUser user)
Return true if the apply button should be displayed, false otherwise.


applyButtonAction

public org.sandev.basics.util.UIFormContext applyButtonAction(org.sandev.basics.util.UIFormContext uifc,
                                                              org.sandev.basics.util.UserWorkLog uwl,
                                                              org.sandev.basics.util.UIFormOwner owner,
                                                              org.sandev.basics.util.AuthUser user)
                                                       throws org.sandev.basics.util.UIFormManagerException
Synonym for save. Sets the action to be save and falls through to the standard processing.

Throws:
org.sandev.basics.util.UIFormManagerException

defaultButtonActive

public boolean defaultButtonActive(org.sandev.basics.util.UIFormContext uifc,
                                   org.sandev.basics.util.UIFormOwner owner,
                                   org.sandev.basics.util.AuthUser user)
Return true if the default button should be displayed, false otherwise.


defaultButtonAction

public org.sandev.basics.util.UIFormContext defaultButtonAction(org.sandev.basics.util.UIFormContext uifc,
                                                                org.sandev.basics.util.UserWorkLog uwl,
                                                                org.sandev.basics.util.UIFormOwner owner,
                                                                org.sandev.basics.util.AuthUser user)
                                                         throws org.sandev.basics.util.UIFormManagerException
Return the DisplayParams to the default values. We do this by nuking the current DisplayParams and letting the initialization action reconstitute it.

Throws:
org.sandev.basics.util.UIFormManagerException

masterWBSReportAction

public org.sandev.basics.util.UIFormContext masterWBSReportAction(org.sandev.basics.util.UIFormContext uifc,
                                                                  org.sandev.basics.util.UserWorkLog uwl,
                                                                  org.sandev.basics.util.UIFormOwner owner,
                                                                  org.sandev.basics.util.AuthUser user)
                                                           throws org.sandev.basics.util.UIFormManagerException
Calls through to myPlansFormInitAction

Throws:
org.sandev.basics.util.UIFormManagerException

myPlansFormInitAction

public org.sandev.basics.util.UIFormContext myPlansFormInitAction(org.sandev.basics.util.UIFormContext uifc,
                                                                  org.sandev.basics.util.UserWorkLog uwl,
                                                                  org.sandev.basics.util.UIFormOwner owner,
                                                                  org.sandev.basics.util.AuthUser user)
                                                           throws org.sandev.basics.util.UIFormManagerException
Init our collection display. We leave the findQuery empty so that a subsequent call to FIND works. The UIFormContext is modified directly from its current values, rather than starting with a new copy, so existing context is preserved.

To support automatic refresh of ExternalPlan data, we check the latency of each ExternalPlan we have cached and do any fetch processing before getting the heap tree for display.

Throws:
org.sandev.basics.util.UIFormManagerException

getTaskHeap

protected PlanTreeElement getTaskHeap(org.sandev.basics.util.UIFormOwner owner,
                                      org.sandev.basics.util.AuthUser user,
                                      org.sandev.basics.util.UIFormContext uifc)
                               throws org.sandev.basics.structs.SandException
Build the top level TaskHeap and return it. This is a single PlanTreeElement whose children are all the PlanComponents with no parent. Each of the top level children is itself a tree of all of its child references recursively.

This method relies on owner.getInstance returning the actual Plan, ExternalPlan or Task instance when a class "PlanComponent" is requested.

Throws:
org.sandev.basics.structs.SandException

getDisplayParams

protected DisplayParams getDisplayParams(org.sandev.basics.util.UIFormContext uifc)
Return the DisplayParams or null if not found. The DisplayParams are part of the main screen.


isVisible

protected boolean isVisible(PlanTreeElement parent,
                            org.sandev.basics.structs.SandPersistMessage spm,
                            DisplayParams dp)
Return true if the given plan component should be visible, false otherwise. If dp is null, then a new DisplayParams object is allocated for use.


treeElementForComponent

protected PlanTreeElement treeElementForComponent(org.sandev.basics.structs.SandPersistMessage spm,
                                                  PlanTreeElement parent,
                                                  int childIndex,
                                                  org.sandev.basics.util.IntReference lineNumber,
                                                  org.sandev.basics.util.IntReference currPlanMark,
                                                  org.sandev.basics.util.UIFormOwner owner,
                                                  org.sandev.basics.util.AuthUser user,
                                                  HeapAttributes ha,
                                                  ElapsedTimeCalendar cal,
                                                  DisplayParams dp,
                                                  java.lang.String drillpath)
                                           throws org.sandev.basics.structs.SandException
Return a new PlanTreeElement for the given PlanComponentStruct. The given instance is a Plan, ExternalPlan, or Task. The childIndex is zero-based (standard array index semantics), which is translated into the outlinePath semantics which are one-based (standard paragraph indenting semantics).

Throws:
org.sandev.basics.structs.SandException

setOutlineDisplayFields

protected void setOutlineDisplayFields(PlanTreeElement pte,
                                       org.sandev.basics.util.IntReference lineNumber,
                                       java.lang.String drillpath)
Factored method for setting some of the outline display values.


computeOutlinePath

protected java.lang.String computeOutlinePath(Plan plan,
                                              org.sandev.basics.util.UIFormOwner owner,
                                              org.sandev.basics.util.AuthUser user)
                                       throws org.sandev.basics.structs.SandException
Return the outline path for the given component or the empty string if it is top level or for any other reason can't be figured out. Ordinarily the outline path is accumulated based on the depth-first traversal of the tree. But if we set a new root, then we need to figure this out from the bottom up rather than the top down to get a value to initialize the remaining traversal with.

Throws:
org.sandev.basics.structs.SandException

makeCurrentActive

public boolean makeCurrentActive(org.sandev.basics.util.UIFormContext uifc,
                                 org.sandev.basics.util.UIFormOwner owner,
                                 org.sandev.basics.util.AuthUser user)
Return true if the MakeCurrent button should be displayed, false otherwise. The button is available only when we are displaying a Plan which is not the current Plan.


makeCurrentAction

public org.sandev.basics.util.UIFormContext makeCurrentAction(org.sandev.basics.util.UIFormContext uifc,
                                                              org.sandev.basics.util.UserWorkLog uwl,
                                                              org.sandev.basics.util.UIFormOwner owner,
                                                              org.sandev.basics.util.AuthUser user)
                                                       throws org.sandev.basics.util.UIFormManagerException
Set the current plan in the DisplayParams to be the current Plan.

Throws:
org.sandev.basics.util.UIFormManagerException

recalcActive

public boolean recalcActive(org.sandev.basics.util.UIFormContext uifc,
                            org.sandev.basics.util.UIFormOwner owner,
                            org.sandev.basics.util.AuthUser user)
Return true if the recalc button should be displayed, false otherwise. Basically the recalc button changes the value of the timeEstimate, which the user might then want to save. So it should only be available while we are editing a Plan. It's possible we could also recalc while adding a Plan if demand dictates.


recalcAction

public org.sandev.basics.util.UIFormContext recalcAction(org.sandev.basics.util.UIFormContext uifc,
                                                         org.sandev.basics.util.UserWorkLog uwl,
                                                         org.sandev.basics.util.UIFormOwner owner,
                                                         org.sandev.basics.util.AuthUser user)
                                                  throws org.sandev.basics.util.UIFormManagerException
Do the recalc. We modify the timeEstimate of the currInst we are editing, calling TaskHeapUINode to do the work.

Throws:
org.sandev.basics.util.UIFormManagerException

heapAttributesFormInitAction

public org.sandev.basics.util.UIFormContext heapAttributesFormInitAction(org.sandev.basics.util.UIFormContext uifc,
                                                                         org.sandev.basics.util.UserWorkLog uwl,
                                                                         org.sandev.basics.util.UIFormOwner owner,
                                                                         org.sandev.basics.util.AuthUser user)
                                                                  throws org.sandev.basics.util.UIFormManagerException
Init our display with the single HeapAttributes instance.

Throws:
org.sandev.basics.util.UIFormManagerException

resourcesFormInitAction

public org.sandev.basics.util.UIFormContext resourcesFormInitAction(org.sandev.basics.util.UIFormContext uifc,
                                                                    org.sandev.basics.util.UserWorkLog uwl,
                                                                    org.sandev.basics.util.UIFormOwner owner,
                                                                    org.sandev.basics.util.AuthUser user)
                                                             throws org.sandev.basics.util.UIFormManagerException
Init our query and result collection. We modify the form context directly and then return it rather than making a copy.

Throws:
org.sandev.basics.util.UIFormManagerException

resourcesButtonAction

public org.sandev.basics.util.UIFormContext resourcesButtonAction(org.sandev.basics.util.UIFormContext uifc,
                                                                  org.sandev.basics.util.UserWorkLog uwl,
                                                                  org.sandev.basics.util.UIFormOwner owner,
                                                                  org.sandev.basics.util.AuthUser user)
                                                           throws org.sandev.basics.util.UIFormManagerException
User has pressed the "resources" button to init the display with a general resource query.

Throws:
org.sandev.basics.util.UIFormManagerException

resourcesTabAction

public org.sandev.basics.util.UIFormContext resourcesTabAction(org.sandev.basics.util.UIFormContext uifc,
                                                               org.sandev.basics.util.UserWorkLog uwl,
                                                               org.sandev.basics.util.UIFormOwner owner,
                                                               org.sandev.basics.util.AuthUser user)
                                                        throws org.sandev.basics.util.UIFormManagerException
Calls through to resourcesButtonAction

Throws:
org.sandev.basics.util.UIFormManagerException

readersButtonAction

public org.sandev.basics.util.UIFormContext readersButtonAction(org.sandev.basics.util.UIFormContext uifc,
                                                                org.sandev.basics.util.UserWorkLog uwl,
                                                                org.sandev.basics.util.UIFormOwner owner,
                                                                org.sandev.basics.util.AuthUser user)
                                                         throws org.sandev.basics.util.UIFormManagerException
User has pressed the "readers" button to init the display with a general reader query.

Throws:
org.sandev.basics.util.UIFormManagerException

readersTabAction

public org.sandev.basics.util.UIFormContext readersTabAction(org.sandev.basics.util.UIFormContext uifc,
                                                             org.sandev.basics.util.UserWorkLog uwl,
                                                             org.sandev.basics.util.UIFormOwner owner,
                                                             org.sandev.basics.util.AuthUser user)
                                                      throws org.sandev.basics.util.UIFormManagerException
Calls through to readersButtonAction.

Throws:
org.sandev.basics.util.UIFormManagerException

emailLoginActive

public boolean emailLoginActive(org.sandev.basics.util.UIFormContext uifc,
                                org.sandev.basics.util.UIFormOwner owner,
                                org.sandev.basics.util.AuthUser user)
Return true if the EmailLogin button should be displayed, false otherwise.


emailLoginAction

public org.sandev.basics.util.UIFormContext emailLoginAction(org.sandev.basics.util.UIFormContext uifc,
                                                             org.sandev.basics.util.UserWorkLog uwl,
                                                             org.sandev.basics.util.UIFormOwner owner,
                                                             org.sandev.basics.util.AuthUser user)
                                                      throws org.sandev.basics.util.UIFormManagerException
Email the login information to the current Reader or Resource.

Throws:
org.sandev.basics.util.UIFormManagerException

plansFormInitAction

public org.sandev.basics.util.UIFormContext plansFormInitAction(org.sandev.basics.util.UIFormContext uifc,
                                                                org.sandev.basics.util.UserWorkLog uwl,
                                                                org.sandev.basics.util.UIFormOwner owner,
                                                                org.sandev.basics.util.AuthUser user)
                                                         throws org.sandev.basics.util.UIFormManagerException
Init our query and result collection. We modify the form context directly and then return it rather than making a copy.

Throws:
org.sandev.basics.util.UIFormManagerException

plansButtonAction

public org.sandev.basics.util.UIFormContext plansButtonAction(org.sandev.basics.util.UIFormContext uifc,
                                                              org.sandev.basics.util.UserWorkLog uwl,
                                                              org.sandev.basics.util.UIFormOwner owner,
                                                              org.sandev.basics.util.AuthUser user)
                                                       throws org.sandev.basics.util.UIFormManagerException
User has pressed the "plans" button to init the display with a general PlanQuery.

Throws:
org.sandev.basics.util.UIFormManagerException

externalPlansButtonAction

public org.sandev.basics.util.UIFormContext externalPlansButtonAction(org.sandev.basics.util.UIFormContext uifc,
                                                                      org.sandev.basics.util.UserWorkLog uwl,
                                                                      org.sandev.basics.util.UIFormOwner owner,
                                                                      org.sandev.basics.util.AuthUser user)
                                                               throws org.sandev.basics.util.UIFormManagerException
User has pressed the "ExternalPlans" button to init the display with a general ExternalPlanQuery

Throws:
org.sandev.basics.util.UIFormManagerException

tasksFormInitAction

public org.sandev.basics.util.UIFormContext tasksFormInitAction(org.sandev.basics.util.UIFormContext uifc,
                                                                org.sandev.basics.util.UserWorkLog uwl,
                                                                org.sandev.basics.util.UIFormOwner owner,
                                                                org.sandev.basics.util.AuthUser user)
                                                         throws org.sandev.basics.util.UIFormManagerException
Init our query and result collection. We modify the form context directly and then return it rather than making a copy.

Throws:
org.sandev.basics.util.UIFormManagerException

tasksButtonAction

public org.sandev.basics.util.UIFormContext tasksButtonAction(org.sandev.basics.util.UIFormContext uifc,
                                                              org.sandev.basics.util.UserWorkLog uwl,
                                                              org.sandev.basics.util.UIFormOwner owner,
                                                              org.sandev.basics.util.AuthUser user)
                                                       throws org.sandev.basics.util.UIFormManagerException
User has pressed the "Tasks" button to init the display with a general TaskQuery.

Throws:
org.sandev.basics.util.UIFormManagerException

taskTypesButtonAction

public org.sandev.basics.util.UIFormContext taskTypesButtonAction(org.sandev.basics.util.UIFormContext uifc,
                                                                  org.sandev.basics.util.UserWorkLog uwl,
                                                                  org.sandev.basics.util.UIFormOwner owner,
                                                                  org.sandev.basics.util.AuthUser user)
                                                           throws org.sandev.basics.util.UIFormManagerException
User has pressed the "TaskTypes" button to init the display with a general TaskTypeQuery

Throws:
org.sandev.basics.util.UIFormManagerException

taskPhasesButtonAction

public org.sandev.basics.util.UIFormContext taskPhasesButtonAction(org.sandev.basics.util.UIFormContext uifc,
                                                                   org.sandev.basics.util.UserWorkLog uwl,
                                                                   org.sandev.basics.util.UIFormOwner owner,
                                                                   org.sandev.basics.util.AuthUser user)
                                                            throws org.sandev.basics.util.UIFormManagerException
User has pressed the "TaskPhases" button to init the display with a general TaskPhaseQuery

Throws:
org.sandev.basics.util.UIFormManagerException

componentSummaryActive

public boolean componentSummaryActive(org.sandev.basics.util.UIFormContext uifc,
                                      org.sandev.basics.util.UIFormOwner owner,
                                      org.sandev.basics.util.AuthUser user)
If we are listing a PlanComponentStruct derived instance, then we present the option to generate a summary report for it.


componentSummaryAction

public org.sandev.basics.util.UIFormContext componentSummaryAction(org.sandev.basics.util.UIFormContext uifc,
                                                                   org.sandev.basics.util.UserWorkLog uwl,
                                                                   org.sandev.basics.util.UIFormOwner owner,
                                                                   org.sandev.basics.util.AuthUser user)
                                                            throws org.sandev.basics.util.UIFormManagerException
Create the summary PlanComponentReport and display it. We set the currClass and currInst to the generated instance.

Throws:
org.sandev.basics.util.UIFormManagerException

addNoteActive

public boolean addNoteActive(org.sandev.basics.util.UIFormContext uifc,
                             org.sandev.basics.util.UIFormOwner owner,
                             org.sandev.basics.util.AuthUser user)
If we are displaying a PlanComponentReport, then we present the option to directly add a new note to the source component.


addNoteAction

public org.sandev.basics.util.UIFormContext addNoteAction(org.sandev.basics.util.UIFormContext uifc,
                                                          org.sandev.basics.util.UserWorkLog uwl,
                                                          org.sandev.basics.util.UIFormOwner owner,
                                                          org.sandev.basics.util.AuthUser user)
                                                   throws org.sandev.basics.util.UIFormManagerException
Change the current instance to be the source of the report and add a new note to it. This is shorthand for clicking to edit the component, and then clicking add next to the notes field.

If they cancel out of adding the note, they are returned to the component in edit mode, and the lastModifiedReason is not cleared out like it would be if they went directly into edit. Clearing this out would have to be done as part of cancel processing. Doesn't seem worth the effort.

Throws:
org.sandev.basics.util.UIFormManagerException

componentEditActive

public boolean componentEditActive(org.sandev.basics.util.UIFormContext uifc,
                                   org.sandev.basics.util.UIFormOwner owner,
                                   org.sandev.basics.util.AuthUser user)
If we are displaying a PlanComponentReport, then we present the option to switch to editing the source PlanComponent.


componentEditAction

public org.sandev.basics.util.UIFormContext componentEditAction(org.sandev.basics.util.UIFormContext uifc,
                                                                org.sandev.basics.util.UserWorkLog uwl,
                                                                org.sandev.basics.util.UIFormOwner owner,
                                                                org.sandev.basics.util.AuthUser user)
                                                         throws org.sandev.basics.util.UIFormManagerException
Change the current instance to be the source of the report for editing.

Throws:
org.sandev.basics.util.UIFormManagerException

moveToCurrentActive

public boolean moveToCurrentActive(org.sandev.basics.util.UIFormContext uifc,
                                   org.sandev.basics.util.UIFormOwner owner,
                                   org.sandev.basics.util.AuthUser user)
If we are viewing a component that belongs to a plan other than the one that we have current, then present the option to move it to the current plan.


moveToCurrentAction

public org.sandev.basics.util.UIFormContext moveToCurrentAction(org.sandev.basics.util.UIFormContext uifc,
                                                                org.sandev.basics.util.UserWorkLog uwl,
                                                                org.sandev.basics.util.UIFormOwner owner,
                                                                org.sandev.basics.util.AuthUser user)
                                                         throws org.sandev.basics.util.UIFormManagerException
Add the plan component we are currently working with to the current plan. The bookkeeping of removing the old references and updating the counts is handled by the update processing.

Throws:
org.sandev.basics.util.UIFormManagerException

addPlanComponentActive

public boolean addPlanComponentActive(org.sandev.basics.util.UIFormContext uifc,
                                      org.sandev.basics.util.UIFormOwner owner,
                                      org.sandev.basics.util.AuthUser user)
If we are displaying a Plan, or the PlanComponent summary of a Plan, then present the option to add a new component reference to it. This is especially important when first viewing the PlanComponent summary, since it is not intuitive for users to first click "edit" and then click "new". And having this shorthand method definitely helps reduce keyclicks in general.


addTaskButtonActive

public boolean addTaskButtonActive(org.sandev.basics.util.UIFormContext uifc,
                                   org.sandev.basics.util.UIFormOwner owner,
                                   org.sandev.basics.util.AuthUser user)
Calls through to addPlanComponentActive


addPlanButtonActive

public boolean addPlanButtonActive(org.sandev.basics.util.UIFormContext uifc,
                                   org.sandev.basics.util.UIFormOwner owner,
                                   org.sandev.basics.util.AuthUser user)
Calls through to addPlanComponentActive


addPlanComponentAction

public org.sandev.basics.util.UIFormContext addPlanComponentAction(org.sandev.basics.util.UIFormContext uifc,
                                                                   org.sandev.basics.util.UserWorkLog uwl,
                                                                   org.sandev.basics.util.UIFormOwner owner,
                                                                   org.sandev.basics.util.AuthUser user,
                                                                   java.lang.String componentClass)
                                                            throws org.sandev.basics.util.UIFormManagerException
Set us up so we are adding a new component to the current Plan. We are currently dealing with a Plan or PlanComponentReport for a Plan.

This method relies on the SandUIAdaptor (e.g. XHTMLSandUIServlet cascading custom action calls, so when we set the action in the UIFormContext to be ACTION_NEW, the UIFormManager will pick up on that fact and do the processing.

Throws:
org.sandev.basics.util.UIFormManagerException

addTaskButtonAction

public org.sandev.basics.util.UIFormContext addTaskButtonAction(org.sandev.basics.util.UIFormContext uifc,
                                                                org.sandev.basics.util.UserWorkLog uwl,
                                                                org.sandev.basics.util.UIFormOwner owner,
                                                                org.sandev.basics.util.AuthUser user)
                                                         throws org.sandev.basics.util.UIFormManagerException
Calls through to addPlanComponentAction with componentClass Task

Throws:
org.sandev.basics.util.UIFormManagerException

addPlanButtonAction

public org.sandev.basics.util.UIFormContext addPlanButtonAction(org.sandev.basics.util.UIFormContext uifc,
                                                                org.sandev.basics.util.UserWorkLog uwl,
                                                                org.sandev.basics.util.UIFormOwner owner,
                                                                org.sandev.basics.util.AuthUser user)
                                                         throws org.sandev.basics.util.UIFormManagerException
Calls through to addPlanComponentAction with componentClass Plan

Throws:
org.sandev.basics.util.UIFormManagerException

planWrapActive

public boolean planWrapActive(org.sandev.basics.util.UIFormContext uifc,
                              org.sandev.basics.util.UIFormOwner owner,
                              org.sandev.basics.util.AuthUser user)
If we are displaying a Task, then we present the option to wrap it into a corresponding Plan. When first creating a TaskHeap, you enter large tasks. When its time to start breaking down the work, you convert these tasks to plans so you can specify the subtasks. This button automates that work for you.


planWrapAction

public org.sandev.basics.util.UIFormContext planWrapAction(org.sandev.basics.util.UIFormContext uifc,
                                                           org.sandev.basics.util.UserWorkLog uwl,
                                                           org.sandev.basics.util.UIFormOwner owner,
                                                           org.sandev.basics.util.AuthUser user)
                                                    throws org.sandev.basics.util.UIFormManagerException
Create a new Plan with the current Task name, and place the current Task inside of it with a new name.

Throws:
org.sandev.basics.util.UIFormManagerException

exportAllButtonActive

public boolean exportAllButtonActive(org.sandev.basics.util.UIFormContext uifc,
                                     org.sandev.basics.util.UIFormOwner owner,
                                     org.sandev.basics.util.AuthUser user)
Return true if there is at least one PlanComponent in the current tree that was modified more recently than the data export file.


isExportUpToDate