Changeset e8af9b1 in sasview
- Timestamp:
- Jun 21, 2015 12:08:09 AM (10 years ago)
- Branches:
- master, ESS_GUI, ESS_GUI_Docs, ESS_GUI_batch_fitting, ESS_GUI_bumps_abstraction, ESS_GUI_iss1116, ESS_GUI_iss879, ESS_GUI_iss959, ESS_GUI_opencl, ESS_GUI_ordering, ESS_GUI_sync_sascalc, costrafo411, magnetic_scatt, release-4.1.1, release-4.1.2, release-4.2.2, release_4.0.1, ticket-1009, ticket-1094-headless, ticket-1242-2d-resolution, ticket-1243, ticket-1249, ticket885, unittest-saveload
- Children:
- d20eb45
- Parents:
- d896039
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
src/sas/guiframe/documentation_window.py
r5f93489 re8af9b1 1 """ 2 documentation module provides a simple means to add help throughout the 3 application. It checks for the existence of html2 package needed to support 4 fully html panel which supports css. The class defined here takes a title for 5 the particular help panel, a pointer to the html documentation file of interest 6 within the documentation tree along with a 'command' string such as a page 7 anchor or a query string etc. The path to the doc directory is retrieved 8 automatically by the class itself. Thus with these three pieces of information 9 the class generates a panel with the appropriate title bar and help file 10 formatted according the style sheets called in the html file. Finally, if an 11 old version of Python is running and the html2 package is not available the 12 class brings up the default browser and passes the file:/// string to it. In 13 this case however the instruction portion is usually not passed for security 14 reasons. 15 """ 1 16 import sys 2 17 import os … … 6 21 import urllib 7 22 8 wx_supports_html2 = True 23 SPHINX_DOC_ENV = "SASVIEW_DOC_PATH" 24 WX_SUPPORTS_HTML2 = True 9 25 try: 10 26 import wx.html2 as html 11 27 except: 12 wx_supports_html2 = False28 WX_SUPPORTS_HTML2 = False 13 29 if sys.platform.count("win32") > 0: 14 30 #this is a PC 15 wx_supports_html2 = True31 WX_SUPPORTS_HTML2 = True 16 32 else: 17 33 #this is a MAC 18 wx_supports_html2 = False 19 20 34 WX_SUPPORTS_HTML2 = False 21 35 22 36 from gui_manager import get_app_dir … … 24 38 25 39 class DocumentationWindow(wx.Frame): 26 def __init__(self, parent, id, path, url_instruction, title, size=(850, 540)):27 wx.Frame.__init__(self, parent, id, title, size=size)40 def __init__(self, parent, dummy_id, path, url_instruction, title, size=(850, 540)): 41 wx.Frame.__init__(self, parent, dummy_id, title, size=size) 28 42 29 SPHINX_DOC_ENV = "SASVIEW_DOC_PATH"30 43 if SPHINX_DOC_ENV in os.environ: 31 44 docs_path = os.path.join(os.environ[SPHINX_DOC_ENV]) … … 37 50 38 51 file_path = os.path.join(docs_path, path) 39 url = "file:///" + urllib.quote(file_path, '\:')+ url_instruction52 url = "file:///" + urllib.quote(file_path, '/\:')+ url_instruction 40 53 41 54 if not os.path.exists(file_path): 42 55 logging.error("Could not find Sphinx documentation at %s \ 43 56 -- has it been built?", file_path) 44 elif wx_supports_html2:57 elif WX_SUPPORTS_HTML2: 45 58 # Complete HTML/CSS support! 46 59 self.view = html.WebView.New(self) 47 60 self.view.LoadURL(url) 48 61 self.Show() 49 else: 62 else: 50 63 logging.error("No html2 support, popping up a web browser") 51 64 #For cases that do not build against current version dependency 52 # Wx 3.0 we provide a webbrowser call - this is particularly for 65 # Wx 3.0 we provide a webbrowser call - this is particularly for 53 66 #Red hat used at SNS for which Wx 3.0 is not available. This 54 #does not deal with issue of math in docs of course. 67 #does not deal with issue of math in docs of course. 55 68 webbrowser.open_new_tab(url) 56 69
Note: See TracChangeset
for help on using the changeset viewer.