Skip to content

Commit

Permalink
#5200: Migrate more onRadiantShutdown() to onMainFrameShuttingDown().
Browse files Browse the repository at this point in the history
  • Loading branch information
codereader committed Aug 28, 2020
1 parent 47c4a09 commit 89cf6c5
Show file tree
Hide file tree
Showing 12 changed files with 33 additions and 25 deletions.
8 changes: 4 additions & 4 deletions plugins/dm.editing/AIEditingPanel.cpp
Expand Up @@ -5,7 +5,7 @@
#include "ieclass.h"
#include "itextstream.h"
#include "ientityinspector.h"
#include "iradiant.h"
#include "imainframe.h"
#include "iundo.h"
#include "igroupdialog.h"
#include "iuimanager.h"
Expand Down Expand Up @@ -39,8 +39,8 @@ AIEditingPanel::AIEditingPanel() :

constructWidgets();

GlobalRadiant().signal_radiantShutdown().connect(
sigc::mem_fun(*this, &AIEditingPanel::onRadiantShutdown)
GlobalMainFrame().signal_MainFrameShuttingDown().connect(
sigc::mem_fun(*this, &AIEditingPanel::onMainFrameShuttingDown)
);

_selectionChangedSignal = GlobalSelectionSystem().signal_selectionChanged().connect(
Expand Down Expand Up @@ -288,7 +288,7 @@ void AIEditingPanel::onMainFrameConstructed()
sigc::mem_fun(Instance(), &AIEditingPanel::updateWidgetsFromSelection));
}

void AIEditingPanel::onRadiantShutdown()
void AIEditingPanel::onMainFrameShuttingDown()
{
_undoHandler.disconnect();
_redoHandler.disconnect();
Expand Down
2 changes: 1 addition & 1 deletion plugins/dm.editing/AIEditingPanel.h
Expand Up @@ -80,7 +80,7 @@ class AIEditingPanel :
const std::string& buttonLabel, const std::string& buttonIcon,
const std::string& key);

void onRadiantShutdown();
void onMainFrameShuttingDown();
void onSelectionChanged(const ISelectable& selectable);

void rescanSelection();
Expand Down
2 changes: 2 additions & 0 deletions radiant/RadiantModule.cpp
Expand Up @@ -60,6 +60,8 @@ void RadiantModule::shutdownModule()
{
rMessage() << getName() << "::shutdownModule called." << std::endl;

broadcastShutdownEvent();

_radiantStarted.clear();
_radiantShutdown.clear();
}
Expand Down
11 changes: 4 additions & 7 deletions radiant/ui/mainframe/MainFrame.cpp
Expand Up @@ -74,7 +74,6 @@ const StringSet& MainFrame::getDependencies() const
_dependencies.insert(MODULE_ORTHOVIEWMANAGER);
_dependencies.insert(MODULE_CAMERA);
_dependencies.insert(MODULE_MAP);
_dependencies.insert(MODULE_RADIANT_APP);
}

return _dependencies;
Expand Down Expand Up @@ -149,8 +148,9 @@ void MainFrame::initialiseModule(const IApplicationContext& ctx)
sigc::mem_fun(this, &MainFrame::updateTitle)
);

GlobalRadiant().signal_radiantStarted().connect(
sigc::mem_fun(this, &MainFrame::onRadiantStarted));
// Subscribe for the post-module init event
module::GlobalModuleRegistry().signal_allModulesInitialised().connect(
sigc::mem_fun(this, &MainFrame::postModuleInitialisation));
}

void MainFrame::shutdownModule()
Expand All @@ -173,7 +173,7 @@ void MainFrame::exitCmd(const cmd::ArgumentList& args)
}
}

