Skip to content

Commit

Permalink
#5408: Migrate UI classes to subscribe to the IMap postUndo/postRedo …
Browse files Browse the repository at this point in the history
…signals instead of the GlobalUndoSystem()
  • Loading branch information
codereader committed Oct 24, 2021
1 parent 1154843 commit 3c68884
Show file tree
Hide file tree
Showing 7 changed files with 17 additions and 22 deletions.
5 changes: 3 additions & 2 deletions plugins/dm.editing/AIEditingPanel.cpp
Expand Up @@ -3,6 +3,7 @@
#include "i18n.h"
#include "iselection.h"
#include "ieclass.h"
#include "imap.h"
#include "itextstream.h"
#include "ui/ientityinspector.h"
#include "ui/imainframe.h"
Expand Down Expand Up @@ -281,9 +282,9 @@ void AIEditingPanel::onMainFrameConstructed()
Instance()._tempParent->Destroy();
Instance()._tempParent = nullptr;

Instance()._undoHandler = GlobalUndoSystem().signal_postUndo().connect(
Instance()._undoHandler = GlobalMapModule().signal_postUndo().connect(
sigc::mem_fun(Instance(), &AIEditingPanel::updateWidgetsFromSelection));
Instance()._redoHandler = GlobalUndoSystem().signal_postRedo().connect(
Instance()._redoHandler = GlobalMapModule().signal_postRedo().connect(
sigc::mem_fun(Instance(), &AIEditingPanel::updateWidgetsFromSelection));
}

Expand Down
5 changes: 3 additions & 2 deletions radiant/textool/TexTool.cpp
Expand Up @@ -9,6 +9,7 @@
#include "ui/imainframe.h"
#include "igl.h"
#include "iundo.h"
#include "imap.h"
#include "igrid.h"
#include "iradiant.h"
#include "ui/itoolbarmanager.h"
Expand Down Expand Up @@ -227,9 +228,9 @@ void TexTool::_preShow()
radiant::TypeListener<selection::GridSnapRequest>(
sigc::mem_fun(this, &TexTool::handleGridSnapRequest)));

_undoHandler = GlobalUndoSystem().signal_postUndo().connect(
_undoHandler = GlobalMapModule().signal_postUndo().connect(
sigc::mem_fun(this, &TexTool::onUndoRedoOperation));
_redoHandler = GlobalUndoSystem().signal_postRedo().connect(
_redoHandler = GlobalMapModule().signal_postRedo().connect(
sigc::mem_fun(this, &TexTool::onUndoRedoOperation));

_manipulatorChanged = GlobalTextureToolSelectionSystem().signal_activeManipulatorChanged().connect(
Expand Down
4 changes: 2 additions & 2 deletions radiant/ui/lightinspector/LightInspector.cpp
Expand Up @@ -274,9 +274,9 @@ void LightInspector::_preShow()
_redoHandler.disconnect();

// Register self as observer to receive events
_undoHandler = GlobalUndoSystem().signal_postUndo().connect(
_undoHandler = GlobalMapModule().signal_postUndo().connect(
sigc::mem_fun(this, &LightInspector::update));
_redoHandler = GlobalUndoSystem().signal_postRedo().connect(
_redoHandler = GlobalMapModule().signal_postRedo().connect(
sigc::mem_fun(this, &LightInspector::update));

// Register self to the SelSystem to get notified upon selection changes.
Expand Down
4 changes: 2 additions & 2 deletions radiant/ui/merge/MergeControlDialog.cpp
Expand Up @@ -497,9 +497,9 @@ void MergeControlDialog::_preShow()
sigc::mem_fun(this, &MergeControlDialog::onMapEvent)
);

_undoHandler = GlobalUndoSystem().signal_postUndo().connect(
_undoHandler = GlobalMapModule().signal_postUndo().connect(
sigc::mem_fun(this, &MergeControlDialog::queueUpdate));
_redoHandler = GlobalUndoSystem().signal_postRedo().connect(
_redoHandler = GlobalMapModule().signal_postRedo().connect(
sigc::mem_fun(this, &MergeControlDialog::queueUpdate));

// Check for selection changes before showing the dialog again
Expand Down
4 changes: 2 additions & 2 deletions radiant/ui/patch/PatchInspector.cpp
Expand Up @@ -272,9 +272,9 @@ void PatchInspector::_preShow()
// Register self to the SelSystem to get notified upon selection changes.
GlobalSelectionSystem().addObserver(this);

_undoHandler = GlobalUndoSystem().signal_postUndo().connect(
_undoHandler = GlobalMapModule().signal_postUndo().connect(
sigc::mem_fun(this, &PatchInspector::queueUpdate));
_redoHandler = GlobalUndoSystem().signal_postRedo().connect(
_redoHandler = GlobalMapModule().signal_postRedo().connect(
sigc::mem_fun(this, &PatchInspector::queueUpdate));

// Check for selection changes before showing the dialog again
Expand Down
4 changes: 2 additions & 2 deletions radiant/ui/surfaceinspector/SurfaceInspector.cpp
Expand Up @@ -806,9 +806,9 @@ void SurfaceInspector::_preShow()
_selectionChanged = GlobalSelectionSystem().signal_selectionChanged().connect(
[this] (const ISelectable&) { doUpdate(); });

_undoHandler = GlobalUndoSystem().signal_postUndo().connect(
_undoHandler = GlobalMapModule().signal_postUndo().connect(
sigc::mem_fun(this, &SurfaceInspector::doUpdate));
_redoHandler = GlobalUndoSystem().signal_postRedo().connect(
_redoHandler = GlobalMapModule().signal_postRedo().connect(
sigc::mem_fun(this, &SurfaceInspector::doUpdate));

// Get notified about texture changes
Expand Down
13 changes: 3 additions & 10 deletions radiantcore/selection/shaderclipboard/ShaderClipboard.cpp
Expand Up @@ -207,24 +207,17 @@ const std::string& ShaderClipboard::getName() const

const StringSet& ShaderClipboard::getDependencies() const
{
static StringSet _dependencies;

if (_dependencies.empty())
{
_dependencies.insert(MODULE_UNDOSYSTEM);
_dependencies.insert(MODULE_MAP);
}

static StringSet _dependencies{ MODULE_MAP };
return _dependencies;
}

void ShaderClipboard::initialiseModule(const IApplicationContext& ctx)
{
rMessage() << getName() << "::initialiseModule called." << std::endl;

_postUndoConn = GlobalUndoSystem().signal_postUndo().connect(
_postUndoConn = GlobalMapModule().signal_postUndo().connect(
sigc::mem_fun(this, &ShaderClipboard::onUndoRedoOperation));
_postRedoConn = GlobalUndoSystem().signal_postRedo().connect(
_postRedoConn = GlobalMapModule().signal_postRedo().connect(
sigc::mem_fun(this, &ShaderClipboard::onUndoRedoOperation));

_mapEventConn = GlobalMapModule().signal_mapEvent().connect(
Expand Down

0 comments on commit 3c68884

Please sign in to comment.