logic: UndoRedo
UndoRedo working for ActiveTokensMessages
This commit is contained in:
@@ -0,0 +1,60 @@
|
||||
#include "qt/view/QtUndoRedoView.h"
|
||||
|
||||
#include "qt/view/QtMainView.h"
|
||||
#include "qt/view/QtViewWidgetWrapper.h"
|
||||
#include "utility/text/TextAccess.h"
|
||||
|
||||
QtUndoRedoView::QtUndoRedoView(ViewLayout* viewLayout)
|
||||
: UndoRedoView(viewLayout)
|
||||
, m_setRedoButtonEnabledFunctor(std::bind(&QtUndoRedoView::doSetRedoButtonEnabled, this, std::placeholders::_1))
|
||||
, m_setUndoButtonEnabledFunctor(std::bind(&QtUndoRedoView::doSetUndoButtonEnabled, this, std::placeholders::_1))
|
||||
{
|
||||
m_widget = std::make_shared<QtUndoRedo>();
|
||||
setStyleSheet();
|
||||
}
|
||||
|
||||
QtUndoRedoView::~QtUndoRedoView()
|
||||
{
|
||||
}
|
||||
|
||||
void QtUndoRedoView::createWidgetWrapper()
|
||||
{
|
||||
setWidgetWrapper(std::make_shared<QtViewWidgetWrapper>(m_widget));
|
||||
}
|
||||
|
||||
void QtUndoRedoView::initView()
|
||||
{
|
||||
}
|
||||
|
||||
void QtUndoRedoView::refreshView()
|
||||
{
|
||||
}
|
||||
|
||||
|
||||
void QtUndoRedoView::setStyleSheet()
|
||||
{
|
||||
std::string css = TextAccess::createFromFile("data/gui/undoredo_view/undoredo_view.css")->getText();
|
||||
|
||||
m_widget->setStyleSheet(css.c_str());
|
||||
|
||||
}
|
||||
|
||||
void QtUndoRedoView::doSetRedoButtonEnabled(bool enabled)
|
||||
{
|
||||
m_widget->setRedoButtonEnabled(enabled);
|
||||
}
|
||||
|
||||
void QtUndoRedoView::doSetUndoButtonEnabled(bool enabled)
|
||||
{
|
||||
m_widget->setUndoButtonEnabled(enabled);
|
||||
}
|
||||
|
||||
void QtUndoRedoView::setRedoButtonEnabled(bool enabled)
|
||||
{
|
||||
m_setRedoButtonEnabledFunctor(enabled);
|
||||
}
|
||||
|
||||
void QtUndoRedoView::setUndoButtonEnabled(bool enabled)
|
||||
{
|
||||
m_setUndoButtonEnabledFunctor(enabled);
|
||||
}
|
||||
@@ -0,0 +1,37 @@
|
||||
#ifndef QT_UNDO_REDO_VIEW_H
|
||||
#define QT_UNDO_REDO_VIEW_H
|
||||
|
||||
#include <memory>
|
||||
#include <string>
|
||||
|
||||
#include "component/view/UndoRedoView.h"
|
||||
#include "qt/element/QtUndoRedo.h"
|
||||
#include "qt/utility/QtThreadedFunctor.h"
|
||||
|
||||
class QtUndoRedoView : public UndoRedoView
|
||||
{
|
||||
public:
|
||||
QtUndoRedoView(ViewLayout* viewLayout);
|
||||
~QtUndoRedoView();
|
||||
|
||||
// View implementation
|
||||
virtual void createWidgetWrapper();
|
||||
virtual void initView();
|
||||
virtual void refreshView();
|
||||
|
||||
// UndoRedo view implementation
|
||||
virtual void setRedoButtonEnabled(bool enabled);
|
||||
virtual void setUndoButtonEnabled(bool enabled);
|
||||
|
||||
private:
|
||||
void doSetRedoButtonEnabled(bool enabled);
|
||||
void doSetUndoButtonEnabled(bool enabled);
|
||||
|
||||
QtThreadedFunctor<bool> m_setRedoButtonEnabledFunctor;
|
||||
QtThreadedFunctor<bool> m_setUndoButtonEnabledFunctor;
|
||||
|
||||
void setStyleSheet();
|
||||
std::shared_ptr<QtUndoRedo> m_widget;
|
||||
};
|
||||
|
||||
#endif // !QT_UNDO_REDO_VIEW_H
|
||||
@@ -5,6 +5,7 @@
|
||||
#include "qt/view/QtMainView.h"
|
||||
#include "qt/view/QtSearchView.h"
|
||||
#include "qt/view/QtStatusBarView.h"
|
||||
#include "qt/view/QtUndoRedoView.h"
|
||||
|
||||
QtViewFactory::QtViewFactory()
|
||||
{
|
||||
@@ -38,3 +39,8 @@ std::shared_ptr<StatusBarView> QtViewFactory::createStatusBarView(ViewLayout* vi
|
||||
{
|
||||
return View::createAndDontAddToLayout<QtStatusBarView>(viewLayout);
|
||||
}
|
||||
|
||||
std::shared_ptr<UndoRedoView> QtViewFactory::createUndoRedoView(ViewLayout* viewLayout) const
|
||||
{
|
||||
return View::create<QtUndoRedoView>(viewLayout);
|
||||
}
|
||||
|
||||
@@ -14,6 +14,7 @@ public:
|
||||
virtual std::shared_ptr<GraphView> createGraphView(ViewLayout* viewLayout) const;
|
||||
virtual std::shared_ptr<SearchView> createSearchView(ViewLayout* viewLayout) const;
|
||||
virtual std::shared_ptr<StatusBarView> createStatusBarView(ViewLayout* viewLayout) const;
|
||||
virtual std::shared_ptr<UndoRedoView> createUndoRedoView(ViewLayout* viewLayout) const;
|
||||
};
|
||||
|
||||
#endif // QT_VIEW_FACTORY_H
|
||||
|
||||
Reference in New Issue
Block a user