50 lines
1.5 KiB
C++
50 lines
1.5 KiB
C++
|
#include "gtl_gui_config_widget_device.h"
|
||
|
#include "ui_gtl_gui_config_widget_device.h"
|
||
|
|
||
|
|
||
|
#include "core/gtl_device.h"
|
||
|
#include "gui/config/gtl_gui_config_widget_player.h"
|
||
|
|
||
|
|
||
|
namespace gtl
|
||
|
{
|
||
|
namespace gui
|
||
|
{
|
||
|
namespace config
|
||
|
{
|
||
|
widget_device::widget_device(QWidget *parent) :
|
||
|
widget_node(parent),
|
||
|
ui(new Ui::config_widget_device)
|
||
|
{
|
||
|
ui->setupUi(this);
|
||
|
_indices.insert(std::map<QString, int>::value_type("player", ui->stackedWidget->addWidget(new widget_player(this))));
|
||
|
}
|
||
|
|
||
|
widget_device::~widget_device()
|
||
|
{
|
||
|
delete ui;
|
||
|
}
|
||
|
|
||
|
void widget_device::set_node(data_model_node *node)
|
||
|
{
|
||
|
if(QString(node->metaObject()->className()) != "gtl::device")
|
||
|
{
|
||
|
ui->stackedWidget->setCurrentIndex(0);
|
||
|
}
|
||
|
if(static_cast<gtl::device*>(node)->device_type() == "player")
|
||
|
{
|
||
|
static_cast<widget_player*>(ui->stackedWidget->widget(_indices["player"]))->set_player(static_cast<gtl::device*>(node));
|
||
|
ui->stackedWidget->setCurrentIndex(_indices["player"]);
|
||
|
|
||
|
}
|
||
|
else
|
||
|
{
|
||
|
ui->stackedWidget->setCurrentIndex(1);
|
||
|
ui->id->setText(static_cast<gtl::device*>(node)->id());
|
||
|
ui->rate->setValue(static_cast<gtl::device*>(node)->rate());
|
||
|
}
|
||
|
}
|
||
|
}
|
||
|
}
|
||
|
}
|