def init_ui(self): # Window creation ================================================================== self.setWindowTitle("MRI_GUI") self.setWindowIcon(QIcon(os.path.join(self.iconsDir, 'brain.png'))) self.statusBar().showMessage('ready') # Menu Bar ========================================================================= act_exit = QAction('&Exit', self) act_exit.setShortcut('Ctrl+Q') act_exit.setStatusTip('Exit application') act_exit.triggered.connect(self.quit_menu) brainsuite = QAction('&BrainSuite', self) brainsuite.triggered.connect(self.open_external_gui) dsi_studio = QAction('&dsi_studio', self) dsi_studio.triggered.connect(self.open_external_gui) freesurfer = QAction('&freeview', self) freesurfer.triggered.connect(self.open_external_gui) slicer = QAction('&Slicer', self) slicer.triggered.connect(self.open_external_gui) trackvis = QAction('&trackvis', self) slicer.triggered.connect(self.open_external_gui) menubar = self.menuBar() file_menu = menubar.addMenu('&File') file_menu.addAction(act_exit) file_menu = menubar.addMenu('&External GUIs') file_menu.addAction(brainsuite) file_menu.addAction(dsi_studio) file_menu.addAction(freesurfer) file_menu.addAction(slicer) file_menu.addAction(trackvis) # GUI layout ======================================================================= # Base widget is the parent of each sub-widget within the GUI, it holds the files info self.baseWidget = BaseWidget(self) # Show Main Window self.setCentralWidget(self.baseWidget) self.resize(1600, 900) self.show()
def __init__(self): super().__init__() # Subdirectories of MRI_GUI ======================================================== # instance directory of sub-folders, they will be modifiable through the GUI self.dir_dic = dict() self.dir_dic['base_dir'] = os.path.dirname(os.path.realpath(__file__)) self.dir_dic['icons_dir'] = os.path.join(self.dir_dic['base_dir'], 'icons') self.dir_dic['data_dir'] = '/mnt/data' self.dir_dic['templates_dir'] = '/mnt/data/templates' # when functions don't accept output files as options we will output by # default to a temporary directory and move the files # self.dir_dic['temp_dir'] = os.path.join('/tmp', 'MRI_temp') self.dir_dic['temp_dir'] = os.path.join('/mnt/data', 'MRI_temp') if not os.path.isdir(self.dir_dic['temp_dir']): os.mkdir(self.dir_dic['temp_dir']) # Bids Parser initialization ======================================================= self.bids = Parser() self.bids.walk_path(self.dir_dic['data_dir']) # UI Initialization ================================================================ # Window creation self.setWindowTitle("MRI_GUI") self.setWindowIcon( QIcon(os.path.join(self.dir_dic['icons_dir'], 'brain.png'))) self.statusBar().showMessage('ready') # Menu Bar act_exit = QAction('&Exit', self) act_exit.setShortcut('Ctrl+Q') act_exit.setStatusTip('Exit application') act_exit.triggered.connect(self.quit_menu) slicer = QAction('&Slicer', self) slicer.triggered.connect(self.open_external_gui) trackvis = QAction('&trackvis', self) trackvis.triggered.connect(self.open_external_gui) menu_bar = self.menuBar() file_menu = menu_bar.addMenu('&File') file_menu.addAction(act_exit) file_menu = menu_bar.addMenu('&External GUIs') file_menu.addAction(slicer) file_menu.addAction(trackvis) # GUI layout # Base widget is the parent of each sub-widget within the GUI: ToolsMenu, ToolsInterface and FileNav # passing the directory dictionary and the bids parser handle self.base_widget = BaseWidget(self, self.dir_dic, self.bids) # Show Main Window self.setCentralWidget(self.base_widget) self.resize(1600, 900) self.setFixedSize(self.size()) self.show()