mirror of
https://github.com/Palm1r/QodeAssist.git
synced 2025-07-19 05:24:59 -04:00
feat: Add basic task flow run and edit (#212)
This commit is contained in:
69
TaskFlow/Editor/TaskItem.cpp
Normal file
69
TaskFlow/Editor/TaskItem.cpp
Normal file
@ -0,0 +1,69 @@
|
||||
#include "TaskItem.hpp"
|
||||
|
||||
namespace QodeAssist::TaskFlow {
|
||||
|
||||
TaskItem::TaskItem(QQuickItem *parent)
|
||||
: QQuickItem(parent)
|
||||
{
|
||||
setObjectName("TaskItem");
|
||||
}
|
||||
|
||||
QString TaskItem::taskId() const
|
||||
{
|
||||
return m_taskId;
|
||||
}
|
||||
|
||||
void TaskItem::setTaskId(const QString &newTaskId)
|
||||
{
|
||||
if (m_taskId == newTaskId)
|
||||
return;
|
||||
m_taskId = newTaskId;
|
||||
emit taskIdChanged();
|
||||
}
|
||||
|
||||
QString TaskItem::taskType() const
|
||||
{
|
||||
return m_task ? m_task->taskType() : QString();
|
||||
}
|
||||
|
||||
BaseTask *TaskItem::task() const
|
||||
{
|
||||
return m_task;
|
||||
}
|
||||
|
||||
void TaskItem::setTask(BaseTask *newTask)
|
||||
{
|
||||
if (m_task == newTask)
|
||||
return;
|
||||
|
||||
m_task = newTask;
|
||||
|
||||
if (m_task) {
|
||||
m_taskId = m_task->taskId();
|
||||
|
||||
// Обновляем модели портов
|
||||
m_inputPorts = new TaskPortModel(m_task->getInputPorts(), this);
|
||||
m_outputPorts = new TaskPortModel(m_task->getOutputPorts(), this);
|
||||
} else {
|
||||
m_inputPorts = nullptr;
|
||||
m_outputPorts = nullptr;
|
||||
}
|
||||
|
||||
emit taskChanged();
|
||||
emit inputPortsChanged();
|
||||
emit outputPortsChanged();
|
||||
emit taskIdChanged();
|
||||
emit taskTypeChanged();
|
||||
}
|
||||
|
||||
TaskPortModel *TaskItem::inputPorts() const
|
||||
{
|
||||
return m_inputPorts;
|
||||
}
|
||||
|
||||
TaskPortModel *TaskItem::outputPorts() const
|
||||
{
|
||||
return m_outputPorts;
|
||||
}
|
||||
|
||||
} // namespace QodeAssist::TaskFlow
|
Reference in New Issue
Block a user