-cancel [job=<job-name> ujobid=<unique-jobid>]
-To be done in the context of a status dir graphical window.
-Also in a "job resources window for job-name".
+cancel ujobid=<unique-jobid>
 
 delete pool=<pool-name>
    should ask if this would have bad effects if say media existed in the pool
    the pool existed in the configuration file.
 
-disable job<job-name>     and     enable job<job-name>
-Could be done in the context of a jobs resource window which is not yet created
-
 list
    list ujobid<unique job name> (list job with unique name)
-   list files job=<job-name>
-  do this as a context option on page selector on joblist
-   list volumes job=<job-name>
-   list nextvolume job=<job-name>
-   list nextvol job=<job-name>
    list nextvol job=<job-name> days=nnn
 
 unmount [ jobid=<id> | job=<job-name> ]
 automount on/off
 Added buttons to the label dialog box to execute automount command
 
-cancel jobid=<number>
+cancel jobid=<number> job=<job-name>
 
 delete [volume=<vol-name> job jobid=<id>]
 
+disable job<job-name>     and     enable job<job-name>
+Could be done in the context of a jobs resource window which is not yet created
+
 estimate
 Could be a dialog in the context of a jobs window.
 
      list pools
    Accomplishable with the clients class graphically
      list clients
+   list files job=<job-name>
+  do this as a context option on page selector on joblist
+   list volumes job=<job-name>
+   list nextvolume job=<job-name>
+   list nextvol job=<job-name>
+
 help
   context sensitive from page selector console
 
 
  */
 void Clients::showJobs()
 {
-   QString emptymedia("");
    QTreeWidgetItem *parentItem = mainWin->getFromHash(this);
-   mainWin->createPageJobList(emptymedia, m_currentlyselected, parentItem);
+   mainWin->createPageJobList("", m_currentlyselected, parentItem);
 }
 
 /*
 
 /*
  * Constructor for the class
  */
-JobList::JobList(QString &mediaName, QString &clientname,
+JobList::JobList(const QString &mediaName, const QString &clientname,
          QTreeWidgetItem *parentTreeWidgetItem)
 {
    setupUi(this);
 
    Q_OBJECT 
 
 public:
-   JobList(QString &medianame, QString &clientname, QTreeWidgetItem *);
+   JobList(const QString &medianame, const QString &clientname, QTreeWidgetItem *);
    virtual void PgSeltreeWidgetClicked();
    virtual void currentStackItem();
    int m_resultCount;
 
 
       for (int i=0; i<headerlist.count(); i++)
          jobsItem->setData(i, Qt::UserRole, 1);
-/*struct job_defaults {
-   QString job_name;
-   QString pool_name;
-   QString messages_name;
-   QString client_name;
-   QString store_name;
-   QString where;
-   QString level;
-   QString type;
-   QString fileset_name;
-   QString catalog_name;
-   bool enabled;
-};*/
+
       job_defaults job_defs;
       job_defs.job_name = jobName;
       if (m_console->get_job_defaults(job_defs)) {
             jobsItem->setText(col++, "No");
          }
       }
-
    }
    /* Resize the columns */
    for(int cnter=0; cnter<headerlist.size(); cnter++) {
       if (previouswidgetitem) { /* avoid a segfault if first time */
          int treedepth = previouswidgetitem->data(0, Qt::UserRole).toInt();
          if (treedepth == 1){
-            //mp_treeWidget->removeAction(actionListJobsofClient);
+            mp_treeWidget->removeAction(actionConsoleListFiles);
+            mp_treeWidget->removeAction(actionConsoleListVolumes);
+            mp_treeWidget->removeAction(actionConsoleListNextVolume);
+            mp_treeWidget->removeAction(actionConsoleEnableJob);
+            mp_treeWidget->removeAction(actionConsoleDisableJob);
+            mp_treeWidget->removeAction(actionConsoleCancel);
+            mp_treeWidget->removeAction(actionJobListQuery);
          }
       }
 
          /* set a hold variable to the client name in case the context sensitive
           * menu is used */
          m_currentlyselected=currentwidgetitem->text(0);
-         //mp_treeWidget->addAction(actionListJobsofClient);
+         mp_treeWidget->addAction(actionConsoleListFiles);
+         mp_treeWidget->addAction(actionConsoleListVolumes);
+         mp_treeWidget->addAction(actionConsoleListNextVolume);
+         mp_treeWidget->addAction(actionConsoleEnableJob);
+         mp_treeWidget->addAction(actionConsoleDisableJob);
+         mp_treeWidget->addAction(actionConsoleCancel);
+         mp_treeWidget->addAction(actionJobListQuery);
       }
    }
 }
    /* connect to the action specific to this pages class */
    connect(actionRefreshJobs, SIGNAL(triggered()), this,
                 SLOT(populateTree()));
