Detailed Description

Classes

struct  HighlightTokenState
 
struct  UIActionContext
 
struct  UIAction
 
struct  UITransformAction
 
struct  UIHighlightColorAction
 
struct  UIBookmarkAction
 
class  UIActionHandler
 
class  Menu
 
class  MenuInstance
 
class  MainMenuInstance
 

Enumerations

enum  ActionPriority { LowActionPriority , NormalActionPriority , HighActionPriority }
 
enum  MenuItemVisibility { DefaultMenuItemVisibility , ShowMenuItemOnlyWhenActive , AlwaysShowMenuItem , NeverShowMenuItem }
 

Class Documentation

◆ HighlightTokenState

struct HighlightTokenState

Public Member Functions

 HighlightTokenState ()
 
Json::Value serialize () const
 
bool deserialize (const Json::Value &value)
 

Public Attributes

bool valid
 
bool focused
 
bool secondaryHighlight
 
BNInstructionTextTokenType type
 
BinaryNinja::InstructionTextToken token
 
ArchitectureRef arch
 
bool addrValid
 
bool localVarValid
 
bool isDest
 
uint64_t addr
 
BinaryNinja::Variable localVar
 
size_t tokenIndex
 
size_t characterIndex
 

Constructor & Destructor Documentation

◆ HighlightTokenState()

HighlightTokenState::HighlightTokenState ( )

Member Function Documentation

◆ serialize()

Json::Value HighlightTokenState::serialize ( ) const

◆ deserialize()

bool HighlightTokenState::deserialize ( const Json::Value &  value)

Member Data Documentation

◆ valid

bool HighlightTokenState::valid

◆ focused

bool HighlightTokenState::focused

◆ secondaryHighlight

bool HighlightTokenState::secondaryHighlight

◆ type

BNInstructionTextTokenType HighlightTokenState::type

◆ token

BinaryNinja::InstructionTextToken HighlightTokenState::token

◆ arch

ArchitectureRef HighlightTokenState::arch

◆ addrValid

bool HighlightTokenState::addrValid

◆ localVarValid

bool HighlightTokenState::localVarValid

◆ isDest

bool HighlightTokenState::isDest

◆ addr

uint64_t HighlightTokenState::addr

◆ localVar

BinaryNinja::Variable HighlightTokenState::localVar

◆ tokenIndex

size_t HighlightTokenState::tokenIndex

◆ characterIndex

size_t HighlightTokenState::characterIndex

◆ UIActionContext

struct UIActionContext

Public Member Functions

 UIActionContext ()
 
 UIActionContext (const BinaryNinja::PluginCommandContext &pluginContext)
 
 operator BinaryNinja::PluginCommandContext () const
 

Public Attributes

UIContextcontext
 
Viewview
 
QWidget * widget
 
HighlightTokenState token
 
BinaryViewRef binaryView
 
uint64_t address
 
uint64_t length
 
size_t instrIndex
 
FunctionRef function
 
LowLevelILFunctionRef lowLevelILFunction
 
MediumLevelILFunctionRef mediumLevelILFunction
 
HighLevelILFunctionRef highLevelILFunction
 
LinearViewCursorPositioncursorPosition
 

Constructor & Destructor Documentation

◆ UIActionContext() [1/2]

UIActionContext::UIActionContext ( )

◆ UIActionContext() [2/2]

UIActionContext::UIActionContext ( const BinaryNinja::PluginCommandContext pluginContext)

Member Function Documentation

◆ operator BinaryNinja::PluginCommandContext()

UIActionContext::operator BinaryNinja::PluginCommandContext ( ) const

Member Data Documentation

◆ context

UIContext* UIActionContext::context

◆ view

View* UIActionContext::view

◆ widget

QWidget* UIActionContext::widget

◆ token

HighlightTokenState UIActionContext::token

◆ binaryView

BinaryViewRef UIActionContext::binaryView

◆ address

uint64_t UIActionContext::address

◆ length

uint64_t UIActionContext::length

◆ instrIndex

size_t UIActionContext::instrIndex

◆ function

FunctionRef UIActionContext::function

◆ lowLevelILFunction

LowLevelILFunctionRef UIActionContext::lowLevelILFunction

◆ mediumLevelILFunction

MediumLevelILFunctionRef UIActionContext::mediumLevelILFunction

◆ highLevelILFunction

HighLevelILFunctionRef UIActionContext::highLevelILFunction

◆ cursorPosition

LinearViewCursorPosition* UIActionContext::cursorPosition

◆ UIAction

struct UIAction

