use of edu.cmu.cs.hcii.cogtool.ui.TaskSelectionState in project cogtool by cogtool.
the class ProjectController method createNewTaskGroupAction.
// createNewTaskUndo
// Action for NewTaskGroup
protected IListenerAction createNewTaskGroupAction() {
return new IListenerAction() {
public Class<?> getParameterClass() {
return TaskSelectionState.class;
}
public boolean performAction(Object prms) {
TaskSelectionState selection = (TaskSelectionState) prms;
// Figure out what the selection is
AUndertaking[] selectedTasks = selection.getSelectedTasks(TaskSelectionState.PRUNE_SELECTION | TaskSelectionState.ORDER_SELECTION);
TaskGroup newGroup = null;
if ((selectedTasks == null) || (selectedTasks.length == 0)) {
String newGroupName = computeNewTaskName(project, DEFAULT_TASK_GROUP_PREFIX);
// No task selection -- add a new root task group
newGroup = addTaskGroup(project, project.getUndertakings().size(), newGroupName, selectedTasks);
} else {
// One selected task: create new group at selected position
// Multiple selected tasks:
// if all tasks have same parent,
// create new group after last selection
// if tasks do not have same parent,
// add new root group after last selected root
// but, if no selected root, new root at end
// Get parent
TaskGroup parent = selection.getSelectedTaskParent();
if (parent == null) {
String newGroupName = computeNewTaskName(project, DEFAULT_TASK_GROUP_PREFIX);
newGroup = addTaskGroup(project, findLastSelectedRoot(selectedTasks), newGroupName, selectedTasks);
} else {
String newGroupName = computeNewTaskName(parent, DEFAULT_TASK_GROUP_PREFIX);
AUndertaking last = selectedTasks[selectedTasks.length - 1];
newGroup = addTaskGroup(parent, parent.getUndertakings().indexOf(last) + 1, newGroupName, selectedTasks);
}
}
// Task is automatically selected when added -- rename
// Cannot put this into the ui because of undo/redo
ui.initiateTaskRename(newGroup);
return true;
}
};
}
use of edu.cmu.cs.hcii.cogtool.ui.TaskSelectionState in project cogtool by cogtool.
the class ProjectController method assignActions.
/**
* Registers the set of <code>IListenerAction</code> instances
* that implement the semantic actions that are possible.
* <p>
* For this class, this consists of the actions for a project editor.
*
* @author mlh
*/
@Override
public void assignActions() {
super.assignActions();
ui.setAction(ProjectLID.Undo, new UndoController.UndoAction(undoMgr, interaction));
ui.setAction(ProjectLID.Redo, new UndoController.RedoAction(undoMgr, interaction));
ui.setAction(ProjectLID.DeselectAll, new IListenerAction() {
public Class<?> getParameterClass() {
return SelectionState.class;
}
public boolean performAction(Object prms) {
SelectionState selection = (SelectionState) prms;
selection.deselectAll();
return true;
}
});
ui.setAction(ProjectLID.CopyResultsToClipboard, createCopyResultsAction());
ui.setAction(ProjectLID.Paste, createPasteAction());
ui.setAction(ProjectLID.CaptureBehavior, createCaptureAction());
ui.setAction(ProjectLID.CopyDesign, createCopyDesignAction());
ui.setAction(ProjectLID.CopyTask, createCopyTaskAction());
ui.setAction(ProjectLID.CutDesign, createCutDesignAction());
ui.setAction(ProjectLID.CutTask, createCutTaskAction());
ui.setAction(ProjectLID.SelectAll, new AListenerAction() {
public boolean performAction(Object prms) {
ui.selectAllTasks();
return true;
}
});
ui.setAction(ProjectLID.NewDesign, createNewDesignAction());
ui.setAction(ProjectLID.NewDesignFromImport, createNewDesignForImport());
ui.setAction(ProjectLID.AddDesignDevices, createAddDesignDevicesAction());
ui.setAction(ProjectLID.NewProjectNewDesign, createNameProjectNewDesignAction());
ui.setAction(ProjectLID.EditDesign, createEditDesignAction());
ui.setAction(ProjectLID.EditTask, new IListenerAction() {
public Class<?> getParameterClass() {
return TaskSelectionState.class;
}
public boolean performAction(Object prms) {
TaskSelectionState selection = (TaskSelectionState) prms;
int selectedTaskCount = selection.getSelectedTaskCount();
if (selectedTaskCount == 1) {
AUndertaking selectedTask = selection.getSelectedTask();
ui.initiateTaskRename(selectedTask);
return true;
}
if (selectedTaskCount == 0) {
interaction.protestNoSelection();
} else {
interaction.protestTooManySelectedTasks();
}
return false;
}
});
ui.setAction(ProjectLID.RenameDesign, createRenameDesignAction());
ui.setAction(ProjectLID.InitiateTaskRename, createInitiateTaskRenameAction());
ui.setAction(ProjectLID.HCIPARenameTask, new IListenerAction() {
public Class<?> getParameterClass() {
return ProjectUI.TaskRenameEvent.class;
}
public boolean performAction(Object prms) {
ProjectUI.TaskRenameEvent evt = (ProjectUI.TaskRenameEvent) prms;
return hcipaRenameTask(evt.task, evt.task.getName(), evt.newName);
}
});
ui.setAction(ProjectLID.RenameTask, new IListenerAction() {
public Class<?> getParameterClass() {
return ProjectUI.TaskRenameEvent.class;
}
public boolean performAction(Object prms) {
ProjectUI.TaskRenameEvent evt = (ProjectUI.TaskRenameEvent) prms;
return renameTask(evt.task, evt.task.getName(), evt.newName, evt.parent);
}
});
ui.setAction(ProjectLID.EditScript, createScriptEditorAction());
ui.setAction(ProjectLID.ViewGroupScript, createScriptViewerAction());
ui.setAction(ProjectLID.DeleteDesign, createDeleteDesignAction());
ui.setAction(ProjectLID.DeleteTask, createDeleteTaskAction());
ui.setAction(ProjectLID.NewTask, createNewTaskAction());
ui.setAction(ProjectLID.NewTaskGroup, createNewTaskGroupAction());
ui.setAction(ProjectLID.ReorderDesigns, createReorderDesignsAction());
ui.setAction(ProjectLID.ShowSum, createShowNatureAction(GroupNature.SUM, ProjectLID.ShowSum));
ui.setAction(ProjectLID.ShowMean, createShowNatureAction(GroupNature.MEAN, ProjectLID.ShowMean));
ui.setAction(ProjectLID.ShowMin, createShowNatureAction(GroupNature.MIN, ProjectLID.ShowMin));
ui.setAction(ProjectLID.ShowMax, createShowNatureAction(GroupNature.MAX, ProjectLID.ShowMax));
ui.setAction(ProjectLID.RegenerateScript, createRegenerateScriptAction());
ui.setAction(ProjectLID.RecomputeScript, createRecomputeScriptAction());
ui.setAction(ProjectLID.ShowModelVisualization, createShowModelVisualizationAction());
ui.setAction(ProjectLID.DisplayTraces, createDisplayTraces());
ui.setAction(ProjectLID.ExportTraces, createExportTraces());
ui.setAction(ProjectLID.ExportForSanlab, createExportForSanlab());
ui.setAction(ProjectLID.ExportActrModelFile, createExportActrModelFile());
ui.setAction(ProjectLID.ExportDesignToHTML, createExportDesignToHTMLAction());
ui.setAction(ProjectLID.ExportToHCIPA, createExportToHCIPAAction());
ui.setAction(ProjectLID.ExportResultsToCSV, createExportResultsToCSVAction());
ui.setAction(ProjectLID.ImportXML, createImportAction());
/*for(CogToolLID lid : ProjectLID.getCollection())
{
this.ui.setAction(lid,
createImportAction());
}*/
/*this.ui.setAction(ProjectLID.ImportXML,
new IListenerAction() {
public Class<?> getParameterClass()
{
return Class.class;
}
<<<<<<< .mine
public boolean performAction(Object prms)
{
Class convClass = (Class)prms;
createImportAction(convClass);
return true;
}
});*/
ui.setAction(ProjectLID.ImportWebCrawl, createImportWebCrawlAction());
ui.setAction(ProjectLID.ExportScriptToCSV, createExportScriptToCSVAction());
ui.setAction(ProjectLID.ExportToXML, createExportDesignToXML());
ui.setAction(ProjectLID.DuplicateDesign, createDuplicateDesignAction());
ui.setAction(ProjectLID.DuplicateTask, createDuplicateTasksAction());
ui.setAction(ProjectLID.ImportHumanCSVFile, createImportHumanCSVFileAction());
ui.setAction(ProjectLID.SetAlgorithmACTR6, createSetAlgorithmAction(ACTR6PredictionAlgo.ONLY, ProjectLID.SetAlgorithmACTR6, SET_ALG_ACTR6));
ui.setAction(ProjectLID.SetAlgorithmSNIFACT, createSetAlgorithmAction(SNIFACTPredictionAlgo.ONLY, ProjectLID.SetAlgorithmSNIFACT, SET_ALG_SNIFACT));
ui.setAction(ProjectLID.SetAlgorithmHuman, createSetAlgorithmHumanAction());
ui.setAction(ProjectLID.EditACTRModelFile, createEditACTRModelAction());
ui.setAction(ProjectLID.SetBackgroundComputationDefault, createSetBackgroundComputeAction(TaskApplication.USE_PROJECT_DEFAULT, ProjectLID.SetBackgroundComputationDefault, SET_RUN_PROJECT_DEFAULT));
ui.setAction(ProjectLID.SetBackgroundComputationTrue, createSetBackgroundComputeAction(TaskApplication.RUN_IN_BACKGROUND, ProjectLID.SetBackgroundComputationTrue, SET_RUN_BACKGROUND));
ui.setAction(ProjectLID.SetBackgroundComputationFalse, createSetBackgroundComputeAction(TaskApplication.RUN_IN_FOREGROUND, ProjectLID.SetBackgroundComputationFalse, SET_RUN_FOREGROUND));
ui.setAction(ProjectLID.GenerateACTRModelFile, createGenerateACTRModelAction());
ui.setAction(ProjectLID.SetProjDefaultAlgoACTR, createSetProjDefaultAlg(ProjectLID.SetProjDefaultAlgoACTR, SET_PROJ_DEFAULT_ACTR, ACTR6PredictionAlgo.ONLY));
ui.setAction(ProjectLID.SetProjDefaultAlgoSNIFACT, createSetProjDefaultAlg(ProjectLID.SetProjDefaultAlgoSNIFACT, SET_PROJ_DEFAULT_SNIFACT, SNIFACTPredictionAlgo.ONLY));
ui.setAction(ProjectLID.SetProjExecBackground, createSetProjDefaultExecBkg(ProjectLID.SetProjExecBackground, SET_RUN_BKG_DEFAULT, true));
ui.setAction(ProjectLID.SetProjExecForeground, createSetProjDefaultExecBkg(ProjectLID.SetProjExecForeground, SET_RUN_FG_DEFAULT, false));
ui.setAction(ProjectLID.ChangeTaskPosition, createChangeTaskPositionAction());
ui.setAction(ProjectLID.DuplicateTaskFull, createDuplicateTaskFullAction());
ui.setAction(ProjectLID.Ungroup, createUngroupAction());
ui.setAction(ProjectLID.PromoteTask, createPromoteTaskAction());
ui.setAction(ProjectLID.DemoteTask, createDemoteTaskAction());
ui.setAction(ProjectLID.MoveTaskEarlier, createMoveTaskEarlierAction());
ui.setAction(ProjectLID.MoveTaskLater, createMoveTaskLaterAction());
ui.setAction(ProjectLID.GenerateDictionary, createGenerateDictionaryAction());
ui.setAction(ProjectLID.EditDictionary, createOpenDictionaryAction());
ui.setAction(ProjectLID.ExportDictToCSV, createExportDictionaryAction());
ui.setAction(ProjectLID.ImportDict, createImportDictionaryAction());
ui.setAction(ProjectLID.MoveTaskApplication, createMoveTaskAppAction());
ui.setAction(ProjectLID.DuplicateTaskApplication, createDuplicateTaskAppAction());
}
Aggregations