Add a minimal TaskManager module as a starting point for the project
The module current contains one tab that displays an inaccurate measure
of its own completion.
Change-Id: I08cf1f620342f6dbb8e54f18415a47895964197e
diff --git a/Janeway/build.gradle b/Janeway/build.gradle
index 23bbaa7..f102cbc 100644
--- a/Janeway/build.gradle
+++ b/Janeway/build.gradle
@@ -1,7 +1,7 @@
import org.apache.tools.ant.taskdefs.condition.Os
//Settings for Janeway related to modules and creating the distribution
-def modulesList = ['DefectTracker', 'RequirementManager', 'PostBoard']
+def modulesList = ['DefectTracker', 'RequirementManager', 'PostBoard', 'TaskManager']
def modulesDir = 'modules'
def modulesConf = 'modules.conf'
def libsDir = 'libs'
diff --git a/TaskManager/build.gradle b/TaskManager/build.gradle
new file mode 100644
index 0000000..aed6725
--- /dev/null
+++ b/TaskManager/build.gradle
@@ -0,0 +1,5 @@
+dependencies{
+ compile project(':Network')
+ compile project(':WPISuite-Interfaces')
+ compile project(':JanewayAPI')
+}
diff --git a/TaskManager/src/main/java/edu/wpi/cs/wpisuitetng/modules/taskmanager/TaskManager.java b/TaskManager/src/main/java/edu/wpi/cs/wpisuitetng/modules/taskmanager/TaskManager.java
new file mode 100644
index 0000000..8a71f9f
--- /dev/null
+++ b/TaskManager/src/main/java/edu/wpi/cs/wpisuitetng/modules/taskmanager/TaskManager.java
@@ -0,0 +1,77 @@
+/*******************************************************************************
+ * Copyright (c) 2014 -- WPI Suite
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ ******************************************************************************/
+
+package edu.wpi.cs.wpisuitetng.modules.taskmanager;
+
+import java.util.ArrayList;
+import java.util.List;
+
+import javax.swing.ImageIcon;
+import javax.swing.JLabel;
+import javax.swing.JPanel;
+import javax.swing.JProgressBar;
+
+import edu.wpi.cs.wpisuitetng.janeway.modules.IJanewayModule;
+import edu.wpi.cs.wpisuitetng.janeway.modules.JanewayTabModel;
+
+/**
+ * This is the main class for the WPI Suite TM module for Janeway.
+ *
+ * WPI Suite TM is a task manager consisting of one tab that provides an
+ * interface for keeping track of flow-based tasks.
+ */
+public class TaskManager implements IJanewayModule
+{
+ /** A list containing the one tab */
+ private List<JanewayTabModel> tabs_;
+
+ /** It's 80% done */
+ private int WPI_SUITE_TM_PROGRESS = 80;
+
+ public TaskManager() {
+ JPanel toolbarPanel = new JPanel();
+ JPanel mainPanel = new JPanel();
+
+ /*
+ * The main panel of the tab contains a label and a progress bar for now. In
+ * the future, this is where we will have our UI elements.
+ */
+ JLabel progressLabel = new JLabel("Progress on WPI Suite TM: ");
+ mainPanel.add(progressLabel);
+
+ JProgressBar progressBar = new JProgressBar();
+ progressBar.setValue(WPI_SUITE_TM_PROGRESS);
+ mainPanel.add(progressBar);
+
+ /* Create the tab model for the task manager */
+ tabs_ = new ArrayList<JanewayTabModel>();
+ tabs_.add(new JanewayTabModel("Task Manager", new ImageIcon(),
+ toolbarPanel, mainPanel));
+ }
+
+ /**
+ * @return The name of the module ("Task Manager")
+ */
+ @Override
+ public String getName()
+ {
+ return "Task Manager";
+ }
+
+ /**
+ * {@inheritDoc}
+ */
+ @Override
+ public List<JanewayTabModel> getTabs()
+ {
+ return tabs_;
+ }
+
+}
diff --git a/TaskManager/src/main/resources/manifest.txt b/TaskManager/src/main/resources/manifest.txt
new file mode 100644
index 0000000..1deec83
--- /dev/null
+++ b/TaskManager/src/main/resources/manifest.txt
@@ -0,0 +1 @@
+module_class edu.wpi.cs.wpisuitetng.modules.taskmanager.TaskManager
\ No newline at end of file
diff --git a/settings.gradle b/settings.gradle
index 09e2bdd..3f8576b 100644
--- a/settings.gradle
+++ b/settings.gradle
@@ -6,4 +6,4 @@
project(":WPISuite-Interfaces").projectDir = new File(settingsDir, 'Core/WPISuite-Interfaces')
//Modules
-include "DefectTracker", "RequirementManager", "PostBoard"
+include "DefectTracker", "RequirementManager", "PostBoard", "TaskManager"