Public Member Functions

 UIAction ()
 
 UIAction (const std::function< void(const UIActionContext &context)> &activate)
 
 UIAction (const std::function< void()> &activate)
 
 UIAction (const std::function< void(const UIActionContext &context)> &activate, const std::function< bool(const UIActionContext &context)> &isValid)
 
 UIAction (const std::function< void()> &activate, const std::function< bool(const UIActionContext &context)> &isValid)
 
 UIAction (const std::function< void(const UIActionContext &context)> &activate, const std::function< bool()> &isValid)
 
 UIAction (const std::function< void()> &activate, const std::function< bool()> &isValid)
 
 UIAction (const UIAction &other)
 
UIActionoperator= (const UIAction &other)
 

Static Public Member Functions

static void registerAction (const QString &name, const QKeySequence &defaultKeyBinding=QKeySequence(), const QList< QString > &alias=QList< QString >())
 
static void registerAction (const QString &name, const QList< QKeySequence > &defaultKeyBinding, const QList< QString > &alias=QList< QString >())
 
static void unregisterAction (const QString &name)
 
static void registerTransformActions ()
 
static void registerPluginCommandActions ()
 
static void registerPluginCommandActions (const QString &prefix)
 
static void registerHighlightColorActions (const QString &prefix)
 
static void registerBookmarkActions (const QString &prefix)
 
static void setActionDisplayName (const QString &registeredName, const QString &displayName)
 
static void setActionDisplayName (const QString &registeredName, const std::function< QString()> &displayNameFunc)
 
static void setActionDisplayName (const QString &registeredName, const std::function< QString(const UIActionContext &)> &displayNameFunc)
 
static bool isActionRegistered (const QString &name)
 
static std::set< QString > getAllRegisteredActions ()
 
static QList< QKeySequence > getDefaultKeyBinding (const QString &name)
 
static QList< QKeySequence > getKeyBinding (const QString &name)
 
static QString getActionDisplayName (const QString &name, const UIActionContext &context)
 
static int rawControl ()
 
static int rawMeta ()
 
static void setUserKeyBinding (const QString &name, const QList< QKeySequence > &keyBinding)
 
static void resetKeyBindingToDefault (const QString &name)
 
static void readKeyBindingsFile ()
 
static void writeKeyBindingsFile ()
 

Public Attributes

std::function< void(const UIActionContext &context)> activate
 
std::function< bool(const UIActionContext &context)> isValid
 

Constructor & Destructor Documentation

◆ UIAction() [1/8]

UIAction::UIAction ( )

◆ UIAction() [2/8]

UIAction::UIAction ( const std::function< void(const UIActionContext &context)> &  activate)

◆ UIAction() [3/8]

UIAction::UIAction ( const std::function< void()> &  activate)

◆ UIAction() [4/8]

UIAction::UIAction ( const std::function< void(const UIActionContext &context)> &  activate,
const std::function< bool(const UIActionContext &context)> &  isValid 
)

◆ UIAction() [5/8]

UIAction::UIAction ( const std::function< void()> &  activate,
const std::function< bool(const UIActionContext &context)> &  isValid 
)

◆ UIAction() [6/8]

UIAction::UIAction ( const std::function< void(const UIActionContext &context)> &  activate,
const std::function< bool()> &  isValid 
)

◆ UIAction() [7/8]

UIAction::UIAction ( const std::function< void()> &  activate,
const std::function< bool()> &  isValid 
)

◆ UIAction() [8/8]

UIAction::UIAction ( const UIAction other)

Member Function Documentation

◆ operator=()

UIAction & UIAction::operator= ( const UIAction other)

◆ registerAction() [1/2]

static void UIAction::registerAction ( const QString &  name,
const QKeySequence &  defaultKeyBinding = QKeySequence(),
const QList< QString > &  alias = QList< QString >() 
)
static

◆ registerAction() [2/2]

static void UIAction::registerAction ( const QString &  name,
const QList< QKeySequence > &  defaultKeyBinding,
const QList< QString > &  alias = QList< QString >() 
)
static

◆ unregisterAction()

static void UIAction::unregisterAction ( const QString &  name)
static

◆ registerTransformActions()

static void UIAction::registerTransformActions ( )
static

◆ registerPluginCommandActions() [1/2]

static void UIAction::registerPluginCommandActions ( )
static

◆ registerPluginCommandActions() [2/2]

static void UIAction::registerPluginCommandActions ( const QString &  prefix)
static

◆ registerHighlightColorActions()

static void UIAction::registerHighlightColorActions ( const QString &  prefix)
static

◆ registerBookmarkActions()

static void UIAction::registerBookmarkActions ( const QString &  prefix)
static

◆ setActionDisplayName() [1/3]

static void UIAction::setActionDisplayName ( const QString &  registeredName,
const QString &  displayName 
)
static

