Added AF_NOTIFY flag for TOOL_ACTIONs.
This commit is contained in:
parent
b2d0737329
commit
c0a96141df
|
@ -448,8 +448,8 @@ void TOOL_MANAGER::dispatchInternal( TOOL_EVENT& aEvent )
|
||||||
{
|
{
|
||||||
if( st->waitEvents.Matches( aEvent ) )
|
if( st->waitEvents.Matches( aEvent ) )
|
||||||
{
|
{
|
||||||
// By default, already processed events are not passed further
|
// By default, only messages are passed further
|
||||||
m_passEvent = false;
|
m_passEvent = ( aEvent.m_category == TC_MESSAGE );
|
||||||
|
|
||||||
// got matching event? clear wait list and wake up the coroutine
|
// got matching event? clear wait list and wake up the coroutine
|
||||||
st->wakeupEvent = aEvent;
|
st->wakeupEvent = aEvent;
|
||||||
|
|
|
@ -148,6 +148,8 @@ public:
|
||||||
{
|
{
|
||||||
if( IsActivation() )
|
if( IsActivation() )
|
||||||
return TOOL_EVENT( TC_COMMAND, TA_ACTIVATE, m_name, m_scope );
|
return TOOL_EVENT( TC_COMMAND, TA_ACTIVATE, m_name, m_scope );
|
||||||
|
else if( IsNotification() )
|
||||||
|
return TOOL_EVENT( TC_MESSAGE, TA_ANY, m_name, m_scope );
|
||||||
else
|
else
|
||||||
return TOOL_EVENT( TC_COMMAND, TA_ACTION, m_name, m_scope );
|
return TOOL_EVENT( TC_COMMAND, TA_ACTION, m_name, m_scope );
|
||||||
}
|
}
|
||||||
|
@ -192,6 +194,14 @@ public:
|
||||||
return m_flags & AF_ACTIVATE;
|
return m_flags & AF_ACTIVATE;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Returns true if the action is a notification.
|
||||||
|
*/
|
||||||
|
bool IsNotification() const
|
||||||
|
{
|
||||||
|
return m_flags & AF_NOTIFY;
|
||||||
|
}
|
||||||
|
|
||||||
private:
|
private:
|
||||||
friend class ACTION_MANAGER;
|
friend class ACTION_MANAGER;
|
||||||
|
|
||||||
|
|
|
@ -130,7 +130,8 @@ enum TOOL_ACTION_SCOPE
|
||||||
enum TOOL_ACTION_FLAGS
|
enum TOOL_ACTION_FLAGS
|
||||||
{
|
{
|
||||||
AF_NONE = 0,
|
AF_NONE = 0,
|
||||||
AF_ACTIVATE = 1 ///> Action activates a tool
|
AF_ACTIVATE = 1, ///> Action activates a tool
|
||||||
|
AF_NOTIFY = 2 ///> Action is a notification (it is by default passed to all tools)
|
||||||
};
|
};
|
||||||
|
|
||||||
/// Defines when a context menu is opened.
|
/// Defines when a context menu is opened.
|
||||||
|
|
|
@ -264,7 +264,7 @@ TOOL_ACTION COMMON_ACTIONS::viaSizeDec( "pcbnew.EditorControl.viaSizeDec",
|
||||||
|
|
||||||
TOOL_ACTION COMMON_ACTIONS::trackViaSizeChanged( "pcbnew.EditorControl.trackViaSizeChanged",
|
TOOL_ACTION COMMON_ACTIONS::trackViaSizeChanged( "pcbnew.EditorControl.trackViaSizeChanged",
|
||||||
AS_GLOBAL, 0,
|
AS_GLOBAL, 0,
|
||||||
"", "" );
|
"", "", AF_NOTIFY );
|
||||||
|
|
||||||
|
|
||||||
// Module editor tools
|
// Module editor tools
|
||||||
|
|
Loading…
Reference in New Issue