/*
Bacula® - The Network Backup Solution
- Copyright (C) 2007-2008 Free Software Foundation Europe e.V.
+ Copyright (C) 2007-2009 Free Software Foundation Europe e.V.
The main author of Bacula is Kern Sibbald, with contributions from
many others, a complete list can be found in the file AUTHORS.
Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
02110-1301, USA.
- Bacula® is a registered trademark of John Walker.
+ Bacula® is a registered trademark of Kern Sibbald.
The licensor of Bacula is the Free Software Foundation Europe
(FSFE), Fiduciary Program, Sumatrastrasse 25, 8006 Zürich,
Switzerland, email:ftf@fsfeurope.org.
{
m_console = console;
m_fromVolume = fromVolume;
- m_console->notify(false);
+ m_conn = m_console->notifyOff();
setupUi(this);
storageCombo->addItems(console->storage_list);
poolCombo->addItems(console->pool_list);
QString fromText(tr("From Volume : "));
fromText += fromVolume;
fromLabel->setText(fromText);
+ QStringList defFields;
+ if (getDefs(defFields) >= 1) {
+ poolCombo->setCurrentIndex(poolCombo->findText(defFields[1], Qt::MatchExactly));
+ storageCombo->setCurrentIndex(storageCombo->findText(defFields[0], Qt::MatchExactly));
+ }
this->show();
}
+/*
+ * Use an sql statment to get some defaults
+ */
+int relabelDialog::getDefs(QStringList &fieldlist)
+{
+ QString job, client, fileset;
+ QString query("");
+ query = "SELECT MediaType AS MediaType, Pool.Name AS PoolName"
+ " FROM Media"
+ " LEFT OUTER JOIN Pool ON Media.PoolId = Pool.PoolId"
+ " WHERE VolumeName = \'" + m_fromVolume + "\'";
+ if (mainWin->m_sqlDebug) { Pmsg1(000, "query = %s\n", query.toUtf8().data()); }
+ QStringList results;
+ if (m_console->sql_cmd(query, results)) {
+ QString field;
+ /* Iterate through the lines of results, there should only be one. */
+ foreach (QString resultline, results) {
+ fieldlist = resultline.split("\t");
+ } /* foreach resultline */
+ } /* if results from query */
+ return results.count();
+}
void relabelDialog::accept()
{
Pmsg1(000, "sending command : %s\n",scmd.toUtf8().data());
}
m_console->write_dir(scmd.toUtf8().data());
- m_console->displayToPrompt();
- m_console->notify(true);
+ m_console->displayToPrompt(m_conn);
+ m_console->notify(m_conn, true);
delete this;
mainWin->resetFocus();
}
void relabelDialog::reject()
{
this->hide();
- m_console->notify(true);
+ m_console->notify(m_conn, true);
delete this;
mainWin->resetFocus();
}