batframework 0.1.13__py3-none-any.whl → 1.0.1__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.
Files changed (47) hide show
  1. batFramework/__init__.py +41 -46
  2. batFramework/action.py +42 -20
  3. batFramework/actionContainer.py +43 -4
  4. batFramework/animatedSprite.py +26 -20
  5. batFramework/camera.py +177 -47
  6. batFramework/constants.py +26 -51
  7. batFramework/cutscene.py +15 -15
  8. batFramework/cutsceneBlocks.py +11 -9
  9. batFramework/dynamicEntity.py +7 -6
  10. batFramework/easing.py +28 -23
  11. batFramework/entity.py +87 -49
  12. batFramework/enums.py +14 -0
  13. batFramework/fontManager.py +57 -0
  14. batFramework/gui/__init__.py +2 -2
  15. batFramework/gui/button.py +82 -31
  16. batFramework/gui/constraints.py +137 -104
  17. batFramework/gui/container.py +27 -28
  18. batFramework/gui/debugger.py +92 -42
  19. batFramework/gui/frame.py +15 -15
  20. batFramework/gui/image.py +37 -17
  21. batFramework/gui/indicator.py +18 -14
  22. batFramework/gui/interactiveWidget.py +11 -10
  23. batFramework/gui/label.py +60 -56
  24. batFramework/gui/layout.py +50 -47
  25. batFramework/gui/root.py +43 -30
  26. batFramework/gui/shape.py +34 -41
  27. batFramework/gui/slider.py +5 -0
  28. batFramework/gui/toggle.py +31 -27
  29. batFramework/gui/widget.py +148 -128
  30. batFramework/manager.py +18 -13
  31. batFramework/particles.py +16 -13
  32. batFramework/resourceManager.py +55 -0
  33. batFramework/scene.py +141 -83
  34. batFramework/sceneManager.py +21 -16
  35. batFramework/sprite.py +31 -0
  36. batFramework/stateMachine.py +1 -0
  37. batFramework/tileset.py +7 -9
  38. batFramework/time.py +61 -50
  39. batFramework/transition.py +20 -12
  40. batFramework/utils.py +2 -65
  41. batframework-1.0.1.dist-info/LICENCE +21 -0
  42. {batframework-0.1.13.dist-info → batframework-1.0.1.dist-info}/METADATA +3 -2
  43. batframework-1.0.1.dist-info/RECORD +48 -0
  44. {batframework-0.1.13.dist-info → batframework-1.0.1.dist-info}/WHEEL +1 -1
  45. batFramework/debugger.py +0 -48
  46. batframework-0.1.13.dist-info/RECORD +0 -43
  47. {batframework-0.1.13.dist-info → batframework-1.0.1.dist-info}/top_level.txt +0 -0
@@ -18,7 +18,7 @@ class BaseTransition:
18
18
  self.duration = duration
19
19
  self.index = 0
20
20
 
21
- def set_scene_index(self,index):
21
+ def set_scene_index(self, index):
22
22
  self.index = index
23
23
 
24
24
  def set_source_name(self, name):
@@ -56,19 +56,21 @@ class FadeColorTransition(BaseTransition):
56
56
  self.color_surf.fill(color)
57
57
  self.ease_out = bf.EasingAnimation(
58
58
  easing_function=bf.Easing.EASE_IN,
59
- duration=(duration-color_duration)//2,
60
- update_callback = lambda x: self.color_surf.set_alpha(int(255 - (255 * x))),
61
- end_callback=lambda: self.set_ended(True))
59
+ duration=(duration - color_duration) // 2,
60
+ update_callback=lambda x: self.color_surf.set_alpha(int(255 - (255 * x))),
61
+ end_callback=lambda: self.set_ended(True),
62
+ )
62
63
 
