ui: implemented gui abstraction and dummy view

- added abstract class tree for gui elements.
- implemented concrete gui classes that wrap the qt specific content.
- implemented first DummyView which plays nice with the ViewManager.

review id = 12
This commit is contained in:
malte_langkabel
2014-05-07 13:00:17 +02:00
parent 387618d922
commit 37d0dd33a4
51 changed files with 812 additions and 58 deletions
+38
View File
@@ -0,0 +1,38 @@
#include "qt/QtWidgetWrapper.h"
#include "gui/GuiElement.h"
#include "utility/logging/logging.h"
std::shared_ptr<QWidget> QtWidgetWrapper::getWidgetOfElement(std::shared_ptr<GuiElement> element)
{
return getWidgetOfElement(element.get());
}
std::shared_ptr<QWidget> QtWidgetWrapper::getWidgetOfElement(GuiElement* element)
{
std::shared_ptr<QWidget> widget;
std::shared_ptr<QtWidgetWrapper> qtWidgetWrapper = std::dynamic_pointer_cast<QtWidgetWrapper>(element->getWidgetWrapper());
if (!qtWidgetWrapper || qtWidgetWrapper.use_count() == 0)
{
LOG_ERROR("Trying to get the qt widget of non qt gui element.");
}
else
{
widget = qtWidgetWrapper->getWidget();
}
return widget;
}
QtWidgetWrapper::QtWidgetWrapper(std::shared_ptr<QWidget> widget)
: m_widget(widget)
{
}
QtWidgetWrapper::~QtWidgetWrapper()
{
}
std::shared_ptr<QWidget> QtWidgetWrapper::getWidget()
{
return m_widget;
}