37 #ifndef CHANNELSELECTIONVIEW_H
38 #define CHANNELSELECTIONVIEW_H
44 #include "../disp_global.h"
52 #include <QListWidget>
53 #include <QGraphicsItem>
63 class QListWidgetItem;
66 class ChannelSelectionViewWidget;
84 class ChannelInfoModel;
97 typedef QSharedPointer<ChannelSelectionView>
SPtr;
98 typedef QSharedPointer<const ChannelSelectionView>
ConstSPtr;
109 QSharedPointer<ChannelInfoModel> pChannelInfoModel = QSharedPointer<ChannelInfoModel>(0),
110 Qt::WindowType f = Qt::Widget);
125 void setCurrentlyMappedFiffChannels(
const QStringList &mappedLayoutChNames);
134 void highlightChannels(QModelIndexList channelIndexList);
143 void selectChannels(QStringList channelList);
150 QStringList getSelectedChannels();
159 QListWidgetItem* getItemForChName(QListWidget *listWidget,
160 const QString& channelName);
166 const QMap<QString,QPointF>& getLayoutMap();
172 void newFiffFileLoaded(QSharedPointer<FIFFLIB::FiffInfo>& pFiffInfo);
180 QString getCurrentLayoutFile();
188 QString getCurrentGroupFile();
196 void setCurrentLayoutFile(QString currentLayoutFile);
202 void updateBadChannels();
209 void updateDataView();
229 void updateGuiMode(GuiMode mode);
237 void updateProcessingMode(ProcessingMode mode);
245 QWidget* getViewWidget();
253 QWidget* getControlWidget();
261 bool isSelectionEmpty();
275 void initListWidgets();
282 void initSelectionSceneView();
289 void initComboBoxes();
303 void initCheckBoxes();
311 bool loadLayout(QString path);
319 bool loadSelectionGroups(QString path);
326 void cleanUpMEGChannels();
335 void updateSelectionGroupsList(QListWidgetItem* current,
336 QListWidgetItem* previous);
343 void updateSceneItems();
350 void updateUserDefinedChannelsList();
357 void onBtnLoadUserSelection();
364 void onBtnSaveUserSelection();
371 void onBtnAddToSelectionGroups();
378 void onComboBoxLayoutChanged();
385 void resizeEvent(QResizeEvent* event);
392 bool eventFilter(QObject *obj, QEvent *event);
394 Ui::ChannelSelectionViewWidget* m_pUi;
396 QSharedPointer<ChannelInfoModel> m_pChannelInfoModel;
398 QMap<QString,QPointF> m_layoutMap;
399 QMultiMap<QString,QStringList> m_selectionGroupsMap;
403 QStringList m_currentlyLoadedFiffChannels;
405 QString m_sSettingsPath;
415 void showSelectedChannelsOnly(QStringList selectedChannels);
423 void selectionChanged(
const QList<QGraphicsItem*> &selectedChannelItems);
431 void loadedLayoutMap(
const QMap<QString,QPointF> &layoutMap);
435 #endif // CHANNELSELECTIONVIEW_H