63
64
  self.color_timer = bf.Timer(
64
- duration=color_duration,
65
- end_callback=lambda: self.set_state("out"))
65
+ duration=color_duration, end_callback=lambda: self.set_state("out")
66
+ )
66
67
  self.ease_in = bf.EasingAnimation(
67
68
  easing_function=bf.Easing.EASE_IN,
68
- duration=(duration-color_duration)//2,
69
+ duration=(duration - color_duration) // 2,
69
70
  update_callback=lambda x: self.color_surf.set_alpha(int(255 * x)),
70
71
  # update_callback=lambda x: print(x),
71
- end_callback=lambda: self.set_state("color"))
72
+ end_callback=lambda: self.set_state("color"),
73
+ )
72
74
  self.state = None
73
75
 
74
76
  self.state = "in"
@@ -98,10 +100,16 @@ class FadeColorTransition(BaseTransition):
98
100
  class FadeTransition(BaseTransition):
99
101
  def __init__(self, source_surf, dest_surf, duration=500) -> None:
100
102
  super().__init__(source_surf, dest_surf)
101
- self.anim = bf.EasingAnimation(None,bf.Easing.EASE_IN_OUT,duration,self.update_surface,lambda : self.set_ended(True))
103
+ self.anim = bf.EasingAnimation(
104
+ None,
105
+ bf.Easing.EASE_IN_OUT,
106
+ duration,
107
+ self.update_surface,
108
+ lambda: self.set_ended(True),
109
+ )
102
110
  self.anim.start()
103
111
 
104
- def update_surface(self,progress):
112
+ def update_surface(self, progress):
105
113
  self.source.set_alpha(int(255 - (255 * progress)))
106
114
  self.dest.set_alpha(int(255 * progress))
107
115
 
@@ -141,8 +149,8 @@ class SlideTransition(BaseTransition):
141
149
  self.anim = bf.EasingAnimation(
142
150
  easing_function=easing,
143
151
  duration=duration,
144
- update_callback =lambda x: self.update_offset(self.offset.lerp((0, 0), x)),
145
- end_callback =lambda: self.set_ended(True),
152
+ update_callback=lambda x: self.update_offset(self.offset.lerp((0, 0), x)),
153
+ end_callback=lambda: self.set_ended(True),
146
154
  )
147
155
  self.anim.start()
148
156
 
batFramework/utils.py CHANGED
@@ -4,9 +4,6 @@ import os
4
4
  import batFramework as bf
5
5
  import json
6
6
 
7
- MAX_FONT_SIZE = 100
8
- MIN_FONT_SIZE = 8
9
-
10
7
  class Singleton(type):
11
8
  _instances = {}
12
9
 
@@ -16,34 +13,12 @@ class Singleton(type):
16
13
  return cls._instances[cls]
17
14
 
18
15
 
19
- class Direction(Enum):
20
- HORIZONTAL = "horizontal"
21
- VERTICAL = "vertical"
22
-
23
-
24
- class Alignment(Enum):
25
- LEFT = "left"
26
- RIGHT = "right"
27
- CENTER = "center"
28
- TOP = "top"
29
- BOTTOM = "bottom"
30
-
31
-
32
- class Layout(Enum):
33
- FILL = "fill"
34
- FIT = "fit"
35
-
36
-
37
16
  class Utils:
38
- pygame.font.init()
39
- FONTS = {}
40
17
 
41
- @staticmethod
42
- def get_path(path: str):
43
- return os.path.join(bf.const.RESOURCE_PATH, path)
18
+
44
19
 
45
20
  @staticmethod
46
- def load_json_from_file(path: str) -> dict:
21
+ def load_json_from_file(path: str) -> dict|None:
47
22
  try:
48
23
  with open(Utils.get_path(path), "r") as file:
49
24
  data = json.load(file)
@@ -60,44 +35,6 @@ class Utils:
60
35
  return True
61
36
  except FileNotFoundError:
62
37
  return False
