/*
* Copyright (C) 2010 Ixonos Plc.
- * Copyright (C) 2011-2017 Philipp Spitzer, gregor herrmann, Stefan Stahl
+ * Copyright (C) 2011-2024 Philipp Spitzer, gregor herrmann, Stefan Stahl
*
* This file is part of ConfClerk.
*
connect(changeUrl, SIGNAL(clicked()), SLOT(changeUrlClicked()));
connect(refreshBtn, SIGNAL(clicked()), SLOT(refreshClicked()));
connect(buttonBox, SIGNAL(rejected()), SLOT(close()));
+ connect(conferenceDtsHours, SIGNAL(valueChanged(int)), SLOT(dtsChanged()));
+ connect(conferenceDtsMinutes, SIGNAL(valueChanged(int)), SLOT(dtsChanged()));
// it's OK to emit selection signals here
// because they are not yet connected to anybody
conferenceTitle->setText(conf.title());
conferenceSubtitle->setText(conf.subtitle());
- conferenceWhere->setText(conf.city() + (!conf.venue().isEmpty() ? ", " + conf.venue() : ""));
+ QString where = conf.city();
+ if (!conf.city().isEmpty() && !conf.venue().isEmpty()) where += ", ";
+ where += conf.venue();
+ conferenceWhere->setText(where);
conferenceWhen->setText(
conf.start().toString("yyyy-MM-dd")
+ " - " +
} else {
conferenceUtcOffset->setText("N/A");
}
+ int dts = conf.displayTimeShift();
+ conferenceDtsHours->setValue(dts / 60);
+ conferenceDtsMinutes->setValue(abs(dts) % 60);
conferenceInfo->setCurrentIndex(0);
removeBtn->show();
}
emit haveConferenceUrl(url, selected_id);
}
+void ConferenceEditor::dtsChanged() {
+ if (selected_id < 0) return;
+ Conference& conference = model->conferenceFromIndex(model->indexFromId(selected_id));
+ int minutes = conferenceDtsMinutes->value();
+ if (conferenceDtsHours->value() < 0) minutes *= -1;
+ conference.setDisplayTimeShift(conferenceDtsHours->value() * 60 + minutes);
+}
+
void ConferenceEditor::importStarted()
{
addBtn->hide();