pymodaq 4.2.0__py3-none-any.whl → 4.2.2__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


This version of pymodaq might be problematic. Click here for more details.

pymodaq/__init__.py CHANGED
@@ -90,24 +90,6 @@ try:
90
90
  get_instrument_plugins()
91
91
  logger.info('*************************************************************************')
92
92
 
93
- if config('network', 'leco-server', 'run_coordinator_at_startup'):
94
- try:
95
- from pymodaq.utils.leco.utils import start_coordinator
96
- logger.info('')
97
- logger.info('')
98
- logger.info(f'********************************')
99
- logger.info(f"Starting the LECO Coordinator...")
100
- start_coordinator()
101
- logger.info(f"Done")
102
- except ImportError as e:
103
- logger.warning(f'Issue while importing the pyleco package: {str(e)}')
104
- except Exception as e:
105
- logger.warning(f'Issue while starting the pyleco coordinator: {str(e)}')
106
- finally:
107
- logger.info('************************')
108
- logger.info('')
109
- logger.info('')
110
-
111
93
  logger.info('')
112
94
  logger.info('')
113
95
  logger.info('************************')
@@ -22,6 +22,7 @@ from pymodaq.utils.plotting.data_viewers import ViewersEnum
22
22
  from pymodaq.utils.exceptions import DetectorError
23
23
  from pymodaq.utils import config as configmod
24
24
  from pymodaq.utils.leco.pymodaq_listener import ActorListener, LECOClientCommands, LECOCommands
25
+ from pymodaq.utils.logger import get_base_logger
25
26
 
26
27
 
27
28
  class DAQTypesEnum(BaseEnum):
@@ -294,7 +295,7 @@ class ControlModule(QObject):
294
295
  def show_log(self):
295
296
  """Open the log file in the default text editor"""
296
297
  import webbrowser
297
- webbrowser.open(self.logger.parent.handlers[0].baseFilename)
298
+ webbrowser.open(get_base_logger(self.logger).handlers[0].baseFilename)
298
299
 
299
300
  def show_config(self, config: Config) -> Config:
300
301
  """ Display in a tree the current configuration"""