◆ setActionDisplayName() [2/3]

static void UIAction::setActionDisplayName ( const QString &  registeredName,
const std::function< QString()> &  displayNameFunc 
)
static

◆ setActionDisplayName() [3/3]

static void UIAction::setActionDisplayName ( const QString &  registeredName,
const std::function< QString(const UIActionContext &)> &  displayNameFunc 
)
static

◆ isActionRegistered()

static bool UIAction::isActionRegistered ( const QString &  name)
static

◆ getAllRegisteredActions()

static std::set< QString > UIAction::getAllRegisteredActions ( )
static

◆ getDefaultKeyBinding()

static QList< QKeySequence > UIAction::getDefaultKeyBinding ( const QString &  name)
static

◆ getKeyBinding()

static QList< QKeySequence > UIAction::getKeyBinding ( const QString &  name)
static

◆ getActionDisplayName()

static QString UIAction::getActionDisplayName ( const QString &  name,
const UIActionContext context 
)
static

◆ rawControl()

static int UIAction::rawControl ( )
static

◆ rawMeta()

static int UIAction::rawMeta ( )
static

◆ setUserKeyBinding()

static void UIAction::setUserKeyBinding ( const QString &  name,
const QList< QKeySequence > &  keyBinding 
)
static

◆ resetKeyBindingToDefault()

static void UIAction::resetKeyBindingToDefault ( const QString &  name)
static

◆ readKeyBindingsFile()

static void UIAction::readKeyBindingsFile ( )
static

◆ writeKeyBindingsFile()

static void UIAction::writeKeyBindingsFile ( )
static

Member Data Documentation

◆ activate

std::function<void(const UIActionContext& context)> UIAction::activate

◆ isValid

std::function<bool(const UIActionContext& context)> UIAction::isValid

◆ UITransformAction

struct UITransformAction

Public Member Functions

 UITransformAction ()
 
 UITransformAction (const std::function< void(const UIActionContext &context, TransformRef xform)> &activate)
 
 UITransformAction (const std::function< void(TransformRef xform)> &activate)
 
 UITransformAction (const std::function< void(const UIActionContext &context, TransformRef xform)> &activate, const std::function< bool(const UIActionContext &context, TransformRef xform)> &isValid)
 
 UITransformAction (const std::function< void(TransformRef xform)> &activate, const std::function< bool(const UIActionContext &context, TransformRef xform)> &isValid)
 
 UITransformAction (const std::function< void(const UIActionContext &context, TransformRef xform)> &activate, const std::function< bool(TransformRef xform)> &isValid)
 
 UITransformAction (const std::function< void(TransformRef xform)> &activate, const std::function< bool(TransformRef xform)> &isValid)
 
 UITransformAction (const UITransformAction &other)
 

Public Attributes

std::function< void(const UIActionContext &context, TransformRef xform)> activate
 
std::function< bool(const UIActionContext &context, TransformRef xform)> isValid
 

Constructor & Destructor Documentation

◆ UITransformAction() [1/8]

UITransformAction::UITransformAction ( )

◆ UITransformAction() [2/8]

UITransformAction::UITransformAction ( const std::function< void(const UIActionContext &context, TransformRef xform)> &  activate)

◆ UITransformAction() [3/8]

UITransformAction::UITransformAction ( const std::function< void(TransformRef xform)> &  activate)

◆ UITransformAction() [4/8]

UITransformAction::UITransformAction ( const std::function< void(const UIActionContext &context, TransformRef xform)> &  activate,
const std::function< bool(const UIActionContext &context, TransformRef xform)> &  isValid 
)

◆ UITransformAction() [5/8]

UITransformAction::UITransformAction ( const std::function< void(TransformRef xform)> &  activate,
const std::function< bool(const UIActionContext &context, TransformRef xform)> &  isValid 
)

◆ UITransformAction() [6/8]

UITransformAction::UITransformAction ( const std::function< void(const UIActionContext &context, TransformRef xform)> &  activate,
const std::function< bool(TransformRef xform)> &  isValid 
)

◆ UITransformAction() [7/8]

UITransformAction::UITransformAction ( const std::function< void(TransformRef xform)> &  activate,
const std::function< bool(TransformRef xform)> &  isValid 
)

◆ UITransformAction() [8/8]

UITransformAction::UITransformAction ( const UITransformAction other)

Member Data Documentation

◆ activate

std::function<void(const UIActionContext& context, TransformRef xform)> UITransformAction::activate

◆ isValid

std::function<bool(const UIActionContext& context, TransformRef xform)> UITransformAction::isValid

◆ UIHighlightColorAction

struct UIHighlightColorAction