63
-
64
- @staticmethod
65
- def init_font(raw_path:str):
66
- try :
67
- if raw_path is not None:
68
- Utils.load_font(raw_path if raw_path else None,None)
69
- Utils.load_font(raw_path)
70
- except FileNotFoundError:
71
- Utils.load_sysfont(raw_path)
72
- Utils.load_sysfont(raw_path,None)
73
-
74
-
75
- @staticmethod
76
- def load_font(path:str,name:str=''):
77
- if path is not None: path = Utils.get_path(path) # convert path if given
78
- filename = os.path.basename(path).split('.')[0] if path is not None else None # get filename if path is given, else None
79
- if name != '' : filename = name # if name is not given, name is the filename
80
- Utils.FONTS[filename] = {}
81
- # fill the dict
82
- for size in range(MIN_FONT_SIZE, MAX_FONT_SIZE, 2):
83
- Utils.FONTS[filename][size] = pygame.font.Font(path,size=size)
84
-
85
- def load_sysfont(font_name:str,key:str=''):
86
- if key == '' : key = font_name
87
- if pygame.font.match_font(font_name) is None:
88
- raise FileNotFoundError(f"Requested font '{font_namey}' was not found")
89
- Utils.FONTS[font_name] = {}
90
-
91
- for size in range(MIN_FONT_SIZE, MAX_FONT_SIZE, 2):
92
- Utils.FONTS[key][size] = pygame.font.SysFont(font_name,size=size)
93
-
94
-
95
- @staticmethod
96
- def get_font(name:str|None=None,text_size:int=12) -> pygame.Font:
97
- if not name in Utils.FONTS: return None
98
- if not text_size in Utils.FONTS[name]: return None
99
- return Utils.FONTS[name][text_size]
100
-
101
38
 
102
39
 
103
40
  @staticmethod
@@ -0,0 +1,21 @@
1
+ MIT License
2
+
3
+ Copyright (c) [2023] [TURAN BATURAY]
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ of this software and associated documentation files (the "Software"), to deal
7
+ in the Software without restriction, including without limitation the rights
8
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to whom the Software is
10
+ furnished to do so, subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in all
13
+ copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
+ SOFTWARE.
@@ -1,14 +1,15 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: batframework
3
- Version: 0.1.13
3
+ Version: 1.0.1
4
4
  Summary: Pygame framework for making games easier.
5
5
  Author-email: Turan Baturay <baturayturan@gmail.com>
6
6
  Project-URL: Homepage, https://github.com/TuranBaturay/batFramework
7
7
  Classifier: Programming Language :: Python :: 3
8
8
  Classifier: License :: OSI Approved :: MIT License
9
9
  Classifier: Operating System :: OS Independent
10
- Requires-Python: >=3.10
10
+ Requires-Python: >=3.11
11
11
  Description-Content-Type: text/markdown
12
+ License-File: LICENCE
12
13
  Requires-Dist: pygame-ce
13
14
 
14
15
  # batFramework & gamejam Project
