forked from openlp/openlp
Added code to create a main window menu item to display the Windows help file (openlp.chm) if it exists on the users machine:
- If it exists, F1 will display the local file, Alt-F1 will display the online help. - If the help file does not exist, F1 will display the Online help (as it currently does). bzr-revno: 1667
This commit is contained in:
commit
ab993842ff
@ -283,7 +283,19 @@ class Ui_MainWindow(object):
|
||||
self.helpAboutItem = shortcut_action(mainWindow, u'helpAboutItem',
|
||||
[QtGui.QKeySequence(u'Ctrl+F1')], self.onHelpAboutItemClicked,
|
||||
u':/system/system_about.png', category=UiStrings().Help)
|
||||
self.helpOnlineHelpItem = shortcut_action(
|
||||
if os.name == u'nt':
|
||||
self.localHelpFile = os.path.join(
|
||||
AppLocation.get_directory(AppLocation.AppDir), 'OpenLP.chm')
|
||||
self.helpLocalHelpItem = shortcut_action(
|
||||
mainWindow, u'helpLocalHelpItem', [QtGui.QKeySequence(u'F1')],
|
||||
self.onHelpLocalHelpClicked, u':/system/system_about.png',
|
||||
category=UiStrings().Help)
|
||||
self.helpOnlineHelpItem = shortcut_action(
|
||||
mainWindow, u'helpOnlineHelpItem', [QtGui.QKeySequence(u'Alt+F1')],
|
||||
self.onHelpOnlineHelpClicked, u':/system/system_online_help.png',
|
||||
category=UiStrings().Help)
|
||||
else:
|
||||
self.helpOnlineHelpItem = shortcut_action(
|
||||
mainWindow, u'helpOnlineHelpItem', [QtGui.QKeySequence(u'F1')],
|
||||
self.onHelpOnlineHelpClicked, u':/system/system_online_help.png',
|
||||
category=UiStrings().Help)
|
||||
@ -321,9 +333,14 @@ class Ui_MainWindow(object):
|
||||
add_actions(self.toolsMenu, (self.toolsAddToolItem, None))
|
||||
add_actions(self.toolsMenu, (self.toolsOpenDataFolder, None))
|
||||
add_actions(self.toolsMenu, [self.updateThemeImages])
|
||||
add_actions(self.helpMenu, (self.helpDocumentationItem,
|
||||
add_actions(self.helpMenu, (self.helpDocumentationItem, None))
|
||||
if os.name == u'nt':
|
||||
add_actions(self.helpMenu, (self.helpLocalHelpItem,
|
||||
self.helpOnlineHelpItem, None, self.helpWebSiteItem,
|
||||
self.helpAboutItem))
|
||||
else:
|
||||
add_actions(self.helpMenu, (self.helpOnlineHelpItem, None,
|
||||
self.helpWebSiteItem, self.helpAboutItem))
|
||||
add_actions(self.menuBar, (self.fileMenu.menuAction(),
|
||||
self.viewMenu.menuAction(), self.toolsMenu.menuAction(),
|
||||
self.settingsMenu.menuAction(), self.helpMenu.menuAction()))
|
||||
@ -444,6 +461,9 @@ class Ui_MainWindow(object):
|
||||
self.helpAboutItem.setText(translate('OpenLP.MainWindow', '&About'))
|
||||
self.helpAboutItem.setStatusTip(
|
||||
translate('OpenLP.MainWindow', 'More information about OpenLP'))
|
||||
if os.name == u'nt':
|
||||
self.helpLocalHelpItem.setText(
|
||||
translate('OpenLP.MainWindow', '&Help'))
|
||||
self.helpOnlineHelpItem.setText(
|
||||
translate('OpenLP.MainWindow', '&Online Help'))
|
||||
self.helpWebSiteItem.setText(
|
||||
@ -742,6 +762,12 @@ class MainWindow(QtGui.QMainWindow, Ui_MainWindow):
|
||||
import webbrowser
|
||||
webbrowser.open_new(u'http://openlp.org/')
|
||||
|
||||
def onHelpLocalHelpClicked(self):
|
||||
"""
|
||||
Load the local OpenLP help file
|
||||
"""
|
||||
os.startfile(self.localHelpFile)
|
||||
|
||||
def onHelpOnlineHelpClicked(self):
|
||||
"""
|
||||
Load the online OpenLP manual
|
||||
|
@ -242,10 +242,10 @@ def copy_windows_files():
|
||||
os.path.join(dist_path, u'LICENSE.txt'))
|
||||
copy(os.path.join(winres_path, u'psvince.dll'),
|
||||
os.path.join(dist_path, u'psvince.dll'))
|
||||
if os.path.isfile(os.path.join(helpfile_path, u'Openlp.chm')):
|
||||
if os.path.isfile(os.path.join(helpfile_path, u'OpenLP.chm')):
|
||||
print u' Windows help file found'
|
||||
copy(os.path.join(helpfile_path, u'Openlp.chm'),
|
||||
os.path.join(dist_path, u'Openlp.chm'))
|
||||
copy(os.path.join(helpfile_path, u'OpenLP.chm'),
|
||||
os.path.join(dist_path, u'OpenLP.chm'))
|
||||
else:
|
||||
print u' WARNING ---- Windows help file not found ---- WARNING'
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user