Public Member Functions

 UIHighlightColorAction ()
 
 UIHighlightColorAction (const std::function< void(const UIActionContext &context, BNHighlightColor color)> &activate)
 
 UIHighlightColorAction (const std::function< void(BNHighlightColor color)> &activate)
 
 UIHighlightColorAction (const std::function< void(const UIActionContext &context, BNHighlightColor color)> &activate, const std::function< bool(const UIActionContext &context)> &isValid)
 
 UIHighlightColorAction (const std::function< void(BNHighlightColor color)> &activate, const std::function< bool(const UIActionContext &context)> &isValid)
 
 UIHighlightColorAction (const std::function< void(const UIActionContext &context, BNHighlightColor color)> &activate, const std::function< bool()> &isValid)
 
 UIHighlightColorAction (const std::function< void(BNHighlightColor color)> &activate, const std::function< bool()> &isValid)
 
 UIHighlightColorAction (const UIHighlightColorAction &other)
 

Public Attributes

std::function< void(const UIActionContext &context, BNHighlightColor color)> activate
 
std::function< bool(const UIActionContext &context)> isValid
 

Constructor & Destructor Documentation

◆ UIHighlightColorAction() [1/8]

UIHighlightColorAction::UIHighlightColorAction ( )

◆ UIHighlightColorAction() [2/8]

UIHighlightColorAction::UIHighlightColorAction ( const std::function< void(const UIActionContext &context, BNHighlightColor color)> &  activate)

◆ UIHighlightColorAction() [3/8]

UIHighlightColorAction::UIHighlightColorAction ( const std::function< void(BNHighlightColor color)> &  activate)

◆ UIHighlightColorAction() [4/8]

UIHighlightColorAction::UIHighlightColorAction ( const std::function< void(const UIActionContext &context, BNHighlightColor color)> &  activate,
const std::function< bool(const UIActionContext &context)> &  isValid 
)

◆ UIHighlightColorAction() [5/8]

UIHighlightColorAction::UIHighlightColorAction ( const std::function< void(BNHighlightColor color)> &  activate,
const std::function< bool(const UIActionContext &context)> &  isValid 
)

◆ UIHighlightColorAction() [6/8]

UIHighlightColorAction::UIHighlightColorAction ( const std::function< void(const UIActionContext &context, BNHighlightColor color)> &  activate,
const std::function< bool()> &  isValid 
)

◆ UIHighlightColorAction() [7/8]

UIHighlightColorAction::UIHighlightColorAction ( const std::function< void(BNHighlightColor color)> &  activate,
const std::function< bool()> &  isValid 
)

◆ UIHighlightColorAction() [8/8]

UIHighlightColorAction::UIHighlightColorAction ( const UIHighlightColorAction other)

Member Data Documentation

◆ activate

std::function<void(const UIActionContext& context, BNHighlightColor color)> UIHighlightColorAction::activate

◆ isValid

std::function<bool(const UIActionContext& context)> UIHighlightColorAction::isValid

◆ UIBookmarkAction

struct UIBookmarkAction

Public Member Functions

 UIBookmarkAction (const std::function< void(const UIActionContext &context, int index)> &activate, const std::function< bool(const UIActionContext &context, int index)> &isValid)
 

Public Attributes

std::function< void(const UIActionContext &context, int index)> activate
 
std::function< bool(const UIActionContext &context, int index)> isValid
 

Constructor & Destructor Documentation

◆ UIBookmarkAction()

UIBookmarkAction::UIBookmarkAction ( const std::function< void(const UIActionContext &context, int index)> &  activate,
const std::function< bool(const UIActionContext &context, int index)> &  isValid 
)

Member Data Documentation

◆ activate

std::function<void(const UIActionContext& context, int index)> UIBookmarkAction::activate

◆ isValid

std::function<bool(const UIActionContext& context, int index)> UIBookmarkAction::isValid

◆ UIActionHandler

class UIActionHandler

Public Member Functions

 UIActionHandler (bool isGlobal=false)
 
virtual ~UIActionHandler ()
 
void setupActionHandler (QWidget *obj, bool inheritParentBindings=true)
 
void bindAction (const QString &name, const UIAction &action)
 
void bindAction (const QString &name, const UIAction &action, ActionPriority priority)
 
void unbindAction (const QString &name)
 
void executeAction (const QString &name)
 
void executeAction (const QString &name, const UIActionContext &context)
 
bool isBoundAction (const QString &name)
 
bool isValidAction (const QString &name)
 
bool isValidAction (const QString &name, const UIActionContext &context)
 
ActionPriority getPriority (const QString &name)
 
void bindCopyAsActions (const UITransformAction &action)
 
void bindPasteFromActions (const UITransformAction &action)
 
