コード例 #1
0
ファイル: mainwindow.cpp プロジェクト: axelboga/hopur32
void MainWindow::on_button_remove_scientist_clicked() {
    int currentlySelectedScientistIndex = ui->table_scientists->currentIndex().row();

    Scientist currentlySelectedScientist = currentlyDisplayedScientists.at(currentlySelectedScientistIndex);

    int idToRemove = currentlySelectedScientist.getId();

    string stringIdToRemove = static_cast<ostringstream*>(&(ostringstream() << idToRemove) )->str();

    int answer = QMessageBox::question(this, "Confirm", "Are you sure?");

    if (answer == QMessageBox::No) {
        return;
    }

    bool success = sciService.remove(stringIdToRemove);

    if (success) {
        ui->input_filter_scientists->setText("");
        displayAllScientists();
        ui->statusBar->showMessage("Successfully removed scientist", 2500);
        ui->button_remove_scientist->setEnabled(false);
    } else {
        QMessageBox::warning(this, "FAIL", "Failed to remove scientist");
    }
}
コード例 #2
0
ファイル: mainwindow.cpp プロジェクト: axelboga/hopur32
void MainWindow::on_button_add_scientist_clicked() {
    AddScientistDialog addSciDialog;
    int addSciReturnValue = addSciDialog.exec();
    if (addSciReturnValue == 1) {
        ui->input_filter_scientists->setText("");
        displayAllScientists();
        ui->statusBar->showMessage("Successfully added scientist", 2500);
    } else if (addSciReturnValue == -1) {
        int answer = QMessageBox::warning(this, "FAIL", "Failed to add scientist");
    }
}
コード例 #3
0
void MainWindow::on_showSci_clicked()
{
    whatList = true;
    ui->moreUI->setHidden(1);
    Controller cont;
    QVector<Scientist> list;
    list = cont.getScientists("");
    displayAllScientists(list);

    return;
}
コード例 #4
0
void MainWindow::on_addSciDone_clicked()
{
    Controller cont;
    bool check = true;
    QMessageBox box;
    QVector<Scientist> list;
    QString name;
    QString gender = "Male";
    QString birth;
    QString death = "Alive";
    QString desc;

    if(ui->inSciName->text() == ""){
        errorHandle(0);
        check = false;
    }
    else if(ui->inSciBirth->date() > ui->inSciDeath->date() && !ui->inSciAlive->isChecked()){
        errorHandle(2);
        check = false;
    }
    else if(ui->inSciDesc->toPlainText() == ""){
        errorHandle(1);
        check = false;
    }
    if(check){
        name = ui->inSciName->text();
        if(ui->inSciFemale->isChecked()){
            gender = "Female";
        }
        birth = ui->inSciBirth->date().toString("yyyy-MM-dd");
        if(!ui->inSciAlive->isChecked()){
            death = ui->inSciDeath->date().toString("yyyy-MM-dd");
        }
        desc = ui->inSciDesc->toPlainText();

        cont.add(name, gender, birth, death, desc, true);
        list = cont.getScientists("");
        displayAllScientists(list);
        ui->inSciName->clear();
        ui->inSciAlive->setChecked(true);
        ui->inSciDesc->clear();

    }

    return;
}
コード例 #5
0
void MainWindow::on_searchButton_clicked()
{
    currSelectedID = -1;
    Controller cont;
    QString name = ui->searchText->text();
    if(whatList){
        QVector<Scientist> list;
        list = cont.getScientists(name);
        displayAllScientists(list);
    }
    else{
        QVector<Computers> list;
        list = cont.getComputers(name);
        displayAllComputers(list);
    }

    return;
}
コード例 #6
0
ファイル: mainwindow.cpp プロジェクト: axelboga/hopur32
MainWindow::MainWindow(QWidget *parent) : QMainWindow(parent), ui(new Ui::MainWindow) {
    ui->setupUi(this);
    ui->dropdown_order_by->addItem("Name");
    ui->dropdown_order_by->addItem("Type");
    ui->dropdown_order_by->addItem("Was Built");
    ui->dropdown_order_by->addItem("Year Built");
    ui->dropdown_scientist_order_by->addItem("First Name");
    ui->dropdown_scientist_order_by->addItem("Last Name");
    ui->dropdown_scientist_order_by->addItem("Gender");
    ui->dropdown_scientist_order_by->addItem("Year of Birth");
    ui->dropdown_scientist_order_by->addItem("Year of Death");
    ui->dropdown_order_by_ascending->addItem("Ascending");
    ui->dropdown_order_by_ascending->addItem("Descending");
    ui->dropdown_scientist_order_by_ascending->addItem("Ascending");
    ui->dropdown_scientist_order_by_ascending->addItem("Descending");
    ui->table_computers->horizontalHeader()->setSectionResizeMode(QHeaderView::Stretch);
    ui->table_scientists->horizontalHeader()->setSectionResizeMode(QHeaderView::Stretch);
    displayAllComputers();
    displayAllScientists();
    displayAllComputersForComputerConnections();
    displayAllScientistsForScientistConnections();
}