diff --git a/ArtDetailWindow.cpp b/ArtDetailWindow.cpp index f9c8380..49df77e 100644 --- a/ArtDetailWindow.cpp +++ b/ArtDetailWindow.cpp @@ -49,11 +49,17 @@ ArtDetailWindow::ArtDetailWindow(const QString& filename, const QString& assetDi formLayout->addRow("Title", m_titleEdit); m_knowExactDateBox = new QCheckBox(); + connect(m_knowExactDateBox, &QCheckBox::toggled, this, [=](bool checked) { + if (checked) { + m_dateEdit->setDisplayFormat("yyyy-MM-dd"); + } else { + m_dateEdit->setDisplayFormat("yyyy"); + } + }); formLayout->addRow("Know Exact Date?", m_knowExactDateBox); m_dateEdit = new QDateEdit(); m_dateEdit->setCalendarPopup(true); - m_dateEdit->setDisplayFormat("yyyy-MM-dd"); formLayout->addRow("Date", m_dateEdit); m_altTextEdit = new QTextEdit(); @@ -183,8 +189,10 @@ void ArtDetailWindow::loadData(const QString& filename) { m_knowExactDateBox->setChecked(artJson["date"].toString().contains("-")); if(m_knowExactDateBox->isChecked()) { m_dateEdit->setDate(QDate::fromString(artJson["date"].toString(), "yyyy-MM-dd")); + m_dateEdit->setDisplayFormat("yyyy-MM-dd"); } else { m_dateEdit->setDate(QDate::fromString(artJson["date"].toString(), "yyyy")); + m_dateEdit->setDisplayFormat("yyyy"); } if(artJson.object().contains("nsfw"))