void bindTransformActions (const UITransformAction &encode, const UITransformAction &decode)
 
void unbindCopyAsActions ()
 
void unbindPasteFromActions ()
 
void unbindTransformActions ()
 
void bindPluginCommandActions ()
 
void bindPluginCommandActions (const QString &prefix, const std::function< UIActionContext(const UIActionContext &, const BinaryNinja::PluginCommand &)> &context, const std::function< bool(const UIActionContext &, const BinaryNinja::PluginCommand &)> &isValid)
 
void unbindPluginCommandActions ()
 
void unbindPluginCommandActions (const QString &prefix)
 
void bindHighlightColorActions (const QString &prefix, const UIHighlightColorAction &action)
 
void unbindHighlightColorActions (const QString &prefix)
 
void bindBookmarkActions (const QString &prefix, const UIBookmarkAction &action)
 
void unbindBookmarkActions (const QString &prefix)
 
void setActionDisplayName (const QString &registeredName, const QString &displayName)
 
void setActionDisplayName (const QString &registeredName, const std::function< QString()> &displayNameFunc)
 
void setActionDisplayName (const QString &registeredName, const std::function< QString(const UIActionContext &)> &displayNameFunc)
 
QString getActionDisplayName (const QString &name)
 
QString getActionDisplayName (const QString &name, const UIActionContext &context)
 
void setChecked (const QString &name, bool checked)
 
void setChecked (const QString &name, const std::function< bool()> &checked)
 
void setChecked (const QString &name, const std::function< bool(const UIActionContext &)> &checked)
 
bool isChecked (const QString &name)
 
bool isChecked (const QString &name, const UIActionContext &context)
 
bool isCheckable (const QString &name)
 
std::set< QString > getAllValidActions ()
 
std::set< QString > getAllValidActions (const UIActionContext &context)
 
UIActionContext defaultActionContext ()
 
virtual UIActionContext actionContext ()
 
void setActionContext (const std::function< UIActionContext()> &contextFunc)
 
QWidget * widget ()
 

Static Public Member Functions

static UIActionHandleractionHandlerFromWidget (QWidget *widget)
 
static UIActionHandlerglobalActions ()
 
static void updateActionBindings (const QString &name)
 
static bool isActionBoundToAnyHandler (const QString &name)
 
static void addGlobalMenuAction (const QString &name)
 
static void removeGlobalMenuAction (const QString &name)
 
static void reparentWidget (QWidget *widget)
 

Friends

class UIActionHandlerWidgetConnection
 

Constructor & Destructor Documentation

◆ UIActionHandler()

UIActionHandler::UIActionHandler ( bool  isGlobal = false)

◆ ~UIActionHandler()

virtual UIActionHandler::~UIActionHandler ( )
virtual

Member Function Documentation

◆ setupActionHandler()

void UIActionHandler::setupActionHandler ( QWidget *  obj,
bool  inheritParentBindings = true 
)

◆ actionHandlerFromWidget()

static UIActionHandler * UIActionHandler::actionHandlerFromWidget ( QWidget *  widget)
static

◆ globalActions()

static UIActionHandler * UIActionHandler::globalActions ( )
static

◆ bindAction() [1/2]

void UIActionHandler::bindAction ( const QString &  name,
const UIAction action 
)

◆ bindAction() [2/2]

void UIActionHandler::bindAction ( const QString &  name,
const UIAction action,
ActionPriority  priority 
)

◆ unbindAction()

void UIActionHandler::unbindAction ( const QString &  name)

◆ executeAction() [1/2]

void UIActionHandler::executeAction ( const QString &  name)

◆ executeAction() [2/2]

void UIActionHandler::executeAction ( const QString &  name,
const UIActionContext context 
)

◆ isBoundAction()

bool UIActionHandler::isBoundAction ( const QString &  name)

◆ isValidAction() [1/2]

bool UIActionHandler::isValidAction ( const QString &  name)

◆ isValidAction() [2/2]

bool UIActionHandler::isValidAction ( const QString &  name,
const UIActionContext context 
)

◆ getPriority()

ActionPriority UIActionHandler::getPriority ( const QString &  name)

◆ bindCopyAsActions()

void UIActionHandler::bindCopyAsActions ( const UITransformAction action)

◆ bindPasteFromActions()

void UIActionHandler::bindPasteFromActions ( const UITransformAction action)

◆ bindTransformActions()

void UIActionHandler::bindTransformActions ( const UITransformAction encode,
const UITransformAction decode 
)

◆ unbindCopyAsActions()

void UIActionHandler::unbindCopyAsActions ( )

◆ unbindPasteFromActions()

void UIActionHandler::unbindPasteFromActions ( )

