PySimultan 0.5.9.5__tar.gz → 0.5.9.6__tar.gz

Sign up to get free protection for your applications and to get access to all the features.
Files changed (125) hide show
  1. {pysimultan-0.5.9.5 → pysimultan-0.5.9.6}/PKG-INFO +1 -1
  2. pysimultan-0.5.9.6/src/PySimultan2/__about__.py +1 -0
  3. {pysimultan-0.5.9.5 → pysimultan-0.5.9.6}/src/PySimultan2/data_model.py +30 -4
  4. {pysimultan-0.5.9.5 → pysimultan-0.5.9.6}/src/PySimultan2/default_types.py +11 -3
  5. pysimultan-0.5.9.5/src/PySimultan2/__about__.py +0 -1
  6. {pysimultan-0.5.9.5 → pysimultan-0.5.9.6}/.gitignore +0 -0
  7. {pysimultan-0.5.9.5 → pysimultan-0.5.9.6}/LICENSE.txt +0 -0
  8. {pysimultan-0.5.9.5 → pysimultan-0.5.9.6}/README.md +0 -0
  9. {pysimultan-0.5.9.5 → pysimultan-0.5.9.6}/pyproject.toml +0 -0
  10. {pysimultan-0.5.9.5 → pysimultan-0.5.9.6}/src/PySimultan2/CHANGELOG.md +0 -0
  11. {pysimultan-0.5.9.5 → pysimultan-0.5.9.6}/src/PySimultan2/__init__.py +0 -0
  12. {pysimultan-0.5.9.5 → pysimultan-0.5.9.6}/src/PySimultan2/files.py +0 -0
  13. {pysimultan-0.5.9.5 → pysimultan-0.5.9.6}/src/PySimultan2/geometry/__init__.py +0 -0
  14. {pysimultan-0.5.9.5 → pysimultan-0.5.9.6}/src/PySimultan2/geometry/geometry_base.py +0 -0
  15. {pysimultan-0.5.9.5 → pysimultan-0.5.9.6}/src/PySimultan2/geometry/utils.py +0 -0
  16. {pysimultan-0.5.9.5 → pysimultan-0.5.9.6}/src/PySimultan2/multi_values.py +0 -0
  17. {pysimultan-0.5.9.5 → pysimultan-0.5.9.6}/src/PySimultan2/object_mapper.py +0 -0
  18. {pysimultan-0.5.9.5 → pysimultan-0.5.9.6}/src/PySimultan2/resources/AssimpNet.dll +0 -0
  19. {pysimultan-0.5.9.5 → pysimultan-0.5.9.6}/src/PySimultan2/resources/AvalonDock.dll +0 -0
  20. {pysimultan-0.5.9.5 → pysimultan-0.5.9.6}/src/PySimultan2/resources/BruTile.dll +0 -0
  21. {pysimultan-0.5.9.5 → pysimultan-0.5.9.6}/src/PySimultan2/resources/ClosedXML.dll +0 -0
  22. {pysimultan-0.5.9.5 → pysimultan-0.5.9.6}/src/PySimultan2/resources/ComponentBuilder.dll +0 -0
  23. {pysimultan-0.5.9.5 → pysimultan-0.5.9.6}/src/PySimultan2/resources/ComponentBuilder.dll.config +0 -0
  24. {pysimultan-0.5.9.5 → pysimultan-0.5.9.6}/src/PySimultan2/resources/ComponentBuilder.runtimeconfig.json +0 -0
  25. {pysimultan-0.5.9.5 → pysimultan-0.5.9.6}/src/PySimultan2/resources/ComponentBuilder.xml +0 -0
  26. {pysimultan-0.5.9.5 → pysimultan-0.5.9.6}/src/PySimultan2/resources/ControlzEx.dll +0 -0
  27. {pysimultan-0.5.9.5 → pysimultan-0.5.9.6}/src/PySimultan2/resources/Cyotek.Drawing.BitmapFont.dll +0 -0
  28. {pysimultan-0.5.9.5 → pysimultan-0.5.9.6}/src/PySimultan2/resources/DocumentFormat.OpenXml.dll +0 -0
  29. {pysimultan-0.5.9.5 → pysimultan-0.5.9.6}/src/PySimultan2/resources/DotSpatial.Projections.dll +0 -0
  30. {pysimultan-0.5.9.5 → pysimultan-0.5.9.6}/src/PySimultan2/resources/ExcelNumberFormat.dll +0 -0
  31. {pysimultan-0.5.9.5 → pysimultan-0.5.9.6}/src/PySimultan2/resources/Fluent.dll +0 -0
  32. {pysimultan-0.5.9.5 → pysimultan-0.5.9.6}/src/PySimultan2/resources/HelixToolkit.Core.Wpf.dll +0 -0
  33. {pysimultan-0.5.9.5 → pysimultan-0.5.9.6}/src/PySimultan2/resources/HelixToolkit.SharpDX.Core.Wpf.dll +0 -0
  34. {pysimultan-0.5.9.5 → pysimultan-0.5.9.6}/src/PySimultan2/resources/HelixToolkit.SharpDX.Core.dll +0 -0
  35. {pysimultan-0.5.9.5 → pysimultan-0.5.9.6}/src/PySimultan2/resources/HelixToolkit.dll +0 -0
  36. {pysimultan-0.5.9.5 → pysimultan-0.5.9.6}/src/PySimultan2/resources/MathNet.Numerics.dll +0 -0
  37. {pysimultan-0.5.9.5 → pysimultan-0.5.9.6}/src/PySimultan2/resources/Microsoft.AspNetCore.Authorization.dll +0 -0
  38. {pysimultan-0.5.9.5 → pysimultan-0.5.9.6}/src/PySimultan2/resources/Microsoft.AspNetCore.Metadata.dll +0 -0
  39. {pysimultan-0.5.9.5 → pysimultan-0.5.9.6}/src/PySimultan2/resources/Microsoft.Extensions.DependencyInjection.Abstractions.dll +0 -0
  40. {pysimultan-0.5.9.5 → pysimultan-0.5.9.6}/src/PySimultan2/resources/Microsoft.Extensions.Logging.Abstractions.dll +0 -0
  41. {pysimultan-0.5.9.5 → pysimultan-0.5.9.6}/src/PySimultan2/resources/Microsoft.Extensions.Options.dll +0 -0
  42. {pysimultan-0.5.9.5 → pysimultan-0.5.9.6}/src/PySimultan2/resources/Microsoft.Extensions.Primitives.dll +0 -0
  43. {pysimultan-0.5.9.5 → pysimultan-0.5.9.6}/src/PySimultan2/resources/Microsoft.WindowsAPICodePack.Shell.dll +0 -0
  44. {pysimultan-0.5.9.5 → pysimultan-0.5.9.6}/src/PySimultan2/resources/Microsoft.WindowsAPICodePack.dll +0 -0
  45. {pysimultan-0.5.9.5 → pysimultan-0.5.9.6}/src/PySimultan2/resources/Microsoft.Xaml.Behaviors.dll +0 -0
  46. {pysimultan-0.5.9.5 → pysimultan-0.5.9.6}/src/PySimultan2/resources/Newtonsoft.Json.Bson.dll +0 -0
  47. {pysimultan-0.5.9.5 → pysimultan-0.5.9.6}/src/PySimultan2/resources/Newtonsoft.Json.dll +0 -0
  48. {pysimultan-0.5.9.5 → pysimultan-0.5.9.6}/src/PySimultan2/resources/SIMULTAN.AutoUpdate.Client.dll +0 -0
  49. {pysimultan-0.5.9.5 → pysimultan-0.5.9.6}/src/PySimultan2/resources/SIMULTAN.AutoUpdate.Client.dll.config +0 -0
  50. {pysimultan-0.5.9.5 → pysimultan-0.5.9.6}/src/PySimultan2/resources/SIMULTAN.AutoUpdate.DataTransferLibrary.dll +0 -0
  51. {pysimultan-0.5.9.5 → pysimultan-0.5.9.6}/src/PySimultan2/resources/SIMULTAN.AutoUpdate.DataTransferLibrary.dll.config +0 -0
  52. {pysimultan-0.5.9.5 → pysimultan-0.5.9.6}/src/PySimultan2/resources/SIMULTAN.Lang.dll +0 -0
  53. {pysimultan-0.5.9.5 → pysimultan-0.5.9.6}/src/PySimultan2/resources/SIMULTAN.Lang.xml +0 -0
  54. {pysimultan-0.5.9.5 → pysimultan-0.5.9.6}/src/PySimultan2/resources/SIMULTAN.Plugins.dll +0 -0
  55. {pysimultan-0.5.9.5 → pysimultan-0.5.9.6}/src/PySimultan2/resources/SIMULTAN.Plugins.xml +0 -0
  56. {pysimultan-0.5.9.5 → pysimultan-0.5.9.6}/src/PySimultan2/resources/SIMULTAN.UI.dll +0 -0
  57. {pysimultan-0.5.9.5 → pysimultan-0.5.9.6}/src/PySimultan2/resources/SIMULTAN.UI.xml +0 -0
  58. {pysimultan-0.5.9.5 → pysimultan-0.5.9.6}/src/PySimultan2/resources/SIMULTAN.dll +0 -0
  59. {pysimultan-0.5.9.5 → pysimultan-0.5.9.6}/src/PySimultan2/resources/SIMULTAN.xml +0 -0
  60. {pysimultan-0.5.9.5 → pysimultan-0.5.9.6}/src/PySimultan2/resources/SharpDX.D3DCompiler.dll +0 -0
  61. {pysimultan-0.5.9.5 → pysimultan-0.5.9.6}/src/PySimultan2/resources/SharpDX.DXGI.dll +0 -0
  62. {pysimultan-0.5.9.5 → pysimultan-0.5.9.6}/src/PySimultan2/resources/SharpDX.Direct2D1.dll +0 -0
  63. {pysimultan-0.5.9.5 → pysimultan-0.5.9.6}/src/PySimultan2/resources/SharpDX.Direct3D11.dll +0 -0
  64. {pysimultan-0.5.9.5 → pysimultan-0.5.9.6}/src/PySimultan2/resources/SharpDX.Direct3D9.dll +0 -0
  65. {pysimultan-0.5.9.5 → pysimultan-0.5.9.6}/src/PySimultan2/resources/SharpDX.Mathematics.dll +0 -0
  66. {pysimultan-0.5.9.5 → pysimultan-0.5.9.6}/src/PySimultan2/resources/SharpDX.dll +0 -0
  67. {pysimultan-0.5.9.5 → pysimultan-0.5.9.6}/src/PySimultan2/resources/Sprache.Calc.dll +0 -0
  68. {pysimultan-0.5.9.5 → pysimultan-0.5.9.6}/src/PySimultan2/resources/Sprache.dll +0 -0
  69. {pysimultan-0.5.9.5 → pysimultan-0.5.9.6}/src/PySimultan2/resources/System.Collections.Immutable.dll +0 -0
  70. {pysimultan-0.5.9.5 → pysimultan-0.5.9.6}/src/PySimultan2/resources/System.Data.OleDb.dll +0 -0
  71. {pysimultan-0.5.9.5 → pysimultan-0.5.9.6}/src/PySimultan2/resources/System.Net.Http.Formatting.dll +0 -0
  72. {pysimultan-0.5.9.5 → pysimultan-0.5.9.6}/src/PySimultan2/resources/System.Reflection.Metadata.dll +0 -0
  73. {pysimultan-0.5.9.5 → pysimultan-0.5.9.6}/src/PySimultan2/resources/System.Reflection.MetadataLoadContext.dll +0 -0
  74. {pysimultan-0.5.9.5 → pysimultan-0.5.9.6}/src/PySimultan2/resources/XAMLMarkupExtensions.dll +0 -0
  75. {pysimultan-0.5.9.5 → pysimultan-0.5.9.6}/src/PySimultan2/resources/__init__.py +0 -0
  76. {pysimultan-0.5.9.5 → pysimultan-0.5.9.6}/src/PySimultan2/resources/assimp.dll +0 -0
  77. {pysimultan-0.5.9.5 → pysimultan-0.5.9.6}/src/PySimultan2/resources/componentmanager.user +0 -0
  78. {pysimultan-0.5.9.5 → pysimultan-0.5.9.6}/src/PySimultan2/resources/defaultsettings.xml +0 -0
  79. {pysimultan-0.5.9.5 → pysimultan-0.5.9.6}/src/PySimultan2/resources/setup.bat +0 -0
  80. {pysimultan-0.5.9.5 → pysimultan-0.5.9.6}/src/PySimultan2/simultan_object.py +0 -0
  81. {pysimultan-0.5.9.5 → pysimultan-0.5.9.6}/src/PySimultan2/taxonomy_maps.py +0 -0
  82. {pysimultan-0.5.9.5 → pysimultan-0.5.9.6}/src/PySimultan2/type_setter_lookup.py +0 -0
  83. {pysimultan-0.5.9.5 → pysimultan-0.5.9.6}/src/PySimultan2/utils.py +0 -0
  84. {pysimultan-0.5.9.5 → pysimultan-0.5.9.6}/tests/RoomAcoustics_V02.py +0 -0
  85. {pysimultan-0.5.9.5 → pysimultan-0.5.9.6}/tests/__init__.py +0 -0
  86. {pysimultan-0.5.9.5 → pysimultan-0.5.9.6}/tests/readme_examples/__init__.py +0 -0
  87. {pysimultan-0.5.9.5 → pysimultan-0.5.9.6}/tests/readme_examples/create_component.py +0 -0
  88. {pysimultan-0.5.9.5 → pysimultan-0.5.9.6}/tests/readme_examples/create_component_with_taxonomy_slot.py +0 -0
  89. {pysimultan-0.5.9.5 → pysimultan-0.5.9.6}/tests/readme_examples/create_referenced_component.py +0 -0
  90. {pysimultan-0.5.9.5 → pysimultan-0.5.9.6}/tests/readme_examples/create_taxonomies.py +0 -0
  91. {pysimultan-0.5.9.5 → pysimultan-0.5.9.6}/tests/readme_examples/resources/__init__.py +0 -0
  92. {pysimultan-0.5.9.5 → pysimultan-0.5.9.6}/tests/readme_examples/resources/empty_test_excel.xlsx +0 -0
  93. {pysimultan-0.5.9.5 → pysimultan-0.5.9.6}/tests/readme_examples/resources/template_example3.yml +0 -0
  94. {pysimultan-0.5.9.5 → pysimultan-0.5.9.6}/tests/readme_examples/resources/template_example4.yml +0 -0
  95. {pysimultan-0.5.9.5 → pysimultan-0.5.9.6}/tests/readme_examples/resources/template_example_create_typed_component.yml +0 -0
  96. {pysimultan-0.5.9.5 → pysimultan-0.5.9.6}/tests/readme_examples/resources/template_example_create_typed_component_with_slots.yml +0 -0
  97. {pysimultan-0.5.9.5 → pysimultan-0.5.9.6}/tests/readme_examples/resources/template_example_extend.yml +0 -0
  98. {pysimultan-0.5.9.5 → pysimultan-0.5.9.6}/tests/readme_examples/resources/template_example_update_references.yml +0 -0
  99. {pysimultan-0.5.9.5 → pysimultan-0.5.9.6}/tests/readme_examples/resources/template_reference_list.yml +0 -0
  100. {pysimultan-0.5.9.5 → pysimultan-0.5.9.6}/tests/resources/__init__.py +0 -0
  101. {pysimultan-0.5.9.5 → pysimultan-0.5.9.6}/tests/resources/new_test_file.txt +0 -0
  102. {pysimultan-0.5.9.5 → pysimultan-0.5.9.6}/tests/resources/new_test_file2.txt +0 -0
  103. {pysimultan-0.5.9.5 → pysimultan-0.5.9.6}/tests/test_calc_static_zone_temperature.py +0 -0
  104. {pysimultan-0.5.9.5 → pysimultan-0.5.9.6}/tests/test_calculate_steady_state_temperature.py +0 -0
  105. {pysimultan-0.5.9.5 → pysimultan-0.5.9.6}/tests/test_circular_references.py +0 -0
  106. {pysimultan-0.5.9.5 → pysimultan-0.5.9.6}/tests/test_create_geometry.py +0 -0
  107. {pysimultan-0.5.9.5 → pysimultan-0.5.9.6}/tests/test_directory_and_files.py +0 -0
  108. {pysimultan-0.5.9.5 → pysimultan-0.5.9.6}/tests/test_files.py +0 -0
  109. {pysimultan-0.5.9.5 → pysimultan-0.5.9.6}/tests/test_files_load.py +0 -0
  110. {pysimultan-0.5.9.5 → pysimultan-0.5.9.6}/tests/test_load_geometry.py +0 -0
  111. {pysimultan-0.5.9.5 → pysimultan-0.5.9.6}/tests/test_load_multi_values.py +0 -0
  112. {pysimultan-0.5.9.5 → pysimultan-0.5.9.6}/tests/test_new_dll.py +0 -0
  113. {pysimultan-0.5.9.5 → pysimultan-0.5.9.6}/tests/test_new_project_creation.py +0 -0
  114. {pysimultan-0.5.9.5 → pysimultan-0.5.9.6}/tests/test_numeric_map.py +0 -0
  115. {pysimultan-0.5.9.5 → pysimultan-0.5.9.6}/tests/test_parameter_reference.py +0 -0
  116. {pysimultan-0.5.9.5 → pysimultan-0.5.9.6}/tests/test_pythonnet.py +0 -0
  117. {pysimultan-0.5.9.5 → pysimultan-0.5.9.6}/tests/test_register_class.py +0 -0
  118. {pysimultan-0.5.9.5 → pysimultan-0.5.9.6}/tests/test_register_decorator.py +0 -0
  119. {pysimultan-0.5.9.5 → pysimultan-0.5.9.6}/tests/test_set_attr_property.py +0 -0
  120. {pysimultan-0.5.9.5 → pysimultan-0.5.9.6}/tests/test_set_dictionary.py +0 -0
  121. {pysimultan-0.5.9.5 → pysimultan-0.5.9.6}/tests/test_set_properties.py +0 -0
  122. {pysimultan-0.5.9.5 → pysimultan-0.5.9.6}/tests/test_taxonomie_maps.py +0 -0
  123. {pysimultan-0.5.9.5 → pysimultan-0.5.9.6}/tests/test_taxonomies.py +0 -0
  124. {pysimultan-0.5.9.5 → pysimultan-0.5.9.6}/tests/test_ui.py +0 -0
  125. {pysimultan-0.5.9.5 → pysimultan-0.5.9.6}/tests/ui_minimal_example.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: PySimultan
