DarkRadiant: master 1f8842d0

Author Committer Branch Timestamp Parent
orbweaver orbweaver master 28.06.2022 19:49 master 5739fc5e
Affected Issues  0000410: Grey-out menu entries that are not applicable
Changeset 0000410: add support for greying out menu items based on Statements

Some menu items (such as Brush/Prism...) are based on Statements
(commands with arguments) rather than simple Commands. This change
implements the canExecute() method on Statement objects, allowing menu
items such as Prism to be disabled if the underlying command is not
runnable (ignoring arguments).

The only menu items this change currently affects are the first three
items in the Brush menu, which are all variants of the
QueryBrushPrefabSidesDialog command with different arguments.
mod - include/icommandsystem.h Diff File
mod - libs/selectionlib.h Diff File
mod - radiant/ui/UserInterfaceModule.cpp Diff File
mod - radiantcore/brush/csg/CSG.cpp Diff File
mod - radiantcore/commandsystem/CommandSystem.cpp Diff File
mod - radiantcore/commandsystem/CommandSystem.h Diff File
mod - radiantcore/commandsystem/Executable.h Diff File
mod - radiantcore/commandsystem/Statement.h Diff File