@@ -0,0 +1,48 @@
1
+ batFramework/__init__.py,sha256=_lW-sW7cIGz_QK96RK8852RCLQZHwgjV2BQwQCHEmwE,2147
2
+ batFramework/action.py,sha256=6XQ3sBylO00UYrGfh5GKjwP9PqgtixIV0um4uwiFj4w,8364
3
+ batFramework/actionContainer.py,sha256=DMWDWZ9mff70VErtunX7yOfiqOxBuGNGfO9b1YXW1CI,2498
4
+ batFramework/animatedSprite.py,sha256=2OrYT4aAyhzWMbQuIej_P74FJ9D7nWSKTkLf6DK3zCs,4184
5
+ batFramework/audioManager.py,sha256=5UsDPy4zsDO7Va1y1kM4lSpEJXU95o9F01E-Sts3osg,2546
6
+ batFramework/camera.py,sha256=AuA_icAbwK7CCyBX-C8EVCcuUtc-b5OgDBwr4e04MD0,7506
7
+ batFramework/constants.py,sha256=VbUoeyG00Coz5BxiWrTsO6d0G96Y6Q5CU24E3z5wRR0,1426
8
+ batFramework/cutscene.py,sha256=MSKDbP41F7bWMzzNe_U3xWQupvhqPhIiEWFjmh-dwsk,3636
9
+ batFramework/cutsceneBlocks.py,sha256=12i9Ln1y7HK6fv4uBm7ZqjvU76u9E5I-5GCB_mceEO0,5138
10
+ batFramework/dynamicEntity.py,sha256=3-3l58WPO1y6ifncrqkuHOEvNlUaR3YDTYvjTD_2L1I,675
11
+ batFramework/easing.py,sha256=M5YjDot_l6DVdotKAbShIQlfotrs_WLpnLqQgQdAfa8,2269
12
+ batFramework/entity.py,sha256=iuWIFoWW5fVByGiY7AUQ-qVymxJLldJMXIKeD4CF4_M,4200
13
+ batFramework/enums.py,sha256=b7d4TuEyG6WGoXn0ABrmc6VsrwKrkJ2bCrMXtz37DB0,226
14
+ batFramework/fontManager.py,sha256=zqevsjZR37EalyHIiaGvnppQfWdCSEWbKLT4da0gYaQ,2136
15
+ batFramework/manager.py,sha256=vcIpitF4to03NzxXcoWYvWcn5aQG0feC0L0EKamPGfE,1869
16
+ batFramework/particles.py,sha256=pdH9LFfOyDE59DpwHj6KWOj063NfeolzInq2Rj0fctI,2592
17
+ batFramework/resourceManager.py,sha256=Du_MQulBhBJEJ2rFE9YarrKgHjV5DTFSAsc7XofC0Lk,1902
18
+ batFramework/scene.py,sha256=jl41bMYeJ4MgpsSxJ5B7tDTD81KRiwXSUwvbr2ivwyc,10109
19
+ batFramework/sceneManager.py,sha256=Nsz_r3TzCR90DNMhDU_LYrzF3_KsZ9TF6QGJiuVP_UI,3830
20
+ batFramework/sprite.py,sha256=OrWiWN8C7ewQg4Bk5ZN8YR0u-swJXPhlTeQaOgc7eE0,1067
21
+ batFramework/stateMachine.py,sha256=er7WB7I4V81jgUrd-9ftfyYczKpPsEbgdWRXzYl6e9k,1339
22
+ batFramework/tileset.py,sha256=SI2feJV4pnk81ENUJqGsVeD7YheD565UeyVcXQhRq6w,2485
23
+ batFramework/time.py,sha256=bhDJt44IbiAuZyov3Wnj5RFv2xkVVjTuCuE7LyFKoYk,2472
24
+ batFramework/transition.py,sha256=X6pzP2UhDyXQvcsccvnYOuErZdo55P5xNyYYuxZLtvo,4970
25
+ batFramework/transitionManager.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
26
+ batFramework/triggerZone.py,sha256=ikOOlJT1KIND0MO2xiilCHuKlb1eQhkCMEhZTi1btsI,586
27
+ batFramework/utils.py,sha256=EVIl1jMKER9L0nR9Nv9MLxeyREUC-JGf7mvmSqYuwCA,1664
28
+ batFramework/gui/__init__.py,sha256=RT9S65ZKtVMsaLYyrqhkWrSaKvNS5PkvQERgtZNA3q4,391
29
+ batFramework/gui/button.py,sha256=p3sfKaPuhve9MYZq7V5ZXQEwfGEPcA0ymbqWnYvdZdM,4389
30
+ batFramework/gui/constraints.py,sha256=XtZIMuauyQ-QOjKGa6JaZfM9qushkcYrG4RKJJVLk8Q,9899
31
+ batFramework/gui/container.py,sha256=qG8Db7H9P4HHRELHtS_bnBTsTh89BWs8PnIqEGBO0D4,1755
32
+ batFramework/gui/debugger.py,sha256=lSfoc5PoxEtz6yQRiEZ7-Y9nd3QQeOcqDdth10voIRs,3035
33
+ batFramework/gui/frame.py,sha256=kY2Jmt1YpYTg4Aa28qmLQaI59BQ-_nq0FOB7Lf2e_hM,861
34
+ batFramework/gui/image.py,sha256=77sISSe6N5bQa3DLLLPfDcz_55xnXsyyTRtqVKIVFnI,1318
35
+ batFramework/gui/indicator.py,sha256=awVhrY1holODuAnChfU1_m6Lp7aLGspSTFdHUnVZo2I,1128
36
+ batFramework/gui/interactiveWidget.py,sha256=jZQspLvlySch5rrZcPi4DsDTpFkDU-qnjqDGy2xX68U,640
37
+ batFramework/gui/label.py,sha256=q7wNgSSQB7qYVqu7fJNs7x0LoAoc3UhMff__WluwEDs,4918
38
+ batFramework/gui/layout.py,sha256=w1BypRnYzwA4dtcFK4NtUirVnYoBUJsxApliHCXzQmk,3290
39
+ batFramework/gui/root.py,sha256=-NYt8YppPYc359qXieKuw7PiUziLLQbWQH-Y61wtJew,2239
40
+ batFramework/gui/shape.py,sha256=sEuaRjpCRQHj_GomqWtXlHQMyCDw3ZuZsJ6-bAkqJPY,2459
41
+ batFramework/gui/slider.py,sha256=8rLHN-4yxavrOsTQi79SguCAR9Er8qCmkWKjUdMnPYg,62
42
+ batFramework/gui/toggle.py,sha256=dXTIJ8u46xTcEsKchPgvKL9yY7Yxul6mVn3u5yb4pHU,2112
43
+ batFramework/gui/widget.py,sha256=ZnLdsaQGEN9yCDNTVvWPHsdjgdh-XxivSSvb_VPRpCI,11618
44
+ batframework-1.0.1.dist-info/LICENCE,sha256=A65iXbMDbOxQLDNOODJLqA7o5RxszYlEqIgNSzBQRf4,1073
45
+ batframework-1.0.1.dist-info/METADATA,sha256=BKI9yycx-8xTwNUlx9JBHtbioGJui70x2lCqamiHOKs,2499
46
+ batframework-1.0.1.dist-info/WHEEL,sha256=oiQVh_5PnQM0E3gPdiz09WCNmwiHDMaGer_elqB3coM,92
47
+ batframework-1.0.1.dist-info/top_level.txt,sha256=vxAKBIk1oparFTxeXGBrgfIO7iq_YR5Fv1JvPVAIwmA,13
48
+ batframework-1.0.1.dist-info/RECORD,,
@@ -1,5 +1,5 @@
1
1
  Wheel-Version: 1.0
