allow checkboxes with callback, return created action object, consistent naming
This commit is contained in:
@ -10,19 +10,24 @@ class MenuBase:
|
||||
def __init__(self):
|
||||
self.checkboxes = {}
|
||||
|
||||
def addAction(self, name, func):
|
||||
action = QAction(name, triggered=func, parent=self.qmenu)
|
||||
def addAction(self, name, triggered):
|
||||
action = QAction(name, triggered=triggered, parent=self.qmenu)
|
||||
self.qmenu.addAction(action)
|
||||
return action
|
||||
|
||||
def addSeparator(self):
|
||||
self.qmenu.addSeparator()
|
||||
|
||||
#TODO: allow checkboxes with callback?
|
||||
def addCheckbox(self, name, state=False):
|
||||
action = QAction(name, checkable=True, parent=self.qmenu)
|
||||
def addCheckbox(self, name, state=False, triggered=None):
|
||||
# QAction does not accept triggered=None
|
||||
kwargs = dict(checkable=True, parent=self.qmenu)
|
||||
if triggered:
|
||||
kwargs.update(triggered=triggered)
|
||||
action = QAction(name, **kwargs)
|
||||
action.setChecked(state)
|
||||
self.qmenu.addAction(action)
|
||||
self.checkboxes[name] = action
|
||||
return action
|
||||
|
||||
|
||||
|
||||
|
Reference in New Issue
Block a user