◆ unbindTransformActions()

void UIActionHandler::unbindTransformActions ( )

◆ bindPluginCommandActions() [1/2]

void UIActionHandler::bindPluginCommandActions ( )

◆ bindPluginCommandActions() [2/2]

void UIActionHandler::bindPluginCommandActions ( const QString &  prefix,
const std::function< UIActionContext(const UIActionContext &, const BinaryNinja::PluginCommand &)> &  context,
const std::function< bool(const UIActionContext &, const BinaryNinja::PluginCommand &)> &  isValid 
)

◆ unbindPluginCommandActions() [1/2]

void UIActionHandler::unbindPluginCommandActions ( )

◆ unbindPluginCommandActions() [2/2]

void UIActionHandler::unbindPluginCommandActions ( const QString &  prefix)

◆ bindHighlightColorActions()

void UIActionHandler::bindHighlightColorActions ( const QString &  prefix,
const UIHighlightColorAction action 
)

◆ unbindHighlightColorActions()

void UIActionHandler::unbindHighlightColorActions ( const QString &  prefix)

◆ bindBookmarkActions()

void UIActionHandler::bindBookmarkActions ( const QString &  prefix,
const UIBookmarkAction action 
)

◆ unbindBookmarkActions()

void UIActionHandler::unbindBookmarkActions ( const QString &  prefix)

◆ setActionDisplayName() [1/3]

void UIActionHandler::setActionDisplayName ( const QString &  registeredName,
const QString &  displayName 
)

◆ setActionDisplayName() [2/3]

void UIActionHandler::setActionDisplayName ( const QString &  registeredName,
const std::function< QString()> &  displayNameFunc 
)

◆ setActionDisplayName() [3/3]

void UIActionHandler::setActionDisplayName ( const QString &  registeredName,
const std::function< QString(const UIActionContext &)> &  displayNameFunc 
)

◆ getActionDisplayName() [1/2]

QString UIActionHandler::getActionDisplayName ( const QString &  name)

◆ getActionDisplayName() [2/2]

QString UIActionHandler::getActionDisplayName ( const QString &  name,
const UIActionContext context 
)

◆ setChecked() [1/3]

void UIActionHandler::setChecked ( const QString &  name,
bool  checked 
)

◆ setChecked() [2/3]

void UIActionHandler::setChecked ( const QString &  name,
const std::function< bool()> &  checked 
)

◆ setChecked() [3/3]

void UIActionHandler::setChecked ( const QString &  name,
const std::function< bool(const UIActionContext &)> &  checked 
)

◆ isChecked() [1/2]

bool UIActionHandler::isChecked ( const QString &  name)

◆ isChecked() [2/2]

bool UIActionHandler::isChecked ( const QString &  name,
const UIActionContext context 
)

◆ isCheckable()

bool UIActionHandler::isCheckable ( const QString &  name)

◆ getAllValidActions() [1/2]

std::set< QString > UIActionHandler::getAllValidActions ( )

◆ getAllValidActions() [2/2]

std::set< QString > UIActionHandler::getAllValidActions ( const UIActionContext context)

◆ defaultActionContext()

UIActionContext UIActionHandler::defaultActionContext ( )

◆ actionContext()

virtual UIActionContext UIActionHandler::actionContext ( )
virtual

◆ setActionContext()

void UIActionHandler::setActionContext ( const std::function< UIActionContext()> &  contextFunc)

◆ widget()

QWidget * UIActionHandler::widget ( )
inline

◆ updateActionBindings()

static void UIActionHandler::updateActionBindings ( const QString &  name)
static

◆ isActionBoundToAnyHandler()

static bool UIActionHandler::isActionBoundToAnyHandler ( const QString &  name)
static

◆ addGlobalMenuAction()

static void UIActionHandler::addGlobalMenuAction ( const QString &  name)
static

◆ removeGlobalMenuAction()

static void UIActionHandler::removeGlobalMenuAction ( const QString &  name)
static

◆ reparentWidget()

static void UIActionHandler::reparentWidget ( QWidget *  widget)
static

Friends And Related Function Documentation

◆ UIActionHandlerWidgetConnection

friend class UIActionHandlerWidgetConnection
friend

◆ Menu

class Menu

Public Member Functions

 Menu ()
 
 Menu (const Menu &menu)
 
void addAction (const QString &action, const QString &group, uint8_t order=128)
 
void addRelativeAction (const QString &base, const QString &action, const QString &group, uint8_t order=128)
 
void addAction (const QString &submenu, const QString &action, const QString &group, uint8_t order=128)
 
void addRelativeAction (const QString &submenu, const QString &base, const QString &action, const QString &group, uint8_t order=128)
 
