Ignore:
File:
1 edited

Legend:

Unmodified
Added
Removed
  • src/sas/sasgui/guiframe/gui_manager.py

    rb1ec23d r8ac05a5  
    4646from sas.sasgui.guiframe.CategoryManager import CategoryManager 
    4747from sas.sascalc.dataloader.loader import Loader 
    48 from sas.sascalc.file_converter.nxcansas_writer import NXcanSASWriter 
    4948from sas.sasgui.guiframe.proxy import Connection 
    5049 
     
    12771276 
    12781277        wx_id = wx.NewId() 
    1279         self._help_menu.Append(wx_id, '&Documentation', '') 
     1278        self._help_menu.Append(wx_id, '&Documentation', 'Help documentation for SasView') 
    12801279        wx.EVT_MENU(self, wx_id, self._onSphinxDocs) 
    12811280 
    12821281        if config._do_tutorial and (IS_WIN or sys.platform == 'darwin'): 
    12831282            wx_id = wx.NewId() 
    1284             self._help_menu.Append(wx_id, '&Tutorial', 'Software tutorial') 
     1283            # Pluralised both occurences of 'Tutorial' in the line below 
     1284            # S King, Sep 2018 
     1285            self._help_menu.Append(wx_id, '&Tutorials', 'Tutorials on how to use SasView') 
    12851286            wx.EVT_MENU(self, wx_id, self._onTutorial) 
     1287 
     1288        if config.marketplace_url: 
     1289            wx_id = wx.NewId() 
     1290            self._help_menu.Append(wx_id, '&Model marketplace', 'Plug-in fitting models for SasView') 
     1291            wx.EVT_MENU(self, wx_id, self._on_marketplace_click) 
     1292 
     1293        if config._do_release: 
     1294            wx_id = wx.NewId() 
     1295            self._help_menu.Append(wx_id, '&Release notes', 
     1296                                   'SasView release notes and known issues') 
     1297            wx.EVT_MENU(self, wx_id, self._onRelease) 
    12861298 
    12871299        if config._do_acknowledge: 
     
    12941306            logger.info("Doing help menu") 
    12951307            wx_id = wx.NewId() 
    1296             self._help_menu.Append(wx_id, '&About', 'Software information') 
     1308            self._help_menu.Append(wx_id, '&About', 'Information about SasView') 
    12971309            wx.EVT_MENU(self, wx_id, self._onAbout) 
    1298  
    1299         if config.marketplace_url: 
    1300             wx_id = wx.NewId() 
    1301             self._help_menu.Append(wx_id, '&Model marketplace', '') 
    1302             wx.EVT_MENU(self, wx_id, self._on_marketplace_click) 
    13031310 
    13041311        # Checking for updates 
     
    21382145            dialog.ShowModal() 
    21392146 
     2147    def _onRelease(self, evt): 
     2148        """ 
     2149        Pop up the release notes 
     2150 
     2151        :param evt: menu event 
     2152 
     2153        """ 
     2154        # S King, Sep 2018 
     2155 
     2156        from documentation_window import DocumentationWindow 
     2157        _TreeLocation = "user/release.html" 
     2158        DocumentationWindow(self, -1, _TreeLocation, "", 
     2159                            "SasView Documentation") 
     2160 
    21402161    def _onTutorial(self, evt): 
    21412162        """ 
     
    21452166 
    21462167        """ 
    2147         if config._do_tutorial: 
    2148             path = config.TUTORIAL_PATH 
    2149             if IS_WIN: 
    2150                 try: 
    2151                     from sas.sasgui.guiframe.pdfview import PDFFrame 
    2152                     dialog = PDFFrame(None, -1, "Tutorial", path) 
    2153                     # put icon 
    2154                     self.put_icon(dialog) 
    2155                     dialog.Show(True) 
    2156                 except: 
    2157                     logger.error("Error in _onTutorial: %s" % sys.exc_value) 
    2158                     try: 
    2159                         # Try an alternate method 
    2160                         logger.error( 
    2161                             "Could not open the tutorial pdf, trying xhtml2pdf") 
    2162                         from xhtml2pdf import pisa 
    2163                         pisa.startViewer(path) 
    2164                     except: 
    2165                         logger.error( 
    2166                             "Could not open the tutorial pdf with xhtml2pdf") 
    2167                         msg = "This feature requires 'PDF Viewer'\n" 
    2168                         wx.MessageBox(msg, 'Error') 
    2169             else: 
    2170                 try: 
    2171                     command = "open '%s'" % path 
    2172                     os.system(command) 
    2173                 except: 
    2174                     try: 
    2175                         # Try an alternate method 
    2176                         logger.error( 
    2177                             "Could not open the tutorial pdf, trying xhtml2pdf") 
    2178                         from xhtml2pdf import pisa 
    2179                         pisa.startViewer(path) 
    2180                     except: 
    2181                         logger.error( 
    2182                             "Could not open the tutorial pdf with xhtml2pdf") 
    2183                         msg = "This feature requires the Preview application\n" 
    2184                         wx.MessageBox(msg, 'Error') 
     2168        # Action changed from that in 2.x/3.x/4.0.x/4.1.x 
     2169        # Help >> Tutorial used to bring up a pdf of the 
     2170        # original 2.x tutorial. 
     2171        # Code below, implemented from 4.2.0, redirects 
     2172        # action to the Tutorials page of the help  
     2173        # documentation to give access to all available 
     2174        # tutorials 
     2175        # S King, Sep 2018 
     2176 
     2177        from documentation_window import DocumentationWindow 
     2178        _TreeLocation = "user/tutorial.html" 
     2179        DocumentationWindow(self, -1, _TreeLocation, "", 
     2180                            "SasView Documentation") 
    21852181 
    21862182    def _onSphinxDocs(self, evt): 
     
    24232419        default_name = fname 
    24242420        wildcard = "Text files (*.txt)|*.txt|"\ 
    2425                     "CanSAS 1D files (*.xml)|*.xml|"\ 
    2426                      "NXcanSAS files (*.h5)|*.h5|" 
    2427         options = [".txt", ".xml",".h5"] 
     2421                    "CanSAS 1D files(*.xml)|*.xml" 
     2422        path = None 
    24282423        dlg = wx.FileDialog(self, "Choose a file", 
    24292424                            self._default_save_location, 
     
    24352430            # This is MAC Fix 
    24362431            ext_num = dlg.GetFilterIndex() 
    2437  
    2438             ext_format = options[ext_num] 
     2432            if ext_num == 0: 
     2433                ext_format = '.txt' 
     2434            else: 
     2435                ext_format = '.xml' 
    24392436            path = os.path.splitext(path)[0] + ext_format 
    24402437            mypath = os.path.basename(path) 
    2441             fName = os.path.splitext(path)[0] + ext_format 
    2442  
    2443             if os.path.splitext(mypath)[1].lower() == options[0]: 
     2438 
     2439            # Instantiate a loader 
     2440            loader = Loader() 
     2441            ext_format = ".txt" 
     2442            if os.path.splitext(mypath)[1].lower() == ext_format: 
    24442443                # Make sure the ext included in the file name 
    24452444                # especially on MAC 
     2445                fName = os.path.splitext(path)[0] + ext_format 
    24462446                self._onsaveTXT(data, fName) 
    2447             elif os.path.splitext(mypath)[1].lower() == options[1]: 
     2447            ext_format = ".xml" 
     2448            if os.path.splitext(mypath)[1].lower() == ext_format: 
    24482449                # Make sure the ext included in the file name 
    24492450                # especially on MAC 
    2450                 # Instantiate a loader 
    2451                 loader = Loader() 
     2451                fName = os.path.splitext(path)[0] + ext_format 
    24522452                loader.save(fName, data, ext_format) 
    2453             elif os.path.splitext(mypath)[1].lower() == options[2]: 
    2454                 nxcansaswriter = NXcanSASWriter() 
    2455                 nxcansaswriter.write([data], fName) 
    24562453            try: 
    24572454                self._default_save_location = os.path.dirname(path) 
     
    24802477            if has_errors: 
    24812478                if data.dx is not None and data.dx != []: 
    2482                     out.write("<X>\t<Y>\t<dY>\t<dX>\n") 
     2479                    out.write("<X>   <Y>   <dY>   <dX>\n") 
    24832480                else: 
    2484                     out.write("<X>\t<Y>\t<dY>\n") 
     2481                    out.write("<X>   <Y>   <dY>\n") 
    24852482            else: 
    2486                 out.write("<X>\t<Y>\n") 
     2483                out.write("<X>   <Y>\n") 
    24872484 
    24882485            for i in range(len(data.x)): 
     
    25282525            text += 'dY_min = %s:  dY_max = %s\n' % (min(data.dy), max(data.dy)) 
    25292526        text += '\nData Points:\n' 
    2530         text += "<index> \t<X> \t<Y> \t<dY> " 
    2531         text += "\t<dX>\n" if(data.dxl is not None and 
    2532                               data.dxw is not None) else "\t<dXl> \t<dXw>\n" 
     2527        x_st = "X" 
    25332528        for index in range(len(data.x)): 
    25342529            if data.dy is not None and len(data.dy) > index: 
     
    25412536                dx_val = 0.0 
    25422537            if data.dxl is not None and len(data.dxl) > index: 
     2538                if index == 0: 
     2539                    x_st = "Xl" 
    25432540                dx_val = data.dxl[index] 
    2544                 if data.dxw is not None and len(data.dxw) > index: 
    2545                     dx_val = "%s \t%s" % (data.dxl[index], data.dxw[index]) 
    2546  
     2541            elif data.dxw is not None and len(data.dxw) > index: 
     2542                if index == 0: 
     2543                    x_st = "Xw" 
     2544                dx_val = data.dxw[index] 
     2545 
     2546            if index == 0: 
     2547                text += "<index> \t<X> \t<Y> \t<dY> \t<d%s>\n" % x_st 
    25472548            text += "%s \t%s \t%s \t%s \t%s\n" % (index, 
    25482549                                                  data.x[index], 
     
    25612562        """ 
    25622563        default_name = fname 
    2563         wildcard = "IGOR/DAT 2D file in Q_map (*.dat)|*.DAT|"\ 
    2564                    "NXcanSAS files (*.h5)|*.h5|" 
     2564        wildcard = "IGOR/DAT 2D file in Q_map (*.dat)|*.DAT" 
    25652565        dlg = wx.FileDialog(self, "Choose a file", 
    25662566                            self._default_save_location, 
     
    25742574            if ext_num == 0: 
    25752575                ext_format = '.dat' 
    2576             elif ext_num == 1: 
    2577                 ext_format = '.h5' 
    25782576            else: 
    25792577                ext_format = '' 
     
    25832581            # Instantiate a loader 
    25842582            loader = Loader() 
    2585             if os.path.splitext(mypath)[1].lower() == '.dat': 
     2583 
     2584            ext_format = ".dat" 
     2585            if os.path.splitext(mypath)[1].lower() == ext_format: 
    25862586                # Make sure the ext included in the file name 
    25872587                # especially on MAC 
    25882588                fileName = os.path.splitext(path)[0] + ext_format 
    25892589                loader.save(fileName, data, ext_format) 
    2590             elif os.path.splitext(mypath)[1].lower() == '.h5': 
    2591                 # Make sure the ext included in the file name 
    2592                 # especially on MAC 
    2593                 fileName = os.path.splitext(path)[0] + ext_format 
    2594                 nxcansaswriter = NXcanSASWriter() 
    2595                 nxcansaswriter.write([data], fileName) 
    25962590            try: 
    25972591                self._default_save_location = os.path.dirname(path) 
Note: See TracChangeset for help on using the changeset viewer.