00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020 import sys
00021 from ost import gui
00022 import sip
00023 from ost import gfx
00024 import ost
00025
00026 from PyQt4 import QtCore, QtGui
00027 from ost.gui import FileLoader
00028 from ost.gui.scene.file_loader import GenericLoader
00029
00030 from ost.gui.scene.loader_manager_widget import LoaderManagerWidget
00031
00032 class InitMenuBar(QtCore.QObject):
00033 def __init__(self, menu_bar=None):
00034 QtCore.QObject.__init__(self, menu_bar)
00035
00036 persp=gui.GostyApp.Instance().perspective
00037 file=persp.GetMenu("File")
00038 options=persp.GetMenu("Options")
00039 window=persp.GetMenu("Window")
00040 help=persp.GetMenu("Help")
00041
00042 load = QtGui.QAction(QtGui.QIcon('icons/open.png'), '&Open', self)
00043 load.setStatusTip('Load a file')
00044 load.setShortcut('Ctrl+O')
00045 self.connect(load, QtCore.SIGNAL('triggered()'), self.Load)
00046 file.addAction(load)
00047
00048 webpage = QtGui.QAction('&Documentation', self)
00049 webpage.setStatusTip('Documentation')
00050 webpage.setShortcut('Ctrl+D')
00051 self.connect(webpage, QtCore.SIGNAL('triggered()'), self.OpenDocs)
00052 help.addAction(webpage)
00053
00054 window.addMenu(persp.panels.menu)
00055
00056
00057 loader_manager = QtGui.QAction('File &Loader', self)
00058 loader_manager.setStatusTip('Loader Manager')
00059 self.connect(loader_manager, QtCore.SIGNAL('triggered()'), self.LoaderManager)
00060 options.addAction(loader_manager)
00061
00062 self.loader_manager = LoaderManagerWidget()
00063
00064 def Exit(self):
00065 reply = QtGui.QMessageBox()
00066 reply.addButton(QtGui.QMessageBox.Yes)
00067
00068
00069 def Load(self):
00070 filename = QtGui.QFileDialog.getOpenFileName(None, 'Open file','')
00071 if(QtCore.QFileInfo(filename).isFile()):
00072 FileLoader.LoadObject(str(filename))
00073
00074 def LoaderManager(self):
00075 self.loader_manager.exec_()
00076
00077 def OpenDocs(self):
00078 QtGui.QDesktopServices.openUrl(QtCore.QUrl("http://www.openstructure.org/docs/index.html"))
00079
00080 def _InitMenuBar(app):
00081 InitMenuBar(app.perspective.menubar)
00082
00083
00084
00085
00086