pymodaq/resources/VERSION CHANGED
@@ -1 +1 @@
1
- version = '4.2.0'
1
+ version = '4.2.2'
@@ -0,0 +1,25 @@
1
+ from pymodaq.utils.logger import set_logger
2
+ from pymodaq.utils.config import Config
3
+
4
+ logger = set_logger('pymodaq')
5
+ config = Config() # to ckeck for config file existence, otherwise create one
6
+
7
+
8
+ if config('network', 'leco-server', 'run_coordinator_at_startup'):
9
+ try:
10
+ from pymodaq.utils.leco.utils import start_coordinator
11
+
12
+ logger.info('')
13
+ logger.info('')
14
+ logger.info(f'********************************')
15
+ logger.info(f"Starting the LECO Coordinator...")
16
+ start_coordinator()
17
+ logger.info(f"Done")
18
+ except ImportError as e:
19
+ logger.warning(f'Issue while importing the pyleco package: {str(e)}')
20
+ except Exception as e:
21
+ logger.warning(f'Issue while starting the pyleco coordinator: {str(e)}')
22
+ finally:
23
+ logger.info('************************')
24
+ logger.info('')
25
+ logger.info('')
pymodaq/utils/logger.py CHANGED
@@ -66,6 +66,12 @@ def set_logger(logger_name, add_handler=False, base_logger=False, add_to_console
66
66
  return logger
67
67
 
68
68
 
69
+ def get_base_logger(logger: logging.Logger) -> logging.Logger:
70
+ while logger.name != 'pymodaq':
71
+ logger = logger.parent
72
+ return logger
73
+
74
+
69
75
  def get_module_name(module__file__path):
70
76
  """from the full path of a module extract its name"""
71
77
  path = Path(module__file__path)
@@ -119,7 +119,9 @@ class PresetManager:
119
119
  for param, change, data in changes:
120
120
  path = self.preset_params.childPath(param)
121
121
  if change == 'childAdded':
122
- data[0].child('params', 'main_settings', 'module_name').setValue(data[0].child('name').value())
122
+ if len(data) > 1:
123
+ if 'params' in data[0].children():
124
+ data[0].child('params', 'main_settings', 'module_name').setValue(data[0].child('name').value())
123
125
 
124
126
  elif change == 'value':
125
127
 
@@ -650,11 +650,12 @@ class View2D(ActionManager, QtCore.QObject):
650
650
  self.ROIselect.setSize(rect.size() * 2 / 3)
651
651
 
652
652
  def set_image_labels(self, labels: List[str]):
653
- action_names =['red', 'green', 'blue']
654
- for action_name, label in zip(action_names[:len(labels)], labels):
655
- self.get_action(action_name).setToolTip(f'{self.get_action(action_name).toolTip()}'
656
- f' - '
657
- f'{label}')
653
+ if self.data_displayer.labels != labels:
654
+ action_names =['red', 'green', 'blue']
655
+ for action_name, label in zip(action_names[:len(labels)], labels):
656
+ self.get_action(action_name).setToolTip('Show/Hide'
657
+ f' - '
658
+ f'{label}')
658
659
 
659
660
  def set_axis_label(self, position, label='', units=''):
660
661
  """
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.3
2
2
  Name: pymodaq
3
- Version: 4.2.0
3
+ Version: 4.2.2
4
4
  Summary: Modular Data Acquisition with Python
5
5
  Project-URL: Homepage, http://pymodaq.cnrs.fr
6
6
  Project-URL: Source, https://github.com/PyMoDAQ/PyMoDAQ
@@ -1,4 +1,4 @@
1
- pymodaq/__init__.py,sha256=EjnfWRmdRCssq-NZgHAEtvbOOFlKrroCvCGm1DwLCAg,4991
1
+ pymodaq/__init__.py,sha256=OzwjVWbxpnESia6TdOYBQInMYYeG3angsHwXWgLedrQ,4240
2
2
  pymodaq/dashboard.py,sha256=4JK_I5M_KbGTyw18ws5cA9NwRersn7yAj_g6u2Ud4LA,64575
3
3
  pymodaq/icon.ico,sha256=hOHHfNDENKphQvG1WDleSEYcHukneR2eRFJu8isIlD4,74359
4
4
  pymodaq/splash.png,sha256=ow8IECF3tPRUMA4tf2tMu1aRiMaxx91_Y2ckVxkrmF0,53114
@@ -9,7 +9,7 @@ pymodaq/control_modules/daq_viewer.py,sha256=E9DDC8LaOZsxciEo05CTfBp8zXmc-_N017l
9
9
  pymodaq/control_modules/daq_viewer_ui.py,sha256=FWP3jdIOR9vTgYqNaaodteGZ3dwgQ1GdWKrOpOAuSrs,15693
10
10
  pymodaq/control_modules/mocks.py,sha256=hh_xSWp9g1UV3NAQVD9Ft9tNWfTsSvKU0OU0trgzP2w,1956
11
11
  pymodaq/control_modules/move_utility_classes.py,sha256=8ePiQUQ7AEBnhn4CjWPjMmo10yLznGHF9-s28OzYWGg,33382
12
- pymodaq/control_modules/utils.py,sha256=-_qU8HeFzWpO4dBK3jZLijDziU_vT8yGwGyxchycnC8,20272
12
+ pymodaq/control_modules/utils.py,sha256=hWRJ1k-apFSUWopZIefsE91dBa_DVI240uklXzYGDlY,20331
13
13
  pymodaq/control_modules/viewer_utility_classes.py,sha256=XHL0UOi9rfDezyePaiBhh4KiAH0qeogo3AipA9ei2O8,26509
14
14
  pymodaq/examples/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
15
15
  pymodaq/examples/custom_app.py,sha256=2wQR0hlPWjZrWK0abNF6ASv8iQyJqRn2CKnBa_nAgN4,10452
@@ -57,7 +57,7 @@ pymodaq/post_treatment/daq_measurement/daq_measurement_GUI.py,sha256=1u7hWDaiwsZ
57
57
  pymodaq/post_treatment/daq_measurement/daq_measurement_GUI.ui,sha256=PyzbCWPMkh5oIYYteZczXyWMeHKW9EJmM1QlzXhnyTk,7037
58
58
  pymodaq/post_treatment/daq_measurement/daq_measurement_main.py,sha256=CAKwcWMOD86aXB8mbdxOK7e8nZRos5d59FzDtqK1QoY,17093
59
59
  pymodaq/post_treatment/daq_measurement/process_from_QtDesigner_DAQ_Measurement_GUI.bat,sha256=e1tu2A67MS9fk3jhriF6saQgRxWIucIvNW92iWXFP6E,164
60
- pymodaq/resources/VERSION,sha256=6Gq08tcA4IxdsUkcOBXAIxu3adgAyv8CF8s17Yr6vNU,17
60
+ pymodaq/resources/VERSION,sha256=jzOViljn39B2vYgUGg8dWFn_c3tT5r2Ze5rCzN3oRHk,18
61
61
  pymodaq/resources/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
62
62
  pymodaq/resources/config_template.toml,sha256=klU5XH_2DBkF8QLIS-ZBQZCKfhwnrxyQHoG2meCEmEA,2889
63
63
  pymodaq/resources/preset_default.xml,sha256=Dt8iWLwPPOPtcG00JCVP-mh-G7KC6B0YN8hd8RQdnNI,27256
@@ -309,7 +309,7 @@ pymodaq/utils/data.py,sha256=XCk4oFWXvkIEloHSQruXvs27vHTnNJBZcpK8l6QYm9Y,105709
309
309
  pymodaq/utils/enums.py,sha256=wpRipioUJkKcEfoaY2NrDQ2WhGxZTZiZoJty5f2Ljpc,2236
310
310
  pymodaq/utils/exceptions.py,sha256=wLO6VlofzfwWkOOWMN2B-3NEWMfpgygyeEdakIx_rAs,668
311
311
  pymodaq/utils/factory.py,sha256=QLqAPFnTZ93eUpmAAIr7kESDk2enD57RNSuFUsjxE4E,2311
312
- pymodaq/utils/logger.py,sha256=JPaLBeu5NAd_5xvkzj4BRviLqXgFlu7b7B8ADfE7-L8,2604
312
+ pymodaq/utils/logger.py,sha256=VxymWeeS38VjNre3wjY_lBv06ynstPyI5JrFNgo4PXc,2754
313
313
  pymodaq/utils/math_utils.py,sha256=ydLPe25bQBeR0cI5QcEYgun-lXxycVD9nZLpHA-fFYo,18170
314
314
  pymodaq/utils/messenger.py,sha256=N5SPc9NomIGtK0TihQ0oq9evlxyWNYELWfpr2s8PoWw,2072
315
315
  pymodaq/utils/qvariant.py,sha256=iIBp-DDk5OVBIEqX5SwqwrJyy5t2cRgFFyfgvxQOHqM,311
@@ -350,6 +350,7 @@ pymodaq/utils/h5modules/exporters/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeR
350
350
  pymodaq/utils/h5modules/exporters/base.py,sha256=hGX2teIMO03QB0qBGTP4rzeXbZrQcVLskO0oQuGGgpE,4120
351
351
  pymodaq/utils/h5modules/exporters/flimj.py,sha256=z44C30KlAbaPmjnS5inYophnA18LwwqZOa1UMLEi4Tw,2361
352
352
  pymodaq/utils/h5modules/exporters/hyperspy.py,sha256=rheeVJQO0BAF606D_0S_j8huzOLzZfkUAp0OdJEnUz4,6517
353
+ pymodaq/utils/leco/__init__.py,sha256=wxgCC-0eragO_REWDMp-2zg9kK5l_W9oO68dtRYdoKA,878
353
354
  pymodaq/utils/leco/daq_move_LECODirector.py,sha256=roAGsTCK4fZ--G3T2enRwD6i6wOuq1b7iwViuUi0noY,6382
354
355
  pymodaq/utils/leco/daq_xDviewer_LECODirector.py,sha256=DsB-rLdmmA7B_Iv3cN7wetjL_ZH6FA5ZXgB_Y3y_CY0,5990
355
356
  pymodaq/utils/leco/desktop.ini,sha256=2zopClaSQqdFfIsC8CGo2Oc-14x9h1gV0-fUrDtLFmA,82
@@ -363,7 +364,7 @@ pymodaq/utils/managers/batchscan_manager.py,sha256=jcL08YvFafX5kiy03BV1_6obt2Xog
363
364
  pymodaq/utils/managers/modules_manager.py,sha256=RKpt1RU0VrELBPmTAlLB_B5k-5KX7deHnequgOFfYKk,20821
364
365
  pymodaq/utils/managers/overshoot_manager.py,sha256=fe_CR1Bkw85BER34MoVFlm-xtKl9Hr9bkf2nyaz9hXg,7158
365
366
  pymodaq/utils/managers/parameter_manager.py,sha256=s06ja77XrE8C6ksVT4pf1dBpKaA2b1eB4XT2fLvdJeo,11484
366
- pymodaq/utils/managers/preset_manager.py,sha256=u_gssDcJ-z6oj9Wyrppt1H-FW9pbeihxA8jU00hEFpM,8205
367
+ pymodaq/utils/managers/preset_manager.py,sha256=2cb4m_TqZ8DEvYVxM_4jdNOrhSeite84_3ka3DU2aY4,8302
367
368
  pymodaq/utils/managers/preset_manager_utils.py,sha256=d148YBjeNOP9FTkFoTsfdRDxMIXOR8JJHqbOmoL2aVA,8155
368
369
  pymodaq/utils/managers/remote_manager.py,sha256=H6k9aiBkuJRJbZ4rpd5jfawQ-pMRFAXOE_miakvciP8,22251
369
370
  pymodaq/utils/managers/roi_manager.py,sha256=j6HUd4XwNZ6UhBs4nZ_z2iU74pJiHfMzzDBmQBLi7nY,29064
@@ -395,7 +396,7 @@ pymodaq/utils/plotting/data_viewers/viewer.py,sha256=NjYzOdKE17BDhYJROfLkCU2vwiO
395
396
  pymodaq/utils/plotting/data_viewers/viewer0D.py,sha256=jFYdz_JroGpKwDLUv6gpX3-GvRQK5Det8jev_X3ItZc,11608
396
397
  pymodaq/utils/plotting/data_viewers/viewer1D.py,sha256=IjU4u5ATZCqsvQMwyOQsuMZkfwpbmCmzBR39YIjZcyU,32083
397
398
  pymodaq/utils/plotting/data_viewers/viewer1Dbasic.py,sha256=u91tVhmi_WIlVa8areapb0xWu0NOr5pVRLMylY_in7g,7432
398
- pymodaq/utils/plotting/data_viewers/viewer2D.py,sha256=ivebdhJ4fR5Yv_rXZLntMojv5D_wRRqRvECBUCzDItg,46166
399
+ pymodaq/utils/plotting/data_viewers/viewer2D.py,sha256=M0Fb3wJ18OSz57edENXZUtpA6auAgO1QczK25-ULlH8,46203
399
400
  pymodaq/utils/plotting/data_viewers/viewer2D_basic.py,sha256=aRLu8JVZZI8PH6Lxl8oITpHwUXaUY3PyLW6eHzkf76o,5588
400
401
  pymodaq/utils/plotting/data_viewers/viewerND.py,sha256=NrEPrFcE-UxuC95l5W258YqrP58-4WvTg2H80wfucaA,38531
401
402
  pymodaq/utils/plotting/items/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
@@ -430,8 +431,8 @@ pymodaq/utils/tcp_ip/__init__.py,sha256=1e_EK0AgvdoLAD_CSGGEaITZdy6OWCO7ih9IAIp7
430
431
  pymodaq/utils/tcp_ip/mysocket.py,sha256=StAWj8dzHeMnbLj68Sel81uWFy-YkKVNRnVf7gXrESI,3452
431
432
  pymodaq/utils/tcp_ip/serializer.py,sha256=HJziYyR_duhGBt8QikmqET8OH1uI5OAFgQu4w4jCQt4,25776
432
433
  pymodaq/utils/tcp_ip/tcp_server_client.py,sha256=xIMTNgVW_rKK0yTi4FDNFLf85-Akb27Jz2LdrvOrP68,30660
433
- pymodaq-4.2.0.dist-info/METADATA,sha256=WW0JK_Va2orRXPH-p-LvzAdttZXJAyCvzJ1Lu5ADCB0,7665
434
- pymodaq-4.2.0.dist-info/WHEEL,sha256=zEMcRr9Kr03x1ozGwg5v9NQBKn3kndp6LSoSlVg-jhU,87
435
- pymodaq-4.2.0.dist-info/entry_points.txt,sha256=RAzdYNjvUT28I2eiCKki_g2NzXq0woWxhev6lwzwRv8,348
436
- pymodaq-4.2.0.dist-info/licenses/LICENSE,sha256=VKOejxexXAe3XwfhAhcFGqeXQ12irxVHdeAojZwFEI8,1108
437
- pymodaq-4.2.0.dist-info/RECORD,,
434
+ pymodaq-4.2.2.dist-info/METADATA,sha256=vurUwZiW6_RAkMXFPkY9dmeDFpRm--NjRBCaXR_RedA,7665
435
+ pymodaq-4.2.2.dist-info/WHEEL,sha256=zEMcRr9Kr03x1ozGwg5v9NQBKn3kndp6LSoSlVg-jhU,87
436
+ pymodaq-4.2.2.dist-info/entry_points.txt,sha256=RAzdYNjvUT28I2eiCKki_g2NzXq0woWxhev6lwzwRv8,348
437
+ pymodaq-4.2.2.dist-info/licenses/LICENSE,sha256=VKOejxexXAe3XwfhAhcFGqeXQ12irxVHdeAojZwFEI8,1108
438
+ pymodaq-4.2.2.dist-info/RECORD,,