diff options
author | Louie S <louie@example.com> | 2024-03-02 16:16:59 -0500 |
---|---|---|
committer | Louie S <louie@example.com> | 2024-03-02 16:16:59 -0500 |
commit | 43b2132f4d57fac69be698d26cc8f920967065e6 (patch) | |
tree | ed92c38189796e7dbb533d4685bc5743cd3d3b80 /src/add_entry_form.cpp | |
parent | 74c9ba962ffe142b04f77fd831438a75eec7b46b (diff) |
Render entries
Diffstat (limited to 'src/add_entry_form.cpp')
-rw-r--r-- | src/add_entry_form.cpp | 45 |
1 files changed, 45 insertions, 0 deletions
diff --git a/src/add_entry_form.cpp b/src/add_entry_form.cpp new file mode 100644 index 0000000..b08fedc --- /dev/null +++ b/src/add_entry_form.cpp @@ -0,0 +1,45 @@ +#include <QDate> +#include <QMessageBox> +#include <QString> + +#include "add_entry_form.h" +#include "backend/db_sqlite.h" + +AddEntryForm::AddEntryForm(int parent_id) : + parent_id(parent_id) +{ + // load uic + ui.setupUi(this); + + // widgets setup + ui.new_entry_due->setDate(QDate::currentDate()); +} + +void AddEntryForm::accept() { + QString desc_text = ui.new_entry_desc->text(); + QDateTime due_text = ui.new_entry_due->date().startOfDay(); + QString due_alt_text = ui.new_entry_due_alt->text(); + QString link_text = ui.new_entry_link->text(); + QString color_text = ui.new_entry_color->text(); + QString highlight_text = ui.new_entry_highlight->text(); + QMessageBox error_message; + BackendDB database; + int new_id; + + // Check that the new entry is not blank + if(desc_text.isEmpty()) { + error_message.setIcon(QMessageBox::Warning); + error_message.setWindowTitle("Error Message"); + error_message.setText("Description cannot be blank"); + error_message.exec(); + return; + } + + // replace due_text with null date if due_checkbox is unchecked + if(!ui.new_entry_due_checkbox->isChecked()) + due_text = QDateTime(); + + new_id = database.insertEntry(Entry(0, this->parent_id, desc_text, due_text, due_alt_text, link_text, color_text, highlight_text)); + + QDialog::accept(); +} |