+   connect(actionConsoleListFiles, SIGNAL(triggered()), this, SLOT(consoleListFiles()));
+   connect(actionConsoleListVolumes, SIGNAL(triggered()), this, SLOT(consoleListVolume()));
+   connect(actionConsoleListNextVolume, SIGNAL(triggered()), this, SLOT(consoleListNextVolume()));
+   connect(actionConsoleEnableJob, SIGNAL(triggered()), this, SLOT(consoleEnable()));
+   connect(actionConsoleDisableJob, SIGNAL(triggered()), this, SLOT(consoleDisable()));
+   connect(actionConsoleCancel, SIGNAL(triggered()), this, SLOT(consoleCancel()));
+   connect(actionJobListQuery, SIGNAL(triggered()), this, SLOT(listJobs()));
 }
 
 /*
  */
 void Jobs::currentStackItem()
 {
+   populateTree();
    if(!m_populated) {
-      populateTree();
       /* Create the context menu for the client tree */
       m_populated=true;
    }
 }
+
+/*
+ * The following functions are slots responding to users clicking on the context
+ * sensitive menu
+ */
+
+void Jobs::consoleListFiles()
+{
+   QString cmd("list files job=");
+   cmd += m_currentlyselected;
+   consoleCommand(cmd);
+}
+
+void Jobs::consoleListVolume()
+{
+   QString cmd("list volumes job=");
+   cmd += m_currentlyselected;
+   consoleCommand(cmd);
+}
+
+void Jobs::consoleListNextVolume()
+{
+   QString cmd("list nextvolume job=");
+   cmd += m_currentlyselected;
+   consoleCommand(cmd);
+}
+
+void Jobs::consoleEnable()
+{
+   QString cmd("enable job=");
+   cmd += m_currentlyselected;
+   consoleCommand(cmd);
+}
+
+void Jobs::consoleDisable()
+{
+   QString cmd("disable job=");
+   cmd += m_currentlyselected;
+   consoleCommand(cmd);
+}
+
+void Jobs::consoleCancel()
+{
+   QString cmd("cancel job=");
+   cmd += m_currentlyselected;
+   consoleCommand(cmd);
+}
+
+void Jobs::listJobs()
+{
+   printf("In Jobs::listJobs\n");
+}
 
 
 private slots:
    void populateTree();
+   void consoleListFiles();
+   void consoleListVolume();
+   void consoleListNextVolume();
+   void consoleEnable();
+   void consoleDisable();
+   void consoleCancel();
+   void listJobs();
 
 private:
    void createContextMenu();
 
     <string>Requery the director for the list of clients.</string>
    </property>
   </action>
+  <action name="actionConsoleListFiles" >
+   <property name="icon" >
+    <iconset resource="../main.qrc" >:/images/utilities-terminal.svg</iconset>
+   </property>
+   <property name="text" >
+    <string>List Files Command</string>
+   </property>
+   <property name="iconText" >
+    <string>List Files Command</string>
+   </property>
+   <property name="toolTip" >
+    <string>List Files Command</string>
+   </property>
+   <property name="statusTip" >
+    <string>List Files Command</string>
+   </property>
+  </action>
+  <action name="actionConsoleListVolumes" >
+   <property name="icon" >
+    <iconset resource="../main.qrc" >:/images/utilities-terminal.svg</iconset>
+   </property>
+   <property name="text" >
+    <string>List Volumes Command</string>
+   </property>
+   <property name="iconText" >
+    <string>List Volumes Command</string>
+   </property>
+   <property name="toolTip" >
+    <string>List Volumes Command</string>
+   </property>
+   <property name="statusTip" >
+    <string>List Volumes Command</string>
+   </property>
+  </action>
+  <action name="actionConsoleListNextVolume" >
+   <property name="icon" >
+    <iconset resource="../main.qrc" >:/images/utilities-terminal.svg</iconset>
+   </property>
+   <property name="text" >
+    <string>List Next Volume Command</string>
+   </property>
+   <property name="iconText" >
+    <string>List Next Volume Command</string>
+   </property>
+   <property name="toolTip" >
+    <string>List Next Volume Command</string>
+   </property>
+   <property name="statusTip" >
+    <string>List Next Volume Command</string>
+   </property>
+  </action>
+  <action name="actionConsoleEnableJob" >
+   <property name="icon" >
+    <iconset resource="../main.qrc" >:/images/utilities-terminal.svg</iconset>
+   </property>
+   <property name="text" >
+    <string>Enable Job Command</string>
+   </property>
+   <property name="iconText" >
+    <string>Enable Job Command</string>
+   </property>
+   <property name="toolTip" >
+    <string>Enable Job Command</string>
+   </property>
+   <property name="statusTip" >
+    <string>Enable Job Command</string>
+   </property>
+  </action>
+  <action name="actionConsoleDisableJob" >
+   <property name="icon" >
+    <iconset resource="../main.qrc" >:/images/utilities-terminal.svg</iconset>
+   </property>
+   <property name="text" >
+    <string>Disable Job Command</string>
+   </property>
+   <property name="iconText" >
+    <string>Disable Job Command</string>
+   </property>
+   <property name="toolTip" >
+    <string>Disable Job Command</string>
+   </property>
+   <property name="statusTip" >
+    <string>Disable Job Command</string>
+   </property>
+  </action>
+  <action name="actionJobListQuery" >
+   <property name="icon" >
+    <iconset resource="../main.qrc" >:/images/emblem-system.svg</iconset>
+   </property>
+   <property name="text" >
+    <string>Open JobList on Job</string>
+   </property>
+   <property name="iconText" >
+    <string>Open JobList on Job</string>
+   </property>
+   <property name="toolTip" >
+    <string>Open JobList on Job</string>
+   </property>
+   <property name="statusTip" >
+    <string>Open JobList on Job</string>
+   </property>
+  </action>
+  <action name="actionConsoleCancel" >
+   <property name="icon" >
+    <iconset resource="../main.qrc" >:/images/utilities-terminal.svg</iconset>
+   </property>
+   <property name="text" >
+    <string>Cancel Job Command</string>
+   </property>
+   <property name="statusTip" >
+    <string>Cancel Job Command</string>
+   </property>
+  </action>
  </widget>
  <resources>
   <include location="../main.qrc" />
 
       m_currentConsole->readSettings();
 
       /* The top tree item representing the director */