void removeAction (const QString &action)
 
void removeAction (const QString &submenu, const QString &action)
 
void addCopyAsActions (const QString &group, uint8_t order=128)
 
void addPasteFromActions (const QString &group, uint8_t order=128)
 
void addTransformActions (const QString &group, uint8_t order=128)
 
void removeCopyAsActions ()
 
void removePasteFromActions ()
 
void removeTransformActions ()
 
void addPluginCommandActions (const QString &group)
 
void addPluginCommandActions (const QString &prefix, const QString &group, uint8_t order=128)
 
void addPluginCommandSubmenuActions (const QString &submenu, const QString &group)
 
void addPluginCommandSubmenuActions (const QString &submenu, const QString &prefix, const QString &group, uint8_t order=128)
 
void removePluginCommandActions ()
 
void removePluginCommandSubmenuActions (const QString &submenu)
 
void addHighlightColorActions (const QString &submenu, const QString &group, uint8_t order=128)
 
void removeHighlightColorActions (const QString &submenu)
 
void setOrdering (const QString &path, const QString &group, uint8_t order=128)
 
void setGroupOrdering (const QString &group, uint8_t order)
 
void setVisibility (const QString &path, MenuItemVisibility visibility)
 
void setRole (const QString &path, QAction::MenuRole role)
 
void setIcon (const QString &path, const QIcon &icon)
 
MenuInstancecreate (QWidget *owner, UIActionHandler *handler, bool showInactiveActions=false)
 
MenuInstancecreate (QWidget *owner, UIActionHandler *handler, const UIActionContext &context, bool showInactiveActions=false)
 
uint64_t getVersion ()
 
const std::map< QString, QString > & getActions ()
 
QString getGroupForAction (const QString &name)
 
uint8_t getOrderForAction (const QString &name)
 
uint8_t getOrderForGroup (const QString &name)
 
MenuItemVisibility getVisibility (const QString &name)
 
QAction::MenuRole getRole (const QString &name)
 
QIcon getIcon (const QString &name)
 

Static Public Member Functions

static MenumainMenu (const QString &name)
 
static MenudockMenu ()
 
static void setMainMenuOrder (const QString &name, uint8_t order)
 
static std::vector< QString > getMainMenus ()
 

Constructor & Destructor Documentation

◆ Menu() [1/2]

Menu::Menu ( )

◆ Menu() [2/2]

Menu::Menu ( const Menu menu)

Member Function Documentation

◆ addAction() [1/2]

void Menu::addAction ( const QString &  action,
const QString &  group,
uint8_t  order = 128 
)

◆ addRelativeAction() [1/2]

void Menu::addRelativeAction ( const QString &  base,
const QString &  action,
const QString &  group,
uint8_t  order = 128 
)

◆ addAction() [2/2]

void Menu::addAction ( const QString &  submenu,
const QString &  action,
const QString &  group,
uint8_t  order = 128 
)

◆ addRelativeAction() [2/2]

void Menu::addRelativeAction ( const QString &  submenu,
const QString &  base,
const QString &  action,
const QString &  group,
uint8_t  order = 128 
)

◆ removeAction() [1/2]

void Menu::removeAction ( const QString &  action)

◆ removeAction() [2/2]

void Menu::removeAction ( const QString &  submenu,
const QString &  action 
)

◆ addCopyAsActions()

void Menu::addCopyAsActions ( const QString &  group,
uint8_t  order = 128 
)

◆ addPasteFromActions()

void Menu::addPasteFromActions ( const QString &  group,
uint8_t  order = 128 
)

◆ addTransformActions()

void Menu::addTransformActions ( const QString &  group,
uint8_t  order = 128 
)

◆ removeCopyAsActions()

void Menu::removeCopyAsActions ( )

◆ removePasteFromActions()

void Menu::removePasteFromActions ( )

◆ removeTransformActions()

void Menu::removeTransformActions ( )

◆ addPluginCommandActions() [1/2]

void Menu::addPluginCommandActions ( const QString &  group)

◆ addPluginCommandActions() [2/2]

void Menu::addPluginCommandActions ( const QString &  prefix,
const QString &  group,
uint8_t  order = 128 
)

◆ addPluginCommandSubmenuActions() [1/2]

void Menu::addPluginCommandSubmenuActions ( const QString &  submenu,
const QString &  group 
)

◆ addPluginCommandSubmenuActions() [2/2]

void Menu::addPluginCommandSubmenuActions ( const QString &  submenu,
const QString &  prefix,
const QString &  group,
uint8_t  order = 128 
)

◆ removePluginCommandActions()

void Menu::removePluginCommandActions ( )

◆ removePluginCommandSubmenuActions()

