Browse Source

Simplify SetApplicationStateCmd, remove SurfaceManagerGui parts

master
Krisjanis Rijnieks 9 years ago
parent
commit
43e62ae9a9
  1. 12
      src/Application/Application.cpp
  2. 3
      src/Application/States/PresentationState.cpp
  3. 27
      src/Commands/SetApplicationStateCmd.cpp
  4. 11
      src/Commands/SetApplicationStateCmd.h

12
src/Application/Application.cpp

@ -98,29 +98,25 @@ void Application::onKeyPressed(ofKeyEventArgs & args){
case '1':
_cmdManager.exec(
new ofx::piMapper::SetApplicationStateCmd(
this, PresentationState::instance(),
&_gui, GuiMode::NONE));
this, PresentationState::instance()));
break;
case '2':
_cmdManager.exec(
new ofx::piMapper::SetApplicationStateCmd(
this, TextureMappingState::instance(),
&_gui, GuiMode::TEXTURE_MAPPING));
this, TextureMappingState::instance()));
break;
case '3':
_cmdManager.exec(
new ofx::piMapper::SetApplicationStateCmd(
this, ProjectionMappingState::instance(),
&_gui, GuiMode::PROJECTION_MAPPING));
this, ProjectionMappingState::instance()));
break;
case '4':
_cmdManager.exec(
new ofx::piMapper::SetApplicationStateCmd(
this, SourceSelectionState::instance(),
&_gui, GuiMode::SOURCE_SELECTION));
this, SourceSelectionState::instance()));
break;
case 'f':

3
src/Application/States/PresentationState.cpp

@ -22,8 +22,7 @@ void PresentationState::draw(Application * app){
void PresentationState::onMousePressed(Application * app, ofMouseEventArgs & args){
app->getCmdManager()->exec(
new ofx::piMapper::SetApplicationStateCmd(
app, ProjectionMappingState::instance(),
app->getGui(), GuiMode::PROJECTION_MAPPING));
app, ProjectionMappingState::instance()));
}
} // namespace piMapper

27
src/Commands/SetApplicationStateCmd.cpp

@ -4,18 +4,11 @@ namespace ofx {
namespace piMapper {
SetApplicationStateCmd::SetApplicationStateCmd(Application * app,
ApplicationBaseState * st,
SurfaceManagerGui * gui,
int mode){
ApplicationBaseState * st){
_application = app;
_prevApplicationState = 0;
_applicationState = st;
// TODO: To be removed
_gui = gui;
_prevGuiMode = -1;
_mode = mode;
}
void SetApplicationStateCmd::exec(){
@ -27,9 +20,11 @@ void SetApplicationStateCmd::exec(){
Gui::instance()->getTextureEditorWidget().setSurface(
_application->getSurfaceManager()->getSelectedSurface());
// TODO: To be removed.
_prevGuiMode = _gui->getMode();
_gui->setMode(_mode);
if(_applicationState != PresentationState::instance()){
ofShowCursor();
}else{
ofHideCursor();
}
}
void SetApplicationStateCmd::undo(){
@ -37,8 +32,14 @@ void SetApplicationStateCmd::undo(){
_application->setState(_prevApplicationState);
_application->getState()->setTranslation(_translation);
// TODO: To be removed.
_gui->setMode(_prevGuiMode);
Gui::instance()->getTextureEditorWidget().setSurface(
_application->getSurfaceManager()->getSelectedSurface());
if(_prevApplicationState != PresentationState::instance()){
ofShowCursor();
}else{
ofHideCursor();
}
}
} // namespace piMapper

11
src/Commands/SetApplicationStateCmd.h

@ -2,8 +2,6 @@
#include "BaseCmd.h"
#include "Application.h"
#include "SurfaceManagerGui.h"
#include "Gui.h"
namespace ofx {
namespace piMapper {
@ -15,9 +13,7 @@ class SetApplicationStateCmd : public BaseUndoCmd {
public:
SetApplicationStateCmd(Application * app,
ApplicationBaseState * st,
SurfaceManagerGui * gui,
int mode);
ApplicationBaseState * st);
void exec();
void undo();
@ -29,11 +25,6 @@ class SetApplicationStateCmd : public BaseUndoCmd {
ofPoint _translation;
// TODO: Remove these after porting to app state system is done
SurfaceManagerGui * _gui;
int _prevGuiMode;
int _mode;
};
} // namespace piMapper

Loading…
Cancel
Save