Changeset a4a1ac9 in sasview
- Timestamp:
- Sep 10, 2018 1:26:03 PM (6 years ago)
- Branches:
- master, magnetic_scatt, release-4.2.2, ticket-1009, ticket-1094-headless, ticket-1242-2d-resolution, ticket-1243, ticket-1249, unittest-saveload
- Children:
- 17cccd0
- Parents:
- 6015eee (diff), 44e8f48 (diff)
Note: this is a merge changeset, the changes displayed below correspond to the merge itself.
Use the (diff) links above to see all the changes relative to each parent. - git-author:
- Paul Kienzle <pkienzle@…> (09/10/18 13:26:03)
- git-committer:
- GitHub <noreply@…> (09/10/18 13:26:03)
- Files:
-
- 4 added
- 14 edited
Legend:
- Unmodified
- Added
- Removed
-
src/sas/sasgui/guiframe/report_dialog.py
r91552b5 rd0ce666f 7 7 import sys 8 8 import wx.html as html 9 from sas.sasgui.guiframe.report_image_handler import ReportImageHandler 9 10 10 11 logger = logging.getLogger(__name__) … … 70 71 button_close = wx.Button(self, wx.ID_OK, "Close") 71 72 button_close.SetToolTipString("Close this report window.") 73 button_close.Bind(wx.EVT_BUTTON, self.onClose, 74 id=button_close.GetId()) 72 75 hbox.Add(button_close) 73 76 button_close.SetFocus() … … 117 120 118 121 119 def OnClose(self, event=None):122 def onClose(self, event=None): 120 123 """ 121 124 Close the Dialog … … 123 126 """ 124 127 for fig in self.fig_urls: 125 self.imgRAM.RemoveFile(fig)128 ReportImageHandler.remove_figure(fig) 126 129 127 self. Close()130 self.Destroy() 128 131 129 132 def HTML2PDF(self, data, filename): -
src/sas/sasgui/perspectives/fitting/basepage.py
rb4398819 ra4a1ac9 31 31 32 32 from sas.sasgui.guiframe.panel_base import PanelBase 33 from sas.sasgui.guiframe.report_image_handler import ReportImageHandler 33 34 from sas.sasgui.guiframe.utils import format_number, check_float, IdList, \ 34 35 check_int … … 651 652 by plotting, putting it into wx.FileSystem image object 652 653 """ 653 images = [] 654 refs = [] 655 656 # For no figures in the list, prepare empty plot 657 if figs is None or len(figs) == 0: 658 figs = [None] 659 660 # Loop over the list of figures 661 # use wx.MemoryFSHandler 662 imgRAM = wx.MemoryFSHandler() 663 for fig in figs: 664 if fig is not None: 665 ind = figs.index(fig) 666 canvas = canvases[ind] 667 668 # store the image in wx.FileSystem Object 669 wx.FileSystem.AddHandler(wx.MemoryFSHandler()) 670 671 # index of the fig 672 ind = figs.index(fig) 673 674 # AddFile, image can be retrieved with 'memory:filename' 675 name = 'img_fit%s.png' % ind 676 refs.append('memory:' + name) 677 imgRAM.AddFile(name, canvas.bitmap, wx.BITMAP_TYPE_PNG) 678 # append figs 679 images.append(fig) 680 681 return imgRAM, images, refs 682 654 bitmaps = [] 655 for canvas in canvases: 656 bitmaps.append(canvas.bitmap) 657 imgs, refs = ReportImageHandler.set_figs(figs, bitmaps, 'fit') 658 659 return ReportImageHandler.instance, imgs, refs 683 660 684 661 def on_save(self, event): -
src/sas/sasgui/perspectives/fitting/report_dialog.py
r69a6897 r44e8f48 72 72 filename = basename + ext 73 73 74 # save figures 75 pictures = [] 76 for num in range(self.nimages): 77 pic_name = basename + '_img%s.png' % num 78 # save the image for use with pdf writer 79 self.report_list[2][num].savefig(pic_name) 80 pictures.append(pic_name) 74 # save the images for use with pdf writer 75 pictures = [ 76 '_'.join((basename, url.split(':')[1])) for url in self.fig_urls] 77 for i, pic in enumerate(pictures): 78 self.report_list[2][i].savefig(pic) 81 79 82 80 # translate png references int html from in-memory name to on-disk name 83 html = self.report_html.replace("memory: img_fit", basename+'_img')81 html = self.report_html.replace("memory:", basename+'_') 84 82 85 83 #set file extensions -
src/sas/sasgui/perspectives/invariant/invariant_panel.py
r2469df7 r44e8f48 24 24 from sas.sasgui.guiframe.panel_base import PanelBase 25 25 from sas.sasgui.guiframe.documentation_window import DocumentationWindow 26 from sas.sasgui.guiframe.report_image_handler import ReportImageHandler 26 27 27 28 logger = logging.getLogger(__name__) … … 783 784 report_img = self.state.image 784 785 report_list = [report_html_str, report_text_str, report_img] 785 dialog = ReportDialog(report_list, None, -1, "") 786 ReportImageHandler.check_for_empty_instance() 787 imgRAM = ReportImageHandler.instance.img_holder 788 refs = [self.state.wximgbmp] 789 dialog = ReportDialog(report_list, imgRAM, refs, None, wx.ID_ANY, "") 786 790 dialog.Show() 787 791 -
src/sas/sasgui/perspectives/invariant/invariant_state.py
r2469df7 rfa412df 12 12 from lxml import etree 13 13 from sas.sascalc.dataloader.readers.cansas_reader import Reader as CansasReader 14 from sas.sasgui.guiframe.report_image_handler import ReportImageHandler 14 15 from sas.sascalc.dataloader.readers.cansas_reader import get_content 15 16 from sas.sasgui.guiframe.utils import format_number … … 611 612 wximgbmp = wx.BitmapFromImage(wximg) 612 613 # store the image in wx.FileSystem Object 613 wx.FileSystem.AddHandler(wx.MemoryFSHandler()) 614 # use wx.MemoryFSHandler 615 self.imgRAM = wx.MemoryFSHandler() 616 # AddFile, image can be retrieved with 'memory:filename' 617 self.imgRAM.AddFile('img_inv.png', wximgbmp, wx.BITMAP_TYPE_PNG) 618 619 self.wximgbmp = 'memory:img_inv.png' 620 self.image = fig 614 imgs, refs = ReportImageHandler.set_figs([fig], [wximgbmp], 'inv') 615 616 self.wximgbmp = refs[0] 617 self.image = imgs[0] 621 618 622 619 class Reader(CansasReader): -
src/sas/sasgui/perspectives/invariant/report_dialog.py
r959eb01 rd0ce666f 41 41 42 42 # put image path in the report string 43 self.report_html = self.report_list[0] % "memory:img_inv.png"43 self.report_html = self.report_list[0] % self.fig_urls[0] 44 44 # layout 45 45 self._setup_layout() -
.gitignore
r1b605fb r153b75a 34 34 /docs/sphinx-docs/build 35 35 /docs/sphinx-docs/source-temp 36 /docs/sphinx-docs/source/dev/api37 /docs/sphinx-docs/source/user/guiframe38 /docs/sphinx-docs/source/user/models39 /docs/sphinx-docs/source/user/sasview40 /docs/sphinx-docs/source/user/perspectives41 36 /docs/sphinx-docs/katex*.zip 42 37 /docs/sphinx-docs/node_modules -
docs/sphinx-docs/build_sphinx.py
rdf72475 r153b75a 8 8 from __future__ import print_function 9 9 10 import s ubprocess10 import sys 11 11 import os 12 12 from os.path import join as joinpath, abspath, dirname, isdir, exists, relpath 13 import sys14 import fnmatch15 13 import shutil 14 import subprocess 16 15 import imp 17 18 16 from glob import glob 19 17 from distutils.dir_util import copy_tree … … 21 19 from distutils.spawn import find_executable 22 20 23 from shutil import copy 24 from os import listdir 25 26 platform = '.%s-%s'%(get_platform(),sys.version[:3]) 21 PLATFORM = '.%s-%s'%(get_platform(), sys.version[:3]) 27 22 28 23 # sphinx paths … … 35 30 SASVIEW_ROOT = joinpath(SPHINX_ROOT, '..', '..') 36 31 SASVIEW_DOCS = joinpath(SPHINX_ROOT, "source") 37 SASVIEW_BUILD = abspath(joinpath(SASVIEW_ROOT, "build", "lib"+ platform))32 SASVIEW_BUILD = abspath(joinpath(SASVIEW_ROOT, "build", "lib"+PLATFORM)) 38 33 SASVIEW_MEDIA_SOURCE = joinpath(SASVIEW_ROOT, "src", "sas") 39 34 SASVIEW_DOC_TARGET = joinpath(SASVIEW_BUILD, "doc") … … 65 60 66 61 def inplace_change(filename, old_string, new_string): 67 # Thanks to http://stackoverflow.com/questions/4128144/replace-string-within-file-contents 68 s=open(filename).read() 69 if old_string in s: 70 print('Changing "{old_string}" to "{new_string}"'.format(**locals())) 71 s=s.replace(old_string, new_string) 72 f=open(filename, 'w') 73 f.write(s) 74 f.flush() 75 f.close() 76 else: 77 print('No occurences of "{old_string}" found.'.format(**locals())) 62 # Thanks to http://stackoverflow.com/questions/4128144/replace-string-within-file-contents 63 s = open(filename).read() 64 if old_string in s: 65 print('Changing "{old_string}" to "{new_string}"'.format(**locals())) 66 s = s.replace(old_string, new_string) 67 with open(filename, 'w') as f: 68 f.write(s) 69 else: 70 print('No occurences of "{old_string}" found.'.format(**locals())) 78 71 79 72 def _remove_dir(dir_path): … … 241 234 finally: 242 235 fd_in.close() 243 with ZipFile(cache_path) as zip:244 zip.extractall(destination)236 with ZipFile(cache_path) as archive: 237 archive.extractall(destination) 245 238 246 239 def convert_katex(): -
docs/sphinx-docs/source/conf.py
ra8bbba2 rb229a3b 11 11 # All configuration values have a default; values that are commented out 12 12 # serve to show the default. 13 from __future__ import print_function 13 14 14 15 import sys, os, collections … … 22 23 sys.path.insert(0, build_lib) 23 24 sys.path.insert(0, os.path.abspath('_extensions')) # for sphinx extensions 24 print "-- path --"25 print "\n".join(sys.path)25 print("-- path --") 26 print("\n".join(sys.path)) 26 27 27 28 # -- General configuration ----------------------------------------------------- … … 80 81 version = '4.2' 81 82 # The full version, including alpha/beta/rc tags. 82 release = '4.2.0 -beta'83 release = '4.2.0' 83 84 84 85 # The language for content autogenerated by Sphinx. Refer to documentation -
docs/sphinx-docs/source/rst_prolog
r1659f54 r153b75a 1 .. TODO: This file is ignored! Prolog comes from sasmodels/doc/rst_prolog. 2 1 3 .. Set up some substitutions to make life easier... 2 4 -
docs/sphinx-docs/source/user/tutorial.rst
r3bd677b re873408 10 10 :download:`Getting Started with Sasview <sasview/getting_started_with_sasview.pdf>` 11 11 12 :download:`Basic 1D Fitting in Sasview <sasview/basic_1d_fitting_in_sasview_v3x_4x.pdf>` 13 14 :download:`Simultaneous 1D Fitting in Sasview <sasview/simultaneous_1d_fitting_in_sasview_v3x_4x.pdf>` 15 12 16 :download:`Old Tutorial <sasview/Tutorial.pdf>` -
src/sas/sasgui/perspectives/calculator/media/slit_calculator_help.rst
r643efb5 r346745a 11 11 ----------- 12 12 13 This tool enables X-ray users to calculate the slit size (FWHM/2) for smearing 14 based on their half beam profile data. 13 This tool enables X-ray users to calculate the slit size (FWHM/2) for resolution 14 smearing purposes based on their half beam profile data (as Q vs Intensity; any 15 other data fields are ignored). 15 16 16 *NOTE! Whilst it may have some more generic applicability, the calculator has 17 only been tested with beam profile data from Anton-Paar SAXSess\ :sup:`TM` software.* 17 Method 18 ------ 19 20 The tool works by sequentially summing 10 or more intensity values until a 21 maximum value is attained. It then locates the Q values for the points just before, 22 and just after, **half** of this maximum value and interpolates between them to get 23 an accurate value for the Q value for the half maximum. 24 25 NOTE! Whilst it may have some more generic applicability, the calculator has 26 only been tested with beam profile data from Anton-Paar SAXSess\ :sup:`TM`\ software. 27 The beam profile file does not carry any information about the units of the 28 Q data. It is probably |nm^-1| but the resolution calculations assume the slit 29 height/width has units of |Ang^-1|. If the beam profile data is not in these 30 units then it, or the result, must be manually converted. 18 31 19 32 .. ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZ … … 27 40 28 41 *NOTE! To see an example of the beam profile file format, visit the file 29 beam profile.DAT in your {installation_directory}/SasView/test folder.*42 beam profile.DAT in your {installation_directory}/SasView/test_1d folder.* 30 43 31 44 3) Once a data is loaded, the slit size is automatically computed and displayed 32 45 in the tool window. 33 46 34 *NOTE! The beam profile file does not carry any information about the units of35 the Q data. This calculator assumes the data has units of 1/\ |Ang|\ . If the36 data is not in these units it must be manually converted beforehand.*37 38 47 .. ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZ 39 48 40 .. note:: This help document was last changed by Steve King, 0 1May201549 .. note:: This help document was last changed by Steve King, 09Sep2018 -
src/sas/sasview/__init__.py
ra8bbba2 rb229a3b 1 __version__ = "4.2.0 -beta"1 __version__ = "4.2.0" 2 2 __build__ = "GIT_COMMIT" -
src/sas/sasview/local_config.py
rb963b20 rb229a3b 48 48 '''This work benefited from the use of the SasView application, originally developed under NSF Award DMR-0520547. SasView also contains code developed with funding from the EU Horizon 2020 programme under the SINE2020 project Grant No 654000.''' 49 49 _acknowledgement_citation = \ 50 '''M. Doucet et al. SasView Version 4. 1.2, Zenodo, 10.5281/zenodo.825675'''50 '''M. Doucet et al. SasView Version 4.2, Zenodo, 10.5281/zenodo.1412041''' 51 51 52 52 _acknowledgement = \
Note: See TracChangeset
for help on using the changeset viewer.