3
- Version: 0.5.9.5
3
+ Version: 0.5.9.6
4
4
  Project-URL: Documentation, https://github.com/Bühler Maximilian/PySimultan2#readme
5
5
  Project-URL: Issues, https://github.com/Bühler Maximilian/PySimultan2/issues
6
6
  Project-URL: Source, https://github.com/Bühler Maximilian/PySimultan2
@@ -0,0 +1 @@
1
+ version = '0.5.9.6'
@@ -587,18 +587,33 @@ class DataModel:
587
587
 
588
588
  del_copy = False
589
589
 
590
- existing_files = [x.Name for x in self.project_data_manager.AssetManager.Resources]
590
+ existing_files = [x.current_full_path for x in self.project_data_manager.AssetManager.Resources]
591
591
  try:
592
592
  act_filename = filename.replace('\\', os.sep)
593
593
  except TypeError:
594
594
  act_filename = filename
595
595
 
596
- if os.path.basename(act_filename) in existing_files:
596
+ if not act_filename.startswith(self.project.ProjectUnpackFolder.FullPath) and target_dir is None:
597
+ target_dir_str = self.project.ProjectUnpackFolder.FullPath
598
+ elif target_dir is not None:
599
+ if isinstance(target_dir, ResourceDirectoryEntry):
600
+ target_dir_str = target_dir.CurrentFullPath
601
+ elif isinstance(target_dir, SystemFileInfo):
602
+ target_dir_str = target_dir.FullPath
603
+ elif isinstance(target_dir, str):
604
+ target_dir_str = target_dir
605
+ elif isinstance(target_dir, DirectoryInfo):
606
+ target_dir_str = target_dir.FullPath
607
+
608
+ full_filename = os.path.join(target_dir_str, os.path.basename(act_filename))
609
+
610
+ if full_filename in existing_files:
597
611
  # create copy with running counter in temp dir and use this file:
