RepoEditor::RepoEditor( QWidget *parent ) : QDialog( parent ) , ui( new Ui::RepoEditor ) { ui->setupUi( this ); repoConf = new RepoConf(); addRepoDialog = new AddRepo( this ); ui->tableView->setModel( repoConf ); ui->tableView->setItemDelegateForColumn( 0, new CheckBoxDelegate( this) ); ui->tableView->setItemDelegateForColumn( 2, new OptionsDelegate( this) ); ui->tableView->setColumnWidth( 1, 133 ); ui->backupFile->setText( repoConf->getConfPath() + ".bak" ); connect( ui->moveUp, SIGNAL( clicked() ), SLOT( moveUp() ) ); connect( ui->moveDown, SIGNAL( clicked() ), SLOT( moveDown() ) ); QItemSelectionModel *selModel = ui->tableView->selectionModel(); connect( selModel, SIGNAL( selectionChanged( QItemSelection,QItemSelection ) ), SLOT( updateMovers( QItemSelection,QItemSelection ) ) ); connect( ui->buttonBox->button( QDialogButtonBox::Reset ), SIGNAL( clicked() ), repoConf, SLOT( reload() ) ); connect( ui->buttonBox->button( QDialogButtonBox::Save ), SIGNAL( clicked() ), SLOT( apply() ) ); connect( ui->buttonBox->button( QDialogButtonBox::Discard ), SIGNAL( clicked() ), SLOT( discard() ) ); connect( ui->remove, SIGNAL( clicked() ), SLOT( removeEntry() ) ); connect( ui->add, SIGNAL( clicked() ), SLOT( addEntry() ) ); connect( ui->edit, SIGNAL( clicked() ), SLOT( editEntry() ) ); connect( ui->loadBackup, SIGNAL( clicked() ), SLOT( loadBackup() ) ); ui->tableView->selectRow(0); }
void BrowseBackup::setup_widgets() { qDebug() << "[SETUP] BrowseBackup"; setup = true; this->setWindowTitle("Browse Backup"); this->setMinimumSize(400,250); // A heading, giving a few explanatory words QLabel *title = new QLabel("<h1>Browse backed up data</h1>Please select a date to get a list of available data sets for that day."); title->setWordWrap(true); title->setAlignment(Qt::AlignCenter); // A date can be selected to get a list of backups from that day date = new DateEdit; QHBoxLayout *dateLay = new QHBoxLayout; dateLay->addStretch(); dateLay->addWidget(date); dateLay->addStretch(); // A search button to search for backups on the set date search = new QPushButton("Search"); search->setStyleSheet("font-weight: bold; font-size: 12pt"); connect(search, SIGNAL(clicked()), this, SLOT(doSearch())); Line *afterSearch = new Line; // And a list widget that'll contain all the backups, each as one item list = new QListWidget; list->setStyleSheet("QListWidget { font-weight: bold; } QListWidget:item { height: 30px; }"); connect(list, SIGNAL(clicked(QModelIndex)), this, SLOT(itemSelected(QModelIndex))); // And if a backup is selected, then this button is enabled to load the data and open a read-only data browser load = new QPushButton("Load dataset"); load->setEnabled(false); load->setStyleSheet("font-weight: bold; font-size: 11pt"); connect(load, SIGNAL(clicked()), this, SLOT(loadBackup())); // And right at the bottom a button to close this window Line *lineAboveClose = new Line; closeWindow = new QPushButton("Close"); closeWindow->setStyleSheet("font-weight: bold"); QHBoxLayout *closeWindowLay = new QHBoxLayout; closeWindowLay->addStretch(); closeWindowLay->addWidget(closeWindow); closeWindowLay->addStretch(); connect(closeWindow, SIGNAL(clicked()), this, SLOT(close())); // The two busy widgets: busyLoadList = new Busy("Loading list of Backups...\nPlease wait!"); busyLoadBackup = new Busy("Loading Backup into database...\nThis might take a couple minutes!"); // Arrange elements in layout QVBoxLayout *lay = new QVBoxLayout; lay->addWidget(title); lay->addSpacing(15); lay->addLayout(dateLay); lay->addSpacing(10); lay->addWidget(search); lay->addSpacing(5); lay->addWidget(afterSearch); lay->addSpacing(5); lay->addWidget(list); lay->addSpacing(10); lay->addWidget(load); lay->addSpacing(5); lay->addWidget(lineAboveClose); lay->addLayout(closeWindowLay); lay->addSpacing(5); this->setLayout(lay); // This manager is used to load a list of backups (the backup files are filtered on the server using a php script) connect(&manager, SIGNAL(finished(QNetworkReply*)), this, SLOT(analyseReply(QNetworkReply*))); // The data browser (tools, bookingtabs, details) are only set up if a backup is requested for browsing browseSetup = false; // Request loading of a backup connect(&managerLoadBackup, SIGNAL(finished(QNetworkReply*)), this, SLOT(openBackup(QNetworkReply*))); }