|
@@ -23,6 +23,50 @@ CreateProjWidget::CreateProjWidget(QWidget *parent) : QDialog(parent)
|
|
|
connectSignalsAndSlots();
|
|
|
}
|
|
|
|
|
|
+CreateProjWidget::Mode CreateProjWidget::mode() const
|
|
|
+{
|
|
|
+ return m_mode;
|
|
|
+}
|
|
|
+
|
|
|
+void CreateProjWidget::setMode(CreateProjWidget::Mode mode)
|
|
|
+{
|
|
|
+ m_mode = mode;
|
|
|
+ switch (mode) {
|
|
|
+ case Create: {
|
|
|
+ setWindowTitle("创建项目");
|
|
|
+ m_confirm->setText("创建");
|
|
|
+ break;
|
|
|
+ }
|
|
|
+ case Update: {
|
|
|
+ setWindowTitle("修改项目");
|
|
|
+ m_confirm->setText("修改");
|
|
|
+ break;
|
|
|
+ }
|
|
|
+ case Info: {
|
|
|
+ setWindowTitle("项目信息");
|
|
|
+ break;
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ bool c = (mode == Create);
|
|
|
+ bool cu = (mode == Update || mode == Create);
|
|
|
+
|
|
|
+ m_taskName->setEnabled(cu);
|
|
|
+ m_evalTime->setEnabled(c);
|
|
|
+ m_evalPurpose->setEnabled(cu);
|
|
|
+ m_evalUnit->setEnabled(cu);
|
|
|
+ m_evalCrew->setEnabled(cu);
|
|
|
+ m_rank->setEnabled(cu);
|
|
|
+ m_note->setEnabled(cu);
|
|
|
+ m_name->setEnabled(cu);
|
|
|
+ m_type1->setEnabled(c);
|
|
|
+ m_type2->setEnabled(c);
|
|
|
+ m_type3->setEnabled(c);
|
|
|
+
|
|
|
+ m_confirm->setVisible(cu);
|
|
|
+ m_cancel->setVisible(cu);
|
|
|
+}
|
|
|
+
|
|
|
void CreateProjWidget::resetInputs()
|
|
|
{
|
|
|
m_taskName->clear();
|
|
@@ -63,6 +107,23 @@ ProjectInfo CreateProjWidget::projectInfo() const
|
|
|
return proj;
|
|
|
}
|
|
|
|
|
|
+void CreateProjWidget::setProjectInfo(ProjectInfo *info)
|
|
|
+{
|
|
|
+ m_taskName->setText(info->taskName);
|
|
|
+ QDateTime time = QDateTime::fromTime_t(info->estimateTime.toUInt());
|
|
|
+ m_evalTime->setDateTime(time);
|
|
|
+ m_evalPurpose->setText(info->estimateObjective);
|
|
|
+ m_evalUnit->setText(info->estimateDept);
|
|
|
+ m_evalCrew->setText(info->estimatePerson);
|
|
|
+ m_rank->setText(info->positionalTitles);
|
|
|
+ m_note->setPlainText(info->remark);
|
|
|
+ m_name->setText(info->projectName);
|
|
|
+ ProjectManager::EvalTypes types = ProjectManager::evalTypes(*info);
|
|
|
+ m_type1->setChecked((types & ProjectManager::Requirements) == ProjectManager::Requirements);
|
|
|
+ m_type1->setChecked((types & ProjectManager::SchemeOptimization) == ProjectManager::SchemeOptimization);
|
|
|
+ m_type1->setChecked((types & ProjectManager::OverallEfficiency) == ProjectManager::OverallEfficiency);
|
|
|
+}
|
|
|
+
|
|
|
void CreateProjWidget::initWindow()
|
|
|
{
|
|
|
setWindowTitle("新建工程");
|
|
@@ -137,6 +198,7 @@ void CreateProjWidget::initLayout()
|
|
|
// 项目信息布局
|
|
|
m_projLayout->addWidget(m_nameLabel, 0, 0, 1, 1, Qt::AlignLeft);
|
|
|
m_projLayout->addWidget(m_name, 0, 1, 1, 5, Qt::AlignLeft);
|
|
|
+ m_name->setMinimumWidth(200);
|
|
|
m_projLayout->addWidget(new QWidget(this), 1, 1, 4, 1, Qt::AlignLeft);
|
|
|
m_projLayout->addWidget(m_typeLabel, 4, 0, 1, 1, Qt::AlignLeft);
|
|
|
m_projLayout->addWidget(m_type1, 4, 1, 1, 5, Qt::AlignLeft);
|