598
612
  counter = 1
599
613
  while True:
600
614
  new_filename = os.path.basename(filename) + f'({str(counter)})'
601
- if new_filename not in existing_files and not os.path.exists(new_filename):
615
+ full_filename = os.path.join(target_dir_str, new_filename)
616
+ if full_filename not in existing_files and not os.path.exists(new_filename):
602
617
  break
603
618
  counter += 1
604
619
  shutil.copy(filename, os.path.join(os.path.dirname(filename), new_filename))
@@ -860,7 +875,18 @@ class DataModel:
860
875
 
861
876
  @lru_cache()
862
877
  def get_file_infos(self) -> list[PythonFileInfo]:
863
- return [PythonFileInfo(resource_entry=asset) for asset in self.assets]
878
+ file_infos = []
879
+ for asset in self.assets:
880
+ if isinstance(asset, ResourceFileEntry):
881
+ file_infos.append(PythonFileInfo(resource_entry=asset))
882
+ return file_infos
883
+
884
+ def get_directory_infos(self) -> list[PythonDirectoryInfo]:
885
+ dir_infos = []
886
+ for asset in self.assets:
887
+ if isinstance(asset, ResourceDirectoryEntry):
888
+ dir_infos.append(PythonDirectoryInfo(resource_entry=asset, data_model=self))
889
+ return dir_infos
864
890
 