void Menu::removePluginCommandSubmenuActions ( const QString &  submenu)

◆ addHighlightColorActions()

void Menu::addHighlightColorActions ( const QString &  submenu,
const QString &  group,
uint8_t  order = 128 
)

◆ removeHighlightColorActions()

void Menu::removeHighlightColorActions ( const QString &  submenu)

◆ setOrdering()

void Menu::setOrdering ( const QString &  path,
const QString &  group,
uint8_t  order = 128 
)

◆ setGroupOrdering()

void Menu::setGroupOrdering ( const QString &  group,
uint8_t  order 
)

◆ setVisibility()

void Menu::setVisibility ( const QString &  path,
MenuItemVisibility  visibility 
)

◆ setRole()

void Menu::setRole ( const QString &  path,
QAction::MenuRole  role 
)

◆ setIcon()

void Menu::setIcon ( const QString &  path,
const QIcon &  icon 
)

◆ create() [1/2]

MenuInstance * Menu::create ( QWidget *  owner,
UIActionHandler handler,
bool  showInactiveActions = false 
)

◆ create() [2/2]

MenuInstance * Menu::create ( QWidget *  owner,
UIActionHandler handler,
const UIActionContext context,
bool  showInactiveActions = false 
)

◆ getVersion()

uint64_t Menu::getVersion ( )

◆ getActions()

const std::map< QString, QString > & Menu::getActions ( )

◆ getGroupForAction()

QString Menu::getGroupForAction ( const QString &  name)

◆ getOrderForAction()

uint8_t Menu::getOrderForAction ( const QString &  name)

◆ getOrderForGroup()

uint8_t Menu::getOrderForGroup ( const QString &  name)

◆ getVisibility()

MenuItemVisibility Menu::getVisibility ( const QString &  name)

◆ getRole()

QAction::MenuRole Menu::getRole ( const QString &  name)

◆ getIcon()

QIcon Menu::getIcon ( const QString &  name)

◆ mainMenu()

static Menu * Menu::mainMenu ( const QString &  name)
static

◆ dockMenu()

static Menu * Menu::dockMenu ( )
static

◆ setMainMenuOrder()

static void Menu::setMainMenuOrder ( const QString &  name,
uint8_t  order 
)
static

◆ getMainMenus()

static std::vector< QString > Menu::getMainMenus ( )
static

◆ MenuInstance

class MenuInstance

Public Member Functions

 MenuInstance (Menu *menu, QMenu *instance)
 
virtual ~MenuInstance ()
 
void update (UIActionHandler *handler, bool showInactiveActions=false)
 
void update (UIActionHandler *handler, const UIActionContext &context, bool showInactiveActions=false)
 
Menusource () const
 
QMenu * instance () const
 

Static Public Member Functions

static void updateActionBindings (const QString &name)
 

Constructor & Destructor Documentation

◆ MenuInstance()

MenuInstance::MenuInstance ( Menu menu,
QMenu *  instance 
)

◆ ~MenuInstance()

virtual MenuInstance::~MenuInstance ( )
virtual

Member Function Documentation

◆ update() [1/2]

void MenuInstance::update ( UIActionHandler handler,
bool  showInactiveActions = false 
)

◆ update() [2/2]

void MenuInstance::update ( UIActionHandler handler,
const UIActionContext context,
bool  showInactiveActions = false 
)

◆ source()

Menu * MenuInstance::source ( ) const
inline

◆ instance()

QMenu * MenuInstance::instance ( ) const
inline

◆ updateActionBindings()

static void MenuInstance::updateActionBindings ( const QString &  name)
static

◆ MainMenuInstance

class MainMenuInstance

Public Member Functions

 MainMenuInstance (QMenuBar *instance)
 
 ~MainMenuInstance ()
 
void update (UIActionHandler *handler)
 
void update (UIActionHandler *handler, const UIActionContext &context)
 

Constructor & Destructor Documentation

◆ MainMenuInstance()

MainMenuInstance::MainMenuInstance ( QMenuBar *  instance)

◆ ~MainMenuInstance()

MainMenuInstance::~MainMenuInstance ( )

Member Function Documentation

◆ update() [1/2]

void MainMenuInstance::update ( UIActionHandler handler)

◆ update() [2/2]

void MainMenuInstance::update ( UIActionHandler handler,
const UIActionContext context 
)

Enumeration Type Documentation

◆ ActionPriority

Enumerator
LowActionPriority 
NormalActionPriority 
HighActionPriority 

◆ MenuItemVisibility

Enumerator
DefaultMenuItemVisibility 
ShowMenuItemOnlyWhenActive 
AlwaysShowMenuItem 
NeverShowMenuItem