+ // void showContextMenu(const QPoint &);
+ void layoutChanged();
+
+private:
+ enum itemActiveState {
+ inactiveState = 0x01,
+ activeState = 0x02
+ };
+ Q_DECLARE_FLAGS(itemActiveStates, itemActiveState);
+
+ QPointer<BufferViewConfig> _config;
+
+ QAction _connectNetAction;
+ QAction _disconnectNetAction;
+ QAction _joinChannelAction;
+
+ QAction _joinBufferAction;
+ QAction _partBufferAction;
+ QAction _hideBufferAction;
+ QAction _removeBufferAction;
+ QAction _ignoreListAction;
+
+ QAction _hideJoinAction;
+ QAction _hidePartAction;
+ QAction _hideKillAction;
+ QAction _hideQuitAction;
+ QAction _hideModeAction;
+
+ bool checkRequirements(const QModelIndex &index, itemActiveStates requiredActiveState = activeState | inactiveState);
+ void addItemToMenu(QAction &action, QMenu &menu, const QModelIndex &index, itemActiveStates requiredActiveState = activeState | inactiveState);
+ void addItemToMenu(QAction &action, QMenu &menu, bool condition = true);
+ void addItemToMenu(QMenu &subMenu, QMenu &menu, const QModelIndex &index, itemActiveStates requiredActiveState = activeState | inactiveState);
+ void addSeparatorToMenu(QMenu &menu, const QModelIndex &index, itemActiveStates requiredActiveState = activeState | inactiveState);
+ QMenu *createHideEventsSubMenu(QMenu &menu);