865
891
  def get_file_info_by_key(self,
866
892
  key: int) -> Optional[PythonFileInfo]:
@@ -17,6 +17,9 @@ from SIMULTAN.Data.Components import (ComponentWalker, SimComponent, SimBoolPara
17
17
  SimEnumParameter, SimIntegerParameter, SimStringParameter, ComponentMapping,
18
18
  SimSlot, SimComponentVisibility, SimChildComponentEntry, SimDefaultSlots,
19
19
  SimParameterOperations, SimComponentReference)
20
+
21
+ from SIMULTAN.Data.Assets import DocumentAsset
22
+
20
23
  from .files import FileInfo
21
24
 
22
25
  from . import config
@@ -562,9 +565,14 @@ class ComponentDictionary(SimultanObject):
562
565
  for ref_asset in self._wrapped_obj.ReferencedAssets.Items:
563
566
  for tag in ref_asset.Resource.Tags:
564
567
  key = tag.Target.Key.replace('__dict_key__', '')
565
- comp_dict[key] = get_obj_value(ref_asset.Target,
566
- data_model=self._data_model,
567
- object_mapper=self._object_mapper)
568
+ if isinstance(ref_asset, DocumentAsset):
569
+ comp_dict[key] = get_obj_value(ref_asset.Resource,
570
+ data_model=self._data_model,
571
+ object_mapper=self._object_mapper)
572
+ else:
573
+ comp_dict[key] = get_obj_value(ref_asset.Target,
574
+ data_model=self._data_model,
575
+ object_mapper=self._object_mapper)
568
576
 
569
577
  object.__setattr__(self, '_dict', comp_dict)
570
578
 
@@ -1 +0,0 @@
1
- version = '0.5.9.5'
File without changes
File without changes
File without changes