-      topItem = createTopPage(dir->name());
+      topItem = new QTreeWidgetItem(treeWidget);
+      topItem->setText(0, dir->name());
       topItem->setIcon(0, QIcon(":images/server.png"));
       /* Set background to grey for ease of identification of inactive Director */
       QBrush greyBrush(Qt::lightGray);
       m_consoleHash.insert(topItem, m_currentConsole);
 
       /* Create Tree Widget Item */
-      item = createPage("Console", topItem);
+      item = new QTreeWidgetItem(topItem);
+      item->setText(0, "Console");
       if (!m_firstItem){ m_firstItem = item; }
       item->setIcon(0,QIcon(QString::fromUtf8(":images/utilities-terminal.svg")));
 
       new Clients();
       new FileSet();
       new Jobs();
-      QString emptymedia(""), emptyclient("");
-      createPageJobList(emptymedia, emptyclient, NULL);
+      createPageJobList("", "", NULL);
       new MediaList();
       new Storage();
 
 /*
  * create an instance of the the joblist class on the stack
  */
-void MainWin::createPageJobList(QString &media, QString &client,
+void MainWin::createPageJobList(const QString &media, const QString &client,
               QTreeWidgetItem *parentTreeWidgetItem)
 {
    QTreeWidgetItem *holdItem;
    }
 }
 
-/* Create a root Tree Widget */
-QTreeWidgetItem *MainWin::createTopPage(char *name)
-{
-   QTreeWidgetItem *item = new QTreeWidgetItem(treeWidget);
-   item->setText(0, name);
-   return item;
-}
-
-/* Create A Tree Widget Item which will be associated with a Page in the stacked widget */
-QTreeWidgetItem *MainWin::createPage(char *name, QTreeWidgetItem *parent)
-{
-   QTreeWidgetItem *item = new QTreeWidgetItem(parent);
-   item->setText(0, name);
-   return item;
-}
-
 /*
  * Handle up and down arrow keys for the command line
  *  history.
 
    QHash<Pages*,QTreeWidgetItem*> m_widgethash;
    /* This is a list of consoles */
    QHash<QTreeWidgetItem*,Console*> m_consoleHash;
-   void createPageJobList(QString &, QString &, QTreeWidgetItem *);
+   void createPageJobList(const QString &, const QString &, QTreeWidgetItem *);
    QString m_dtformat;
    /* Begin Preferences variables */
    bool m_commDebug;
 private:
    void createConnections(); 
    void createPages();
-   QTreeWidgetItem *createTopPage(char *name);
-   QTreeWidgetItem *createPage(char *name, QTreeWidgetItem *parent);
 
 private:
    Console *m_currentConsole;
 
  */
 void MediaList::showJobs()
 {
-   QString emptyclient("");
    QTreeWidgetItem *parentItem = mainWin->getFromHash(this);
-   mainWin->createPageJobList(m_currentVolumeName, emptyclient, parentItem);
+   mainWin->createPageJobList(m_currentVolumeName, "", parentItem);
 }
 
 /*