void MainFrame::onRadiantStarted()
void MainFrame::postModuleInitialisation()
{
// Initialise the mainframe
construct();
Expand Down Expand Up @@ -354,9 +354,6 @@ void MainFrame::onTopLevelFrameClose(wxCloseEvent& ev)
signal_MainFrameShuttingDown().emit();
signal_MainFrameShuttingDown().clear();

// TODO: Remove this
radiant::getGlobalRadiant()->broadcastShutdownEvent();

// Destroy the actual window
_topLevelWindow->Destroy();

Expand Down
2 changes: 1 addition & 1 deletion radiant/ui/mainframe/MainFrame.h
Expand Up @@ -91,7 +91,7 @@ class MainFrame :
void createTopLevelWindow();

// Constructs the MainFrame and shows the Window
void onRadiantStarted();
void postModuleInitialisation();

#ifdef WIN32
// Enables or disabled desktop composition, Windows-specific
Expand Down
6 changes: 3 additions & 3 deletions radiant/uimanager/GroupDialog.cpp
Expand Up @@ -53,8 +53,8 @@ void GroupDialog::construct()
{
InstancePtr() = GroupDialogPtr(new GroupDialog);

GlobalRadiant().signal_radiantShutdown().connect(
sigc::mem_fun(*InstancePtr(), &GroupDialog::onRadiantShutdown)
GlobalMainFrame().signal_MainFrameShuttingDown().connect(
sigc::mem_fun(*InstancePtr(), &GroupDialog::onMainFrameShuttingDown)
);

GlobalMainFrame().signal_MainFrameConstructed().connect(
Expand Down Expand Up @@ -249,7 +249,7 @@ void GroupDialog::onMainFrameConstructed()
}
}

void GroupDialog::onRadiantShutdown()
void GroupDialog::onMainFrameShuttingDown()
{
if (IsShownOnScreen())
{
Expand Down
2 changes: 1 addition & 1 deletion radiant/uimanager/GroupDialog.h
Expand Up @@ -113,7 +113,7 @@ class GroupDialog :
/** greebo: Safely disconnects this window from
* the eventmanager and saves the window position.
*/
void onRadiantShutdown();
void onMainFrameShuttingDown();

// Shows the most recently active page
void onMainFrameConstructed();
Expand Down
4 changes: 2 additions & 2 deletions radiant/uimanager/StatusBarManager.cpp
Expand Up @@ -215,12 +215,12 @@ void StatusBarManager::rebuildStatusBar()
_statusBar->Show();
}

void StatusBarManager::onRadiantShutdown()
void StatusBarManager::onMainFrameShuttingDown()
{
flushIdleCallback();

_tempParent->Destroy();
_tempParent = NULL;
_tempParent = nullptr;
}

} // namespace ui
2 changes: 1 addition & 1 deletion radiant/uimanager/StatusBarManager.h
Expand Up @@ -98,7 +98,7 @@ class StatusBarManager :
*/
void setText(const std::string& name, const std::string& text, bool immediateUpdate) override;

void onRadiantShutdown();
void onMainFrameShuttingDown();

protected:
// Gets called when the app is idle - this fills in the status text
Expand Down
8 changes: 4 additions & 4 deletions radiant/uimanager/UIManager.cpp
Expand Up @@ -58,14 +58,14 @@ IFilterMenuPtr UIManager::createFilterMenu()

void UIManager::clear()
{
_statusBarManager->onRadiantShutdown();
_statusBarManager->onMainFrameShuttingDown();

_menuManager->clear();
_dialogManager = DialogManagerPtr();
_dialogManager.reset();

wxFileSystem::CleanUpHandlers();
wxArtProvider::Delete(_bitmapArtProvider);
_bitmapArtProvider = NULL;
_bitmapArtProvider = nullptr;
}

const std::string& UIManager::ArtIdPrefix() const
Expand Down Expand Up @@ -116,7 +116,7 @@ void UIManager::initialiseModule(const IApplicationContext& ctx)
GlobalCommandSystem().addCommand("AnimationPreview", MD5AnimationViewer::Show);
GlobalCommandSystem().addCommand("EditColourScheme", ColourSchemeEditor::DisplayDialog);

GlobalRadiant().signal_radiantShutdown().connect(
GlobalMainFrame().signal_MainFrameShuttingDown().connect(
sigc::mem_fun(this, &UIManager::clear)
);

Expand Down
7 changes: 6 additions & 1 deletion radiantcore/map/MapPositionManager.cpp
Expand Up @@ -103,7 +103,7 @@ namespace map

MapPositionManager::MapPositionManager()
{
GlobalMapModule().signal_mapEvent().connect(
_mapEventConn = GlobalMapModule().signal_mapEvent().connect(
sigc::mem_fun(this, &MapPositionManager::onMapEvent)
);

Expand All @@ -129,6 +129,11 @@ MapPositionManager::MapPositionManager()
}
}

MapPositionManager::~MapPositionManager()
{
_mapEventConn.disconnect();
}

void MapPositionManager::convertLegacyPositions()
{
Entity* worldspawn = map::current::getWorldspawn();
Expand Down
4 changes: 4 additions & 0 deletions radiantcore/map/MapPositionManager.h
@@ -1,6 +1,7 @@
#pragma once

#include <map>
#include <sigc++/connection.h>
#include "imap.h"
#include "MapPosition.h"

Expand All @@ -15,8 +16,11 @@ class MapPositionManager

PositionMap _positions;

sigc::connection _mapEventConn;

public:
MapPositionManager();
~MapPositionManager();

private:
void convertLegacyPositions();
Expand Down

0 comments on commit 89cf6c5

Please sign in to comment.