View Issue Details
ID | Project | Category | View Status | Date Submitted | Last Update |
---|---|---|---|---|---|
0005180 | DarkRadiant | Design/Coding | public | 15.03.2020 04:35 | 05.02.2021 11:29 |
Reporter | greebo | Assigned To | greebo | ||
Priority | normal | Severity | tweak | Reproducibility | N/A |
Status | closed | Resolution | fixed | ||
Product Version | 2.7.0 | ||||
Target Version | 2.9.0 | Fixed in Version | 2.9.0 | ||
Summary | 0005180: Simplify Commands and Event registration | ||||
Description | Right now we have lots of calls looking like this: GlobalEventManager().addCommand("DeleteSelection", "DeleteSelection"); For UI elements being able to target commands, an event has to be created and named. Usually this event is directly linked to the a command or statement in the CommandSystem, which is named exactly the same. The EventManager code should be made more intelligent to automatically detect whether a command with a certain name is present in the CommandSystem, without having the modules register proxy events with the same name. | ||||
Tags | No tags attached. | ||||
DarkRadiant: eventregistration 73d41251 10.05.2020 17:45 Details Diff |
0005180: Experimental step, removing all IEventManager::addCommand calls with statement == name |
Affected Issues 0005180 |
|
mod - include/ieventmanager.h | Diff File | ||
mod - plugins/dm.conversation/plugin.cpp | Diff File | ||
mod - plugins/dm.difficulty/plugin.cpp | Diff File | ||
mod - plugins/dm.editing/plugin.cpp | Diff File | ||
mod - plugins/dm.gui/plugin.cpp | Diff File | ||
mod - plugins/dm.objectives/objectives.cpp | Diff File | ||
mod - plugins/dm.stimresponse/plugin.cpp | Diff File | ||
mod - plugins/script/ScriptCommand.cpp | Diff File | ||
mod - plugins/script/ScriptingSystem.cpp | Diff File | ||
mod - radiant/brush/BrushModule.cpp | Diff File | ||
mod - radiant/brush/csg/CSG.cpp | Diff File | ||
mod - radiant/camera/GlobalCamera.cpp | Diff File | ||
mod - radiant/clipper/Clipper.cpp | Diff File | ||
mod - radiant/eclassmgr/EClassManager.cpp | Diff File | ||
mod - radiant/layers/LayerModule.cpp | Diff File | ||
mod - radiant/map/Map.cpp | Diff File | ||
mod - radiant/map/MapPositionManager.cpp | Diff File | ||
mod - radiant/map/PointFile.cpp | Diff File | ||
mod - radiant/map/RegionManager.cpp | Diff File | ||
mod - radiant/model/ModelCache.cpp | Diff File | ||
mod - radiant/particles/ParticlesManager.cpp | Diff File | ||
mod - radiant/particles/editor/ParticleEditorModule.h | Diff File | ||
mod - radiant/patch/PatchCreators.cpp | Diff File | ||
mod - radiant/selection/RadiantSelectionSystem.cpp | Diff File | ||
mod - radiant/selection/algorithm/General.cpp | Diff File | ||
mod - radiant/selection/group/SelectionGroupModule.cpp | Diff File | ||
mod - radiant/selection/selectionset/SelectionSetModule.cpp | Diff File | ||
mod - radiant/textool/TexTool.cpp | Diff File | ||
mod - radiant/ui/UserInterfaceModule.cpp | Diff File | ||
mod - radiant/ui/aas/AasControlDialog.cpp | Diff File | ||
mod - radiant/ui/einspector/EntityInspector.cpp | Diff File | ||
mod - radiant/ui/filters/FilterUserInterface.cpp | Diff File | ||
mod - radiant/ui/grid/GridUserInterface.cpp | Diff File | ||
mod - radiant/ui/mainframe/LayoutCommand.h | Diff File | ||
mod - radiant/ui/mainframe/MainFrame.cpp | Diff File | ||
mod - radiant/ui/mediabrowser/MediaBrowser.cpp | Diff File | ||
mod - radiant/ui/mru/MRU.cpp | Diff File | ||
mod - radiant/ui/texturebrowser/TextureBrowserManager.cpp | Diff File | ||
mod - radiant/uimanager/UIManager.cpp | Diff File | ||
mod - radiant/undo/UndoSystem.cpp | Diff File | ||
mod - radiant/xyview/GlobalXYWnd.cpp | Diff File | ||
mod - radiantcore/commandsystem/CommandSystem.cpp | Diff File | ||
DarkRadiant: eventregistration 5fc31547 11.05.2020 05:04 Details Diff |
0005180: Associate accelerators to statements if possible. Add EventManager::handleKeyEvent method doing the logic instead of the GlobalKeyEventFilter. |
Affected Issues 0005180 |
|
mod - include/icommandsystem.h | Diff File | ||
mod - radiant/eventmanager/Accelerator.cpp | Diff File | ||
mod - radiant/eventmanager/Accelerator.h | Diff File | ||
mod - radiant/eventmanager/EventManager.cpp | Diff File | ||
mod - radiant/eventmanager/EventManager.h | Diff File | ||
mod - radiant/eventmanager/GlobalKeyEventFilter.cpp | Diff File | ||
mod - radiantcore/commandsystem/CommandSystem.cpp | Diff File | ||
mod - radiantcore/commandsystem/CommandSystem.h | Diff File | ||
DarkRadiant: eventregistration 930786d8 11.05.2020 07:52 Details Diff |
0005180: Another WIP commit, changing accelerator and menu item handling. |
Affected Issues 0005180 |
|
mod - include/ieventmanager.h | Diff File | ||
mod - include/iuimanager.h | Diff File | ||
mod - radiant/eventmanager/EventManager.cpp | Diff File | ||
mod - radiant/eventmanager/EventManager.h | Diff File | ||
mod - radiant/uimanager/menu/MenuBar.h | Diff File | ||
mod - radiant/uimanager/menu/MenuElement.cpp | Diff File | ||
mod - radiant/uimanager/menu/MenuElement.h | Diff File | ||
mod - radiant/uimanager/menu/MenuFolder.h | Diff File | ||
mod - radiant/uimanager/menu/MenuItem.cpp | Diff File | ||
mod - radiant/uimanager/menu/MenuItem.h | Diff File | ||
mod - radiant/uimanager/menu/MenuRootElement.h | Diff File | ||
mod - radiant/uimanager/menu/MenuSeparator.h | Diff File | ||
DarkRadiant: eventregistration b39df35e 11.05.2020 12:47 Details Diff |
0005180: Accelerator handling |
Affected Issues 0005180 |
|
mod - radiant/eventmanager/Accelerator.cpp | Diff File | ||
mod - radiant/eventmanager/Accelerator.h | Diff File | ||
mod - radiant/eventmanager/EventManager.cpp | Diff File | ||
mod - radiant/eventmanager/EventManager.h | Diff File | ||
mod - radiant/eventmanager/Statement.cpp | Diff File | ||
mod - radiant/uimanager/menu/MenuItem.cpp | Diff File | ||
DarkRadiant: eventregistration 3e04e412 11.05.2020 18:34 Details Diff |
0005180: More accelerator handling changes |
Affected Issues 0005180 |
|
mod - include/ieventmanager.h | Diff File | ||
mod - include/iuimanager.h | Diff File | ||
mod - radiant/eventmanager/Accelerator.cpp | Diff File | ||
mod - radiant/eventmanager/Accelerator.h | Diff File | ||
mod - radiant/eventmanager/Event.h | Diff File | ||
mod - radiant/eventmanager/EventManager.cpp | Diff File | ||
mod - radiant/eventmanager/EventManager.h | Diff File | ||
mod - radiant/eventmanager/Toggle.cpp | Diff File | ||
mod - radiant/eventmanager/Toggle.h | Diff File | ||
mod - radiant/ui/commandlist/ShortcutChooser.cpp | Diff File | ||
mod - radiant/uimanager/menu/MenuElement.h | Diff File | ||
mod - radiant/uimanager/menu/MenuItem.cpp | Diff File | ||
mod - radiant/uimanager/menu/MenuItem.h | Diff File | ||
DarkRadiant: eventregistration 1c430626 12.05.2020 17:42 Details Diff |
0005180: IMenuElements are now offering a clicked signal to subscribe to. |
Affected Issues 0005180 |
|
mod - include/iuimanager.h | Diff File | ||
mod - radiant/eventmanager/EventManager.cpp | Diff File | ||
mod - radiant/eventmanager/EventManager.h | Diff File | ||
mod - radiant/eventmanager/Statement.cpp | Diff File | ||
mod - radiant/eventmanager/Statement.h | Diff File | ||
mod - radiant/eventmanager/Toggle.cpp | Diff File | ||
mod - radiant/eventmanager/Toggle.h | Diff File | ||
mod - radiant/uimanager/menu/MenuElement.h | Diff File | ||
mod - radiant/uimanager/menu/MenuItem.cpp | Diff File | ||
mod - radiant/uimanager/menu/MenuItem.h | Diff File | ||
DarkRadiant: eventregistration 7e0dc324 12.05.2020 18:46 Details Diff |
0005180: Disconnect signals on destruction to prevent double-firing. |
Affected Issues 0005180 |
|
mod - radiant/eventmanager/RegistryToggle.h | Diff File | ||
mod - radiant/eventmanager/Statement.cpp | Diff File | ||
mod - radiant/eventmanager/Toggle.cpp | Diff File | ||
DarkRadiant: eventregistration 8ddc9e6e 12.05.2020 19:32 Details Diff |
0005180: Allow disconnection of registry keys observed by registry::observeBooleanKey |
Affected Issues 0005180 |
|
mod - libs/registry/adaptors.h | Diff File | ||
mod - radiant/eventmanager/RegistryToggle.h | Diff File | ||
DarkRadiant: eventregistration 53753838 13.05.2020 04:22 Details Diff |
0005180: Menu item accelerator strings are kept in sync |
Affected Issues 0005180 |
|
mod - radiant/eventmanager/EventManager.cpp | Diff File | ||
mod - radiant/eventmanager/EventManager.h | Diff File | ||
DarkRadiant: eventregistration 3d8016eb 13.05.2020 04:51 Details Diff |
0005180: Accelerator handling |
Affected Issues 0005180 |
|
mod - radiant/eventmanager/EventManager.cpp | Diff File | ||
mod - radiant/ui/commandlist/CommandList.cpp | Diff File | ||
DarkRadiant: eventregistration 1d95fc69 14.05.2020 18:44 Details Diff |
0005180: Tool items connected to statements are working again |
Affected Issues 0005180 |
|
mod - include/ieventmanager.h | Diff File | ||
mod - radiant/eventmanager/Event.h | Diff File | ||
mod - radiant/eventmanager/EventManager.cpp | Diff File | ||
mod - radiant/eventmanager/EventManager.h | Diff File | ||
mod - radiant/eventmanager/SaveEventVisitor.h | Diff File | ||
mod - radiant/eventmanager/Statement.cpp | Diff File | ||
mod - radiant/eventmanager/Toggle.cpp | Diff File | ||
mod - radiant/uimanager/ToolbarManager.cpp | Diff File | ||
DarkRadiant: eventregistration 1b580898 14.05.2020 19:11 Details Diff |
0005180: Toolbars are properly unregistering themselves on destruction. |
Affected Issues 0005180 |
|
mod - radiant/eventmanager/EventManager.cpp | Diff File | ||
mod - radiant/ui/mainframe/TopLevelFrame.cpp | Diff File | ||
mod - radiant/ui/mainframe/TopLevelFrame.h | Diff File | ||
mod - radiant/uimanager/ToolbarManager.cpp | Diff File | ||
mod - radiant/uimanager/ToolbarManager.h | Diff File | ||
DarkRadiant: eventregistration c8358c29 15.05.2020 04:48 Details Diff |
0005180: Move most of the toolbar logic to the ToolbarManager. |
Affected Issues 0005180 |
|
mod - include/ieventmanager.h | Diff File | ||
mod - radiant/eventmanager/EventManager.cpp | Diff File | ||
mod - radiant/eventmanager/EventManager.h | Diff File | ||
mod - radiant/uimanager/ToolbarManager.cpp | Diff File | ||
mod - radiant/uimanager/ToolbarManager.h | Diff File | ||
DarkRadiant: eventregistration 44f495c5 15.05.2020 06:16 Details Diff |
0005180: Connect simple buttons directly to the commandsystem |
Affected Issues 0005180 |
|
mod - include/ieventmanager.h | Diff File | ||
add - libs/wxutil/Button.h | Diff File | ||
mod - radiant/eventmanager/Event.h | Diff File | ||
mod - radiant/eventmanager/Statement.cpp | Diff File | ||
mod - radiant/eventmanager/Statement.h | Diff File | ||
mod - radiant/ui/layers/LayerControlDialog.cpp | Diff File | ||
mod - radiant/ui/surfaceinspector/SurfaceInspector.cpp | Diff File | ||
mod - radiant/ui/texturebrowser/TextureBrowser.cpp | Diff File | ||
mod - tools/msvc/wxutillib.vcxproj | Diff File | ||
mod - tools/msvc/wxutillib.vcxproj.filters | Diff File | ||
DarkRadiant: eventregistration 3f03436a 15.05.2020 07:11 Details Diff |
0005180: Take back some of the changes introduced earlier, they didn't make things easier. |
Affected Issues 0005180 |
|
mod - include/ieventmanager.h | Diff File | ||
mod - include/iuimanager.h | Diff File | ||
mod - radiant/eventmanager/Event.h | Diff File | ||
mod - radiant/eventmanager/EventManager.cpp | Diff File | ||
mod - radiant/eventmanager/EventManager.h | Diff File | ||
mod - radiant/eventmanager/Statement.cpp | Diff File | ||
mod - radiant/eventmanager/Statement.h | Diff File | ||
mod - radiant/eventmanager/Toggle.cpp | Diff File | ||
mod - radiant/eventmanager/Toggle.h | Diff File | ||
mod - radiant/uimanager/menu/MenuElement.h | Diff File | ||
mod - radiant/uimanager/menu/MenuItem.cpp | Diff File | ||
mod - radiant/uimanager/menu/MenuItem.h | Diff File | ||
DarkRadiant: eventregistration 9344476e 15.05.2020 07:15 Details Diff |
0005180: Migrate FilterMenu to use registerMenuItem instead of doing the logic on its own |
Affected Issues 0005180 |
|
mod - radiant/ui/filters/FilterMenu.cpp | Diff File | ||
DarkRadiant: eventregistration a84d959a 15.05.2020 10:17 Details Diff |
0005180: Remove accelerator handling from Event classes |
Affected Issues 0005180 |
|
mod - include/ieventmanager.h | Diff File | ||
mod - radiant/eventmanager/Event.h | Diff File | ||
mod - radiant/eventmanager/EventManager.cpp | Diff File | ||
mod - radiant/eventmanager/Statement.cpp | Diff File | ||
mod - radiant/eventmanager/Statement.h | Diff File | ||
mod - radiant/eventmanager/Toggle.cpp | Diff File | ||
mod - radiant/eventmanager/Toggle.h | Diff File | ||
DarkRadiant: eventregistration 5be36c75 15.05.2020 10:20 Details Diff |
0005180: Remove leftover files still referencing on Gtkmm |
Affected Issues 0005180 |
|
rm - libs/wxutil/MenuItemAccelerator.cpp | Diff | ||
rm - libs/wxutil/MenuItemAccelerator.h | Diff | ||
mod - tools/msvc/wxutillib.vcxproj | Diff File | ||
mod - tools/msvc/wxutillib.vcxproj.filters | Diff File | ||
DarkRadiant: eventregistration 586d8c03 15.05.2020 10:28 Details Diff |
0005180: Remove deactivated code |
Affected Issues 0005180 |
|
mod - radiant/eventmanager/EventManager.cpp | Diff File | ||
mod - radiant/eventmanager/EventManager.h | Diff File | ||
mod - radiant/eventmanager/MouseToolManager.cpp | Diff File | ||
DarkRadiant: eventregistration e6430e52 15.05.2020 10:53 Details Diff |
0005180: Fix broken ShortcutChooser |
Affected Issues 0005180 |
|
mod - include/ieventmanager.h | Diff File | ||
mod - radiant/eventmanager/EventManager.cpp | Diff File | ||
mod - radiant/eventmanager/EventManager.h | Diff File | ||
mod - radiant/ui/commandlist/ShortcutChooser.cpp | Diff File | ||
mod - radiant/ui/commandlist/ShortcutChooser.h | Diff File | ||
DarkRadiant: eventregistration c64761ce 16.05.2020 04:59 Details Diff |
0005180: Start fixing the camera movement key handling |
Affected Issues 0005180 |
|
mod - install/input.xml | Diff File | ||
mod - radiant/camera/CamWnd.cpp | Diff File | ||
mod - radiant/camera/CamWnd.h | Diff File | ||
mod - radiant/camera/Camera.cpp | Diff File | ||
mod - radiant/camera/Camera.h | Diff File | ||
mod - radiant/camera/GlobalCamera.cpp | Diff File | ||
mod - radiant/eventmanager/EventManager.cpp | Diff File | ||
DarkRadiant: eventregistration 120b2c0f 16.05.2020 06:24 Details Diff |
0005180: Move more camera movement key handling to inner classes |
Affected Issues 0005180 |
|
mod - install/input.xml | Diff File | ||
mod - radiant/camera/Camera.cpp | Diff File | ||
mod - radiant/camera/Camera.h | Diff File | ||
mod - radiant/camera/GlobalCamera.cpp | Diff File | ||
DarkRadiant: eventregistration 67409a0e 16.05.2020 06:51 Details Diff |
0005180: Cam move up/down functionality merged into one method |
Affected Issues 0005180 |
|
mod - install/input.xml | Diff File | ||
mod - radiant/camera/Camera.cpp | Diff File | ||
mod - radiant/camera/Camera.h | Diff File | ||
mod - radiant/camera/GlobalCamera.cpp | Diff File | ||
DarkRadiant: eventregistration e37536a6 16.05.2020 15:46 Details Diff |
0005180: Add MoveCamera console command before removing the discrete events which will be bound to the KeyEvents only. |
Affected Issues 0005180 |
|
mod - radiant/camera/CamWnd.cpp | Diff File | ||
mod - radiant/camera/Camera.cpp | Diff File | ||
mod - radiant/camera/Camera.h | Diff File | ||
mod - radiant/camera/GlobalCamera.cpp | Diff File | ||
mod - radiant/camera/GlobalCamera.h | Diff File | ||
DarkRadiant: eventregistration 2e2bbb49 16.05.2020 16:32 Details Diff |
0005180: First round of cleanup in CamWnd class. |
Affected Issues 0005180 |
|
mod - radiant/camera/CamWnd.cpp | Diff File | ||
mod - radiant/camera/CamWnd.h | Diff File | ||
mod - radiant/camera/GlobalCamera.cpp | Diff File | ||
mod - radiant/camera/GlobalCamera.h | Diff File | ||
DarkRadiant: eventregistration f5cd8da0 16.05.2020 16:52 Details Diff |
0005180: GlobalCamera class cleanup |
Affected Issues 0005180 |
|
mod - radiant/camera/CamWnd.cpp | Diff File | ||
mod - radiant/camera/CamWnd.h | Diff File | ||
mod - radiant/camera/GlobalCamera.cpp | Diff File | ||
mod - radiant/camera/GlobalCamera.h | Diff File | ||
DarkRadiant: eventregistration bac9206a 16.05.2020 18:01 Details Diff |
0005180: Remove more unused code |
Affected Issues 0005180 |
|
mod - radiant/uimanager/ToolbarManager.cpp | Diff File | ||
mod - radiant/uimanager/menu/MenuItem.cpp | Diff File | ||
DarkRadiant: eventregistration 3867f3cd 16.05.2020 18:10 Details Diff |
0005180: Rename SaveEventVisitor to ShortcutSaver. Remove redundant cycling over registered events to save accelerators, they are all handled. |
Affected Issues 0005180 |
|
mod - radiant/eventmanager/EventManager.cpp | Diff File | ||
mod - tools/msvc/DarkRadiant.vcxproj | Diff File | ||
mod - tools/msvc/DarkRadiant.vcxproj.filters | Diff File | ||
DarkRadiant: eventregistration a4dc785c 16.05.2020 18:29 Details Diff |
0005180: Remove unused method from interface. Prevent duplicated commands showing up in Shortcut dialog. |
Affected Issues 0005180 |
|
mod - include/ieventmanager.h | Diff File | ||
mod - radiant/eventmanager/EventManager.cpp | Diff File | ||
mod - radiant/eventmanager/EventManager.h | Diff File | ||
DarkRadiant: eventregistration 32b4af61 16.05.2020 18:53 Details Diff |
0005180: Handle legacy command bindings to save users from having to reset all their shortcuts after upgrading. |
Affected Issues 0005180 |
|
mod - install/input.xml | Diff File | ||
mod - radiant/eventmanager/EventManager.cpp | Diff File |
Date Modified | Username | Field | Change |
---|---|---|---|
15.03.2020 04:35 | greebo | New Issue | |
15.03.2020 04:35 | greebo | Status | new => confirmed |
12.05.2020 04:06 | greebo | Changeset attached | => DarkRadiant eventregistration 73d41251 |
12.05.2020 04:06 | greebo | Changeset attached | => DarkRadiant eventregistration 5fc31547 |
12.05.2020 04:06 | greebo | Changeset attached | => DarkRadiant eventregistration 930786d8 |
12.05.2020 04:06 | greebo | Changeset attached | => DarkRadiant eventregistration b39df35e |
12.05.2020 04:06 | greebo | Changeset attached | => DarkRadiant eventregistration 3e04e412 |
12.05.2020 19:32 | greebo | Changeset attached | => DarkRadiant eventregistration 1c430626 |
12.05.2020 19:32 | greebo | Changeset attached | => DarkRadiant eventregistration 7e0dc324 |
12.05.2020 19:32 | greebo | Changeset attached | => DarkRadiant eventregistration 8ddc9e6e |
16.05.2020 04:59 | greebo | Changeset attached | => DarkRadiant eventregistration 53753838 |
16.05.2020 04:59 | greebo | Changeset attached | => DarkRadiant eventregistration 3d8016eb |
16.05.2020 04:59 | greebo | Changeset attached | => DarkRadiant eventregistration 1d95fc69 |
16.05.2020 04:59 | greebo | Changeset attached | => DarkRadiant eventregistration 1b580898 |
16.05.2020 04:59 | greebo | Changeset attached | => DarkRadiant eventregistration c8358c29 |
16.05.2020 04:59 | greebo | Changeset attached | => DarkRadiant eventregistration 44f495c5 |
16.05.2020 04:59 | greebo | Changeset attached | => DarkRadiant eventregistration 3f03436a |
16.05.2020 04:59 | greebo | Changeset attached | => DarkRadiant eventregistration 9344476e |
16.05.2020 04:59 | greebo | Changeset attached | => DarkRadiant eventregistration a84d959a |
16.05.2020 04:59 | greebo | Changeset attached | => DarkRadiant eventregistration 5be36c75 |
16.05.2020 04:59 | greebo | Changeset attached | => DarkRadiant eventregistration 586d8c03 |
16.05.2020 04:59 | greebo | Changeset attached | => DarkRadiant eventregistration e6430e52 |
16.05.2020 04:59 | greebo | Changeset attached | => DarkRadiant eventregistration c64761ce |
16.05.2020 16:53 | greebo | Changeset attached | => DarkRadiant eventregistration 120b2c0f |
16.05.2020 16:53 | greebo | Changeset attached | => DarkRadiant eventregistration 67409a0e |
16.05.2020 16:53 | greebo | Changeset attached | => DarkRadiant eventregistration e37536a6 |
16.05.2020 16:53 | greebo | Changeset attached | => DarkRadiant eventregistration 2e2bbb49 |
16.05.2020 16:53 | greebo | Changeset attached | => DarkRadiant eventregistration f5cd8da0 |
16.05.2020 18:53 | greebo | Changeset attached | => DarkRadiant eventregistration bac9206a |
16.05.2020 18:53 | greebo | Changeset attached | => DarkRadiant eventregistration 3867f3cd |
16.05.2020 18:53 | greebo | Changeset attached | => DarkRadiant eventregistration a4dc785c |
16.05.2020 18:53 | greebo | Changeset attached | => DarkRadiant eventregistration 32b4af61 |
17.09.2020 18:01 | greebo | Assigned To | => greebo |
17.09.2020 18:01 | greebo | Status | confirmed => resolved |
17.09.2020 18:01 | greebo | Resolution | open => fixed |
17.09.2020 18:01 | greebo | Fixed in Version | => 2.10.0 |
29.09.2020 16:46 | greebo | Fixed in Version | 2.10.0 => 2.9.0 |
29.09.2020 16:47 | greebo | Target Version | => 2.9.0 |
05.02.2021 11:29 | greebo | Status | resolved => closed |