Using new projects model
This commit is contained in:
@@ -164,7 +164,7 @@ void AdvancedViewDialog::contextMenuTimeAssignment(const QPoint &pos)
|
||||
auto selectedAction = menu.exec(ui->timeAssignmentsView->viewport()->mapToGlobal(pos));
|
||||
if(selectedAction == createAction)
|
||||
{
|
||||
TimeAssignmentDialog dialog(m_stripsWidget.mainWindow().projects(),
|
||||
TimeAssignmentDialog dialog(m_stripsWidget.mainWindow().projectsModel(),
|
||||
m_stripsWidget.mainWindow().settings(), this);
|
||||
again2:
|
||||
if(dialog.exec() == QDialog::Accepted)
|
||||
@@ -207,12 +207,11 @@ void AdvancedViewDialog::contextMenuTimeAssignment(const QPoint &pos)
|
||||
auto selectedAction = menu.exec(ui->timeAssignmentsView->viewport()->mapToGlobal(pos));
|
||||
if(selectedAction == editAction)
|
||||
{
|
||||
TimeAssignmentDialog dialog(m_stripsWidget.mainWindow().projects(),
|
||||
TimeAssignmentDialog dialog(m_stripsWidget.mainWindow().projectsModel(),
|
||||
m_stripsWidget.mainWindow().settings(), this);
|
||||
dialog.setTime(timeAssignment.time);
|
||||
dialog.setTimespan(timeAssignment.timespan);
|
||||
dialog.setProject(timeAssignment.project);
|
||||
dialog.setWorkpackage(timeAssignment.workpackage);
|
||||
dialog.setProject(timeAssignment.project, timeAssignment.workpackage);
|
||||
dialog.setText(timeAssignment.text);
|
||||
again1:
|
||||
if(dialog.exec() == QDialog::Accepted)
|
||||
|
@@ -5,40 +5,16 @@
|
||||
#include <QStringBuilder>
|
||||
#include <QDebug>
|
||||
|
||||
#include "projectsmodel.h"
|
||||
#include "zeiterfassungsettings.h"
|
||||
|
||||
TimeAssignmentDialog::TimeAssignmentDialog(const QMap<QString, QString> &projects, const ZeiterfassungSettings &settings,
|
||||
QWidget *parent) :
|
||||
TimeAssignmentDialog::TimeAssignmentDialog(ProjectsModel &projectsModel, const ZeiterfassungSettings &settings, QWidget *parent) :
|
||||
ZeiterfassungDialog(parent),
|
||||
ui(new Ui::TimeAssignmentDialog)
|
||||
{
|
||||
ui->setupUi(this);
|
||||
|
||||
{
|
||||
for(const auto &preferedProject : settings.projects())
|
||||
{
|
||||
if(!projects.contains(preferedProject))
|
||||
{
|
||||
qWarning() << "cannot find project" << preferedProject;
|
||||
continue;
|
||||
}
|
||||
|
||||
ui->comboBoxProject->addItem(tr("%0 (%1)").arg(projects.value(preferedProject)).arg(preferedProject), preferedProject);
|
||||
}
|
||||
|
||||
if(settings.projects().count())
|
||||
ui->comboBoxProject->insertSeparator(ui->comboBoxProject->count());
|
||||
|
||||
for(auto iter = projects.constBegin(); iter != projects.constEnd(); iter++)
|
||||
{
|
||||
if(!settings.projects().contains(iter.key()))
|
||||
ui->comboBoxProject->addItem(tr("%0 (%1)").arg(iter.value()).arg(iter.key()), iter.key());
|
||||
}
|
||||
}
|
||||
|
||||
for(const auto &workpackage : settings.workpackages())
|
||||
ui->comboBoxWorkpackage->addItem(workpackage);
|
||||
ui->comboBoxWorkpackage->clearEditText();
|
||||
ui->comboBoxProject->setModel(&projectsModel);
|
||||
|
||||
for(const auto &text : settings.texts())
|
||||
ui->comboBoxText->addItem(text);
|
||||
@@ -72,26 +48,17 @@ void TimeAssignmentDialog::setTimespan(const QTime ×pan)
|
||||
|
||||
QString TimeAssignmentDialog::getProject() const
|
||||
{
|
||||
return ui->comboBoxProject->currentData().toString();
|
||||
}
|
||||
|
||||
void TimeAssignmentDialog::setProject(const QString &project)
|
||||
{
|
||||
auto index = ui->comboBoxProject->findData(project);
|
||||
if(index >= 0)
|
||||
ui->comboBoxProject->setCurrentIndex(index);
|
||||
else
|
||||
qWarning() << "could not find project" << project;
|
||||
return ui->comboBoxProject->currentData(Qt::UserRole).toString();
|
||||
}
|
||||
|
||||
QString TimeAssignmentDialog::getWorkpackage() const
|
||||
{
|
||||
return ui->comboBoxWorkpackage->currentText();
|
||||
return ui->comboBoxProject->currentData(Qt::EditRole).toString();
|
||||
}
|
||||
|
||||
void TimeAssignmentDialog::setWorkpackage(const QString &workpackage)
|
||||
void TimeAssignmentDialog::setProject(const QString &project, const QString &workpackage)
|
||||
{
|
||||
ui->comboBoxWorkpackage->setCurrentText(workpackage);
|
||||
qCritical() << "not implemented";
|
||||
}
|
||||
|
||||
QString TimeAssignmentDialog::getText() const
|
||||
|
@@ -1,11 +1,8 @@
|
||||
#pragma once
|
||||
|
||||
#include <QTime>
|
||||
|
||||
#include "zeiterfassungdialog.h"
|
||||
|
||||
template <class Key, class T> class QMap;
|
||||
|
||||
class ProjectsModel;
|
||||
class ZeiterfassungSettings;
|
||||
|
||||
namespace Ui { class TimeAssignmentDialog; }
|
||||
@@ -15,8 +12,7 @@ class TimeAssignmentDialog : public ZeiterfassungDialog
|
||||
Q_OBJECT
|
||||
|
||||
public:
|
||||
explicit TimeAssignmentDialog(const QMap<QString, QString> &projects, const ZeiterfassungSettings &settings,
|
||||
QWidget *parent = Q_NULLPTR);
|
||||
explicit TimeAssignmentDialog(ProjectsModel &projectsModel, const ZeiterfassungSettings &settings, QWidget *parent = Q_NULLPTR);
|
||||
~TimeAssignmentDialog();
|
||||
|
||||
QTime getTime() const;
|
||||
@@ -26,10 +22,8 @@ public:
|
||||
void setTimespan(const QTime ×pan);
|
||||
|
||||
QString getProject() const;
|
||||
void setProject(const QString &project);
|
||||
|
||||
QString getWorkpackage() const;
|
||||
void setWorkpackage(const QString &workpackage);
|
||||
void setProject(const QString &project, const QString &workpackage);
|
||||
|
||||
QString getText() const;
|
||||
void setText(const QString &text);
|
||||
|
@@ -10,12 +10,6 @@
|
||||
<height>307</height>
|
||||
</rect>
|
||||
</property>
|
||||
<property name="maximumSize">
|
||||
<size>
|
||||
<width>16777215</width>
|
||||
<height>0</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="windowTitle">
|
||||
<string>Time assignment</string>
|
||||
</property>
|
||||
@@ -44,6 +38,13 @@
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="0" column="1">
|
||||
<widget class="QTimeEdit" name="timeEditTime">
|
||||
<property name="displayFormat">
|
||||
<string notr="true">HH:mm:ss</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="1" column="0">
|
||||
<widget class="QLabel" name="labelTimespan">
|
||||
<property name="text">
|
||||
@@ -54,6 +55,13 @@
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="1" column="1">
|
||||
<widget class="QTimeEdit" name="timeEditTimespan">
|
||||
<property name="displayFormat">
|
||||
<string notr="true">HH:mm:ss</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="2" column="0">
|
||||
<widget class="QLabel" name="labelProject">
|
||||
<property name="text">
|
||||
@@ -64,48 +72,17 @@
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="3" column="0">
|
||||
<widget class="QLabel" name="labelWorkpackage">
|
||||
<property name="text">
|
||||
<string>Workpackage:</string>
|
||||
</property>
|
||||
</widget>
|
||||
<item row="2" column="1">
|
||||
<widget class="QComboBox" name="comboBoxProject"/>
|
||||
</item>
|
||||
<item row="4" column="0">
|
||||
<item row="3" column="0">
|
||||
<widget class="QLabel" name="labelText">
|
||||
<property name="text">
|
||||
<string>Text:</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="0" column="1">
|
||||
<widget class="QTimeEdit" name="timeEditTime">
|
||||
<property name="displayFormat">
|
||||
<string notr="true">HH:mm:ss</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="1" column="1">
|
||||
<widget class="QTimeEdit" name="timeEditTimespan">
|
||||
<property name="displayFormat">
|
||||
<string notr="true">HH:mm:ss</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="2" column="1">
|
||||
<widget class="QComboBox" name="comboBoxProject"/>
|
||||
</item>
|
||||
<item row="3" column="1">
|
||||
<widget class="QComboBox" name="comboBoxWorkpackage">
|
||||
<property name="editable">
|
||||
<bool>true</bool>
|
||||
</property>
|
||||
<property name="insertPolicy">
|
||||
<enum>QComboBox::NoInsert</enum>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="4" column="1">
|
||||
<widget class="QComboBox" name="comboBoxText">
|
||||
<property name="editable">
|
||||
<bool>true</bool>
|
||||
|
@@ -74,17 +74,17 @@
|
||||
<translation>Kontierung löschen</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../advancedviewdialog.cpp" line="239"/>
|
||||
<location filename="../advancedviewdialog.cpp" line="238"/>
|
||||
<source>Could not edit time assignment!</source>
|
||||
<translation>Konnte Kontierung nicht bearbeiten!</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../advancedviewdialog.cpp" line="247"/>
|
||||
<location filename="../advancedviewdialog.cpp" line="246"/>
|
||||
<source>Do you really want to delete the time assignment?</source>
|
||||
<translation>Möchten Sie die Kontierung wirklich löschen?</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../advancedviewdialog.cpp" line="261"/>
|
||||
<location filename="../advancedviewdialog.cpp" line="260"/>
|
||||
<source>Could not delete time assignment!</source>
|
||||
<translation>Konnte Kontierung nicht löschen!</translation>
|
||||
</message>
|
||||
@@ -157,42 +157,31 @@
|
||||
<context>
|
||||
<name>TimeAssignmentDialog</name>
|
||||
<message>
|
||||
<location filename="../dialogs/timeassignmentdialog.ui" line="20"/>
|
||||
<location filename="../dialogs/timeassignmentdialog.ui" line="31"/>
|
||||
<location filename="../dialogs/timeassignmentdialog.ui" line="14"/>
|
||||
<location filename="../dialogs/timeassignmentdialog.ui" line="25"/>
|
||||
<source>Time assignment</source>
|
||||
<translation>Kontierung</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../dialogs/timeassignmentdialog.ui" line="40"/>
|
||||
<location filename="../dialogs/timeassignmentdialog.ui" line="34"/>
|
||||
<source>Time:</source>
|
||||
<translation>Zeit:</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../dialogs/timeassignmentdialog.ui" line="50"/>
|
||||
<location filename="../dialogs/timeassignmentdialog.ui" line="51"/>
|
||||
<source>Timespan:</source>
|
||||
<translation>Zeitspanne:</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../dialogs/timeassignmentdialog.ui" line="60"/>
|
||||
<location filename="../dialogs/timeassignmentdialog.ui" line="68"/>
|
||||
<source>Project:</source>
|
||||
<translation>Projekt:</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../dialogs/timeassignmentdialog.ui" line="70"/>
|
||||
<source>Workpackage:</source>
|
||||
<translation>Arbeitspaket:</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../dialogs/timeassignmentdialog.ui" line="77"/>
|
||||
<location filename="../dialogs/timeassignmentdialog.ui" line="81"/>
|
||||
<source>Text:</source>
|
||||
<translation>Text:</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../dialogs/timeassignmentdialog.cpp" line="26"/>
|
||||
<location filename="../dialogs/timeassignmentdialog.cpp" line="35"/>
|
||||
<source>%0 (%1)</source>
|
||||
<translation>%0 (%1)</translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<name>TimeAssignmentsModel</name>
|
||||
|
@@ -74,17 +74,17 @@
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../advancedviewdialog.cpp" line="239"/>
|
||||
<location filename="../advancedviewdialog.cpp" line="238"/>
|
||||
<source>Could not edit time assignment!</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../advancedviewdialog.cpp" line="247"/>
|
||||
<location filename="../advancedviewdialog.cpp" line="246"/>
|
||||
<source>Do you really want to delete the time assignment?</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../advancedviewdialog.cpp" line="261"/>
|
||||
<location filename="../advancedviewdialog.cpp" line="260"/>
|
||||
<source>Could not delete time assignment!</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
@@ -157,42 +157,31 @@
|
||||
<context>
|
||||
<name>TimeAssignmentDialog</name>
|
||||
<message>
|
||||
<location filename="../dialogs/timeassignmentdialog.ui" line="20"/>
|
||||
<location filename="../dialogs/timeassignmentdialog.ui" line="31"/>
|
||||
<location filename="../dialogs/timeassignmentdialog.ui" line="14"/>
|
||||
<location filename="../dialogs/timeassignmentdialog.ui" line="25"/>
|
||||
<source>Time assignment</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../dialogs/timeassignmentdialog.ui" line="40"/>
|
||||
<location filename="../dialogs/timeassignmentdialog.ui" line="34"/>
|
||||
<source>Time:</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../dialogs/timeassignmentdialog.ui" line="50"/>
|
||||
<location filename="../dialogs/timeassignmentdialog.ui" line="51"/>
|
||||
<source>Timespan:</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../dialogs/timeassignmentdialog.ui" line="60"/>
|
||||
<location filename="../dialogs/timeassignmentdialog.ui" line="68"/>
|
||||
<source>Project:</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../dialogs/timeassignmentdialog.ui" line="70"/>
|
||||
<source>Workpackage:</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../dialogs/timeassignmentdialog.ui" line="77"/>
|
||||
<location filename="../dialogs/timeassignmentdialog.ui" line="81"/>
|
||||
<source>Text:</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../dialogs/timeassignmentdialog.cpp" line="26"/>
|
||||
<location filename="../dialogs/timeassignmentdialog.cpp" line="35"/>
|
||||
<source>%0 (%1)</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<name>TimeAssignmentsModel</name>
|
||||
|
Reference in New Issue
Block a user