2
- Generator: bdist_wheel (0.41.3)
2
+ Generator: bdist_wheel (0.42.0)
3
3
  Root-Is-Purelib: true
4
4
  Tag: py3-none-any
5
5
 
batFramework/debugger.py DELETED
@@ -1,48 +0,0 @@
1
- import batFramework as bf
2
- import pygame
3
-
4
-
5
- class Debugger(bf.Label):
6
- def __init__(self, manager) -> None:
7
- super().__init__()
8
- self.manager: bf.Manager = manager
9
- self.refresh_rate = 0
10
- self._refresh_counter = 0
11
- self.dynamic_data = {}
12
- self.static_data = {}
13
- self.render_order = 99
14
- self.set_outline_color((20, 20, 20))
15
- # self.set_background_color((0,0,0,0))
16
- self.set_text_color("white")
17
- # self.set_padding((30,30))
18
- self.set_refresh_rate(20)
19
- self.add_dynamic_data("FPS", lambda: str(round(self.manager.get_fps())))
20
- self.add_dynamic_data("BLITS", lambda: str(self.parent_scene.blit_calls))
21
- self.set_visible(False)
22
-
23
- def set_refresh_rate(self, val: int):
24
- self.refresh_rate = val
25
-
26
- def update(self, dt: float):
27
- visible = self.manager._debugging == 1
28
- self.set_visible(visible)
29
- if not visible:
30
- return
31
- self._refresh_counter -= dt * 60
32
- if self._refresh_counter < 0:
33
- self._refresh_counter = self.refresh_rate
34
- self._refresh_debug_info()
35
-
36
- def add_dynamic_data(self, key, func):
37
- self.dynamic_data[key] = func
38
-
39
- def set_static_data(self, key, value):
40
- self.static_data[key] = value
41
-
42
- def _refresh_debug_info(self):
43
- lines = []
44
- lines.extend([f"{key}:{value}" for key, value in self.static_data.items()])
45
- lines.extend([f"{key}:{func()}" for key, func in self.dynamic_data.items()])
46
- debug_text = "\n".join(lines)
47
- self.set_text(debug_text)
48
- self.update_surface() # Update the surface after modifying the text
@@ -1,43 +0,0 @@
1
- batFramework/__init__.py,sha256=IhaUmSTxT53jfbhzEhtdFyxTDYmnzlIc1Pbc-3JM35g,2175
2
- batFramework/action.py,sha256=Phk6-q2P-XyV2GVlXPpxyje0due4fIrKnhI1_4anfjI,7600
3
- batFramework/actionContainer.py,sha256=K9dIgG559ckxzRB3t-lpON4dFTcM2mcKZfsf4bhuJ1k,1092
4
- batFramework/animatedSprite.py,sha256=AAXU5vRrSyTjhQ1zEqaAnhEwdINDy613-7kXAbtttRg,4095
5
- batFramework/audioManager.py,sha256=5UsDPy4zsDO7Va1y1kM4lSpEJXU95o9F01E-Sts3osg,2546
6
- batFramework/camera.py,sha256=wt4TyWTgQmQElBVeFI7ONzNI75r0FKtB3KmNH00GeFM,4322
7
- batFramework/constants.py,sha256=m7F9HmiLG32Z_137SpNtNYNKZOqyirs78T3JSS3bTtI,2410
8
- batFramework/cutscene.py,sha256=5aiIQeWGmvHCb-N3vjmwxhE4dCXv3iZRFHiexSNxCXM,3650
9
- batFramework/cutsceneBlocks.py,sha256=1gmof0jKJ8SqE-RoErm6n1A0JJ4Ang9Q30xEZnW9NaI,5123
10
- batFramework/debugger.py,sha256=gh5kOUmGr4t-BFXA17tImid4nzxUqrhsUhE_JV9srNg,1671
11
- batFramework/dynamicEntity.py,sha256=REIqH0jnfX6yUThoQNkQrsG0390TR6C5la1h2MAioYk,665
12
- batFramework/easing.py,sha256=vGkk7FDPj27X7NCJXALCEyVKDbpXXebWYtMvxkbhOh0,2217
13
- batFramework/entity.py,sha256=AaYuyy0_i0NR1NdZC_-E7qGBzISaOTBPgHylQcnkoG8,3160
14
- batFramework/manager.py,sha256=LdiQVyuPQE23jwO4EjR4zqDymxtRmthUJ7VE7RIEDpU,1583
15
- batFramework/particles.py,sha256=rljsRjr9YSthhxsr3H4k3x3mqffpi4wRTgLJEV-rm_I,2502
16
- batFramework/scene.py,sha256=PR34RKDLGNiRv2nQ3zEEKJcr5fiirO_m1vC8AqfUckk,8102
17
- batFramework/sceneManager.py,sha256=ZikIGh999oKt2QanlzT1U0BIWo56ufskeAa5KKsBgeg,3698
18
- batFramework/stateMachine.py,sha256=_er9_dcm6MLmlTjXTVm175eqZ9puaKb31PFmNPRhcSU,1338
19
- batFramework/tileset.py,sha256=mf2xG2orR2jYNjKQqHlSV-3y8RD3pmVQetuJFo-T498,2523
20
- batFramework/time.py,sha256=iGV9mxUFrdXsvm4fJ1faX-VYNsOH7DX2N_aXsDRHhmM,2403
21
- batFramework/transition.py,sha256=wmL1Mgg_xopzeDbEPJyAmllLB2BCRJZtuMOR7Mez480,4873
22
- batFramework/transitionManager.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
23
- batFramework/triggerZone.py,sha256=ikOOlJT1KIND0MO2xiilCHuKlb1eQhkCMEhZTi1btsI,586
24
- batFramework/utils.py,sha256=qSMeO4S0lsSg29gAb1d86DqredPwdLN2YbcrXLRsL6A,3682
25
- batFramework/gui/__init__.py,sha256=y9W4d9_3Kk6O7uWERrqVkKTOw6jzadVv8WsU6s0d8VA,397
26
- batFramework/gui/button.py,sha256=htPONaxBz50p1kIgezaEk12RUf8p2hpwd0FvcJFlm2w,2792
27
- batFramework/gui/constraints.py,sha256=NH6x_HYRXOqR1Kta3AyRAmfDC2QhfZpKJ8oRZ221lFc,8529
28
- batFramework/gui/container.py,sha256=KjvSrKwOad_avLjM30fAXCPwdCAiEordkp4EN481avs,1846
29
- batFramework/gui/debugger.py,sha256=JORHcSYQQCZ0tDzjnNQvDSOOjZVwEQLeqlr8e6xk2RI,1379
30
- batFramework/gui/frame.py,sha256=mFEBO3zsvjpqAS_G3Ge5eIb_h4r_4UahDOPGDXUOqb4,841
31
- batFramework/gui/image.py,sha256=goOcPntsJeTb3LR7avzi4cXfYHwyGb0KXYttbCiE6fA,777
32
- batFramework/gui/indicator.py,sha256=NNVsDiXKsghxo-jgZaa9VwZgN946ZnIp4hLYx0ojacA,1035
33
- batFramework/gui/interactiveWidget.py,sha256=rRElxI1eFkvOeTfTaA6f8kVTOswOD-DFLAJDUCAI_Yk,641
34
- batFramework/gui/label.py,sha256=Zm7kQ6F859T9n7pP_5ZgT1rxvhVt5GunF6d3Lf_3lIw,4675
35
- batFramework/gui/layout.py,sha256=OBTSItZWf2n3j2EIz72skmUzbXBFup8lBdbm_IcJ53o,3788
36
- batFramework/gui/root.py,sha256=iF7OeGQFt6ucqDrzf3Cn9l_aWILGfMl5PgeYRyYk-yg,1980
37
- batFramework/gui/shape.py,sha256=CYaD0BdCiuGJO_tS2pALfKPlNGaGRNPzvy-Lk08_R8g,2490
38
- batFramework/gui/toggle.py,sha256=jAeEyQXA893gDBUmjN7aoGgfsVln5RTODpSFB4LxwTY,2020
39
- batFramework/gui/widget.py,sha256=GY5JKUkN2-biRBpHGODsPg8WaSoLvCfL6G9WesagcDE,10845
40
- batframework-0.1.13.dist-info/METADATA,sha256=lCq3hx0hlb_jFsl7PLoRRdNP6-CITsrMNKhzb9cR-Hk,2478
41
- batframework-0.1.13.dist-info/WHEEL,sha256=Xo9-1PvkuimrydujYJAjF7pCkriuXBpUPEjma1nZyJ0,92
42
- batframework-0.1.13.dist-info/top_level.txt,sha256=vxAKBIk1oparFTxeXGBrgfIO7iq_YR5Fv1JvPVAIwmA,13
43
- batframework-0.1.13.dist-info/RECORD,,