drawlib 0.2.3.dev2__py3-none-any.whl → 0.2.3.dev3__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 drawlib might be problematic. Click here for more details.

@@ -18,6 +18,7 @@ from typing import Callable, Dict, List, Literal, Optional, Tuple, Union
18
18
  from drawlib.v0_2.private.core.model import IconStyle, ImageStyle, LineStyle, ShapeStyle, TextStyle
19
19
  from drawlib.v0_2.private.core.theme import dtheme
20
20
  from drawlib.v0_2.private.core_canvas.canvas import line, text
21
+ from drawlib.v0_2.private.util import error_handler
21
22
 
22
23
 
23
24
  class TreeNode:
@@ -25,6 +26,7 @@ class TreeNode:
25
26
 
26
27
  _drawing_item_map: Dict[str, _TreeNodeDrawingItem] = {}
27
28
 
29
+ @error_handler
28
30
  def __init__(
29
31
  self,
30
32
  text: str,
@@ -73,6 +75,7 @@ class TreeNode:
73
75
  self._drawing_item_name: Optional[str] = None
74
76
 
75
77
  @classmethod
78
+ @error_handler
76
79
  def register_drawing_item(
77
80
  cls,
78
81
  name: str,
@@ -108,6 +111,7 @@ class TreeNode:
108
111
 
109
112
  cls._drawing_item_map[name] = item
110
113
 
114
+ @error_handler
111
115
  def set_drawing_item(
112
116
  self,
113
117
  name: str,
@@ -126,6 +130,7 @@ class TreeNode:
126
130
 
127
131
  return self
128
132
 
133
+ @error_handler
129
134
  def draw(self, xy: Tuple[float, float]) -> None:
130
135
  """Draw the tree node and its children.
131
136
 
@@ -136,15 +141,15 @@ class TreeNode:
136
141
  ValueError: If any of the default styles or margins are None.
137
142
  """
138
143
  if self._default_textstyle is None:
139
- raise ValueError()
144
+ raise ValueError('Root of TreeNode must be initialized with arg "default_textstyle".')
140
145
  if self._default_linestyle is None:
141
- raise ValueError()
146
+ raise ValueError('Root of TreeNode must be initialized with arg "default_linestyle".')
142
147
  if self._default_line_horizontal_margin is None:
143
- raise ValueError()
148
+ raise ValueError('Root of TreeNode must be initialized with arg "default_line_horizontal_margin".')
144
149
  if self._default_line_horizontal_length is None:
145
- raise ValueError()
150
+ raise ValueError('Root of TreeNode must be initialized with arg "default_line_horizontal_length".')
146
151
  if self._default_line_vertical_margin is None:
147
- raise ValueError()
152
+ raise ValueError('Root of TreeNode must be initialized with arg "default_line_vertical_margin".')
148
153
 
149
154
  self._draw(
150
155
  xy=xy,
@@ -226,6 +226,15 @@ def validate_line_args(args: Dict[str, Any]) -> None: # noqa: C901
226
226
  elif "r" == arg_name:
227
227
  types_validator.validate_plus_float("r", value)
228
228
 
229
+ elif "radius" == arg_name:
230
+ types_validator.validate_plus_float("radius", value, is_0_ok=False)
231
+
232
+ elif "from_angle" == arg_name:
233
+ coordinate_validator.validate_angle("from_angle", value)
234
+
235
+ elif "to_angle" == arg_name:
236
+ coordinate_validator.validate_angle("to_angle", value)
237
+
229
238
  elif "style" == arg_name:
230
239
  style_validator.validate_linestyle("style", value)
231
240
 
@@ -255,6 +264,9 @@ def validate_shape_args( # noqa: C901
255
264
  if "self" == arg_name:
256
265
  continue
257
266
 
267
+ if "_" == arg_name:
268
+ continue
269
+
258
270
  # Check start from here
259
271
 
260
272
  if "xy" == arg_name:
@@ -285,13 +297,13 @@ def validate_shape_args( # noqa: C901
285
297
  types_validator.validate_plus_float("topedge_width", value, is_0_ok=False)
286
298
 
287
299
  elif "radius" == arg_name:
288
- types_validator.validate_plus_float("bottomedge_width", value, is_0_ok=False)
300
+ types_validator.validate_plus_float("radius", value, is_0_ok=False)
289
301
 
290
302
  elif "radius_ext" == arg_name:
291
- types_validator.validate_plus_float("bottomedge_width", value, is_0_ok=False)
303
+ types_validator.validate_plus_float("radius_ext", value, is_0_ok=False)
292
304
 
293
305
  elif "radius_int" == arg_name:
294
- types_validator.validate_plus_float("bottomedge_width", value, is_0_ok=False)
306
+ types_validator.validate_plus_float("radius_int", value, is_0_ok=False)
295
307
 
296
308
  elif "num_vertex" == arg_name:
297
309
  shape_validator.validate_num_vertex("num_vertex", value)
@@ -326,6 +338,9 @@ def validate_shape_args( # noqa: C901
326
338
  elif "head_length" == arg_name:
327
339
  types_validator.validate_plus_float("head_length", value, is_0_ok=False)
328
340
 
341
+ elif "head_angle" == arg_name:
342
+ coordinate_validator.validate_angle("from_angle", value)
343
+
329
344
  elif "head" == arg_name:
330
345
  shape_validator.validate_head_style("head", value)
331
346
 
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: drawlib
3
- Version: 0.2.3.dev2
3
+ Version: 0.2.3.dev3
4
4
  Summary: Python drawing library. Illustration as Code.
5
5
  Home-page: https://www.drawlib.com
6
6
  Author: Yuichi Ito
@@ -1,4 +1,4 @@
1
- drawlib/__init__.py,sha256=TZW9ca9wt_x_j8XlnAxgIYRympx_Do7scU4BHSi46Ic,2678
1
+ drawlib/__init__.py,sha256=dWTu4PVNY86EHUiD1eIaUOj_-xXfADi-s073eiCB_eY,2678
2
2
  drawlib/__main__.py,sha256=UDsH6DiEIWBEwlClbYI10aWYBw_gOmaNCB0TSImWZ-c,604
3
3
  drawlib/apis.py,sha256=Q1Uz4U6IK63ZtjaV_UTWPZq7xDpxTz99qHfpGsL8SnI,531
4
4
  drawlib/assets/__init__.py,sha256=bYT4EWquLr0oyEziAuixlD9M4EPnMY6PyhknOxJjxqY,437
@@ -8,25 +8,25 @@ drawlib/assets/v0_2/fonts/__init__.py,sha256=PeL8idl5hfNNoqygvpDJyqj28ZCek7qxh5G
8
8
  drawlib/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
9
9
  drawlib/v0_2/__init__.py,sha256=dy_hxP-s7e-ZGXQKRYgjT02nwGKB5G0Qc6yrJD9M8Zg,729
10
10
  drawlib/v0_2/__main__.py,sha256=NHcSZyv4gK-Nh8NQTujSx396OK05IBjeVmaDKWKHJLU,549
11
- drawlib/v0_2/apis.py,sha256=Nbut7wVoFDcKQFE26WJrb5x8sVV2vjfiZmKWLjlkdJs,2077
11
+ drawlib/v0_2/apis.py,sha256=3ONZYm81D63T1GG1v9Z3b8QxndnfLCu8WZivNLMmIJ8,2118
12
12
  drawlib/v0_2/private/__init__.py,sha256=vPaj6RbUQj1xOBPRxcKkoOq3kSiOmOlNnY5JnjV_OiY,455
13
13
  drawlib/v0_2/private/command.py,sha256=m6yeuLJfUPbn4KVmchsRsCrtFRTbuCI_OUsYd0NoLEg,19471
14
14
  drawlib/v0_2/private/core/__init__.py,sha256=qzZ4oWmEnMaEAKuQU2x9NvuZLg06fJEOOpR1S31OTS8,454
15
15
  drawlib/v0_2/private/core/colors.py,sha256=N4Fpn3exzJvsa8hvl0oGfN7JF1fGAzHJpMjug2-26KU,12843
16
16
  drawlib/v0_2/private/core/dimage.py,sha256=Wb2HrFAZHK4VEi2T1ybQ3F2MIOPySTllWW6pZq9XjfY,21958
17
17
  drawlib/v0_2/private/core/fonts.py,sha256=r6ycR-GxItwnYgNeKsKOxtZ0bTcmrUObfci8h1et9lE,23217
18
- drawlib/v0_2/private/core/model.py,sha256=2AoipnwbZzci2jTXHC2-014EWJ8PeYCfB0zlNQyyPCY,54698
18
+ drawlib/v0_2/private/core/model.py,sha256=dAaEIuI-9pTlXj4eI6SpCgy12pXWlBYI-25WL8HsEuE,55344
19
19
  drawlib/v0_2/private/core/model_system_default.py,sha256=oK9WpeQVX_baJJmjwz4L23G1F9511_PzWb5li-toUk8,1938
20
20
  drawlib/v0_2/private/core/theme.py,sha256=QcuaCw615fRN0C753gjfay9cqCbHILERqBIDNpO1whQ,47118
21
21
  drawlib/v0_2/private/core/theme_officials.py,sha256=AeZdENE-B8kSTcDAnWLKU-b77PssjwqFa_D-42HWNjg,19832
22
22
  drawlib/v0_2/private/core/theme_style_caches.py,sha256=k22Jrm0nsZITg_Mv0qGyv5pMkivLOb-s-svnWqqm8xY,186385
23
- drawlib/v0_2/private/core/util.py,sha256=F9ctoj6UyCT85efJFLLnmCJjxX8vP_12RgeT97ElyKk,28274
23
+ drawlib/v0_2/private/core/util.py,sha256=FaOlxKnQPcJT2oHiy06ZtVq0ZNO3tppAL-8xvW9Un4c,28437
24
24
  drawlib/v0_2/private/core_canvas/__init__.py,sha256=6HANaWCLm6GjIU7cZGAOdUCrvIxbtQx3KTkQWK-nEhU,455
25
25
  drawlib/v0_2/private/core_canvas/base.py,sha256=hmCRe2MZdhS2nTQk3NIKb0wq13ya39DFDZZZ9hkEoHU,19125
26
- drawlib/v0_2/private/core_canvas/canvas.py,sha256=zzOVwWOrx-dEgS31RkutgVO0P1uYLBrbeeq83_f3SIY,9431
26
+ drawlib/v0_2/private/core_canvas/canvas.py,sha256=nJ-EsrSbq_mWq0gvkZP1PabGCgxSGHvT0cqkMiaaNI8,9510
27
27
  drawlib/v0_2/private/core_canvas/image.py,sha256=1KoLmCTbr4VoTZi0rI_e1_HIYOmpGklygeq5ACgwVus,6958
28
- drawlib/v0_2/private/core_canvas/line.py,sha256=gaAFJ0d5Re8qzR05PXfItady7JJlN67yWEwMuDRJhWU,11829
29
- drawlib/v0_2/private/core_canvas/original_arrow.py,sha256=uJIZK9jFj40DlwF_5xyxWJohuFugS-EPBrfB9bmLRJU,4982
28
+ drawlib/v0_2/private/core_canvas/line.py,sha256=0cL_MXxiv1gg9KZn4SiTfh-RQ2Dsg-f-vYATc8HyCU0,17623
29
+ drawlib/v0_2/private/core_canvas/original_arrow.py,sha256=eA1Lylh54QlsP6Uvhv2RRkcgcsDNUc1SQArP5h5u7rY,21019
30
30
  drawlib/v0_2/private/core_canvas/original_polygon.py,sha256=uvBbfr72J3QEw9efxHdd5YXl1IKZhEA82qzEXdEK7Kc,14546
31
31
  drawlib/v0_2/private/core_canvas/patches.py,sha256=b1zrMlNUOPzIM9RngJqjGzUg2hS62MN--T9TO-p_MAA,15681
32
32
  drawlib/v0_2/private/core_canvas/text.py,sha256=bqdiqptdXeV8HVjp0Fx2pl2eA0q29XHYtWcK4WSyCw8,3520
@@ -41,13 +41,16 @@ drawlib/v0_2/private/icons/phosphor.py,sha256=4xwcmDvFB6raCZZFQdrU2eR7l5QhYz9Bg_
41
41
  drawlib/v0_2/private/icons/util.py,sha256=9ZH67tRO1diuzwhENVki6exgNFJbKa1WDICYsxDbaWs,2367
42
42
  drawlib/v0_2/private/logging.py,sha256=tZT62wFfPbwY2JBQVtwoS2qf7HBvCjfB-oXdATEnupc,802
43
43
  drawlib/v0_2/private/smartarts/__init__.py,sha256=ii_xf3fXWPvP4SqSdcLO0gIbx643oRbVch58KlaYAnA,445
44
+ drawlib/v0_2/private/smartarts/boxlist.py,sha256=ymY5yAWhev3JpQi493_8mkTydYaqNMjohj7kpoMFnLw,6714
44
45
  drawlib/v0_2/private/smartarts/boxtree.py,sha256=f6EXkPMEkU8v4vvBxA2Bu2_vV6nJ1nIxppuj9UPhf2E,4655
45
46
  drawlib/v0_2/private/smartarts/bubblespeech.py,sha256=Fq-XDJmGNK4Yov_VnvbjIiIMW6FWSNaGQRE0dTUQUdE,4200
46
- drawlib/v0_2/private/smartarts/dsart.py,sha256=T-1pAdewcJjQllEl92dA1Ii4E0aOdRFEtYeeWn28I9I,835
47
- drawlib/v0_2/private/smartarts/gridlayout.py,sha256=hc2TrUZBlah2Clvj6O02Eip9Gga0AXfZqNp0OQiEH_g,10204
48
- drawlib/v0_2/private/smartarts/pyramid.py,sha256=kSQ2tDMtCiCbrB0sFCWolfZePqDL4ad6gC7EHpLPV0Y,6529
47
+ drawlib/v0_2/private/smartarts/bulletpoints.py,sha256=2wOa5O7pq1qlrdagPaiA9t3UrSCKYAZ5HuVGgrG04u4,6039
48
+ drawlib/v0_2/private/smartarts/dsart.py,sha256=3wKpD4x_ZqZFG3QJAtD3NhKL7_lDlwJ3tY08sfUF02o,1245
49
+ drawlib/v0_2/private/smartarts/gridlayout.py,sha256=5gJGNa5uILFOl7DDPB-GBE-MrzaLq74aMFbDnJI4ZRc,11472
50
+ drawlib/v0_2/private/smartarts/pyramid.py,sha256=bVCkIo6w-9qDqRfOXShvOozxOzI6WlxR_dQMc4l5Q48,14314
49
51
  drawlib/v0_2/private/smartarts/sourcecode.py,sha256=VkPrmxNeYR_E0kyfFsezAKJE7dVNIdrIJUsq348iqyE,8922
50
- drawlib/v0_2/private/smartarts/tree.py,sha256=749gbZDjHj03PSLI_RpKICffjOlQAqoghYBhxBHLqxw,10725
52
+ drawlib/v0_2/private/smartarts/table.py,sha256=Fyji-xUt8JnZQPzbjt0GgibVB0qcr4zA2VgqDXddPmw,25407
53
+ drawlib/v0_2/private/smartarts/tree.py,sha256=BStMQ77yO26RufYwfAbc5H4PEhCynkv9QKD5DbDasUg,11230
51
54
  drawlib/v0_2/private/umls/activity.py,sha256=popFczuMoBcpUeB-KpLLY0wpTfwTknKoEM_e6JlAfUY,454
52
55
  drawlib/v0_2/private/umls/class_.py,sha256=Q8l8pWrxSTSulkUkClJNKjdR-RIgbAJ6AaAExQ5bEWk,451
53
56
  drawlib/v0_2/private/umls/communication.py,sha256=CRZBFlsBFM59THq0gG3bANxtCU_Vy8eC9OCKwD4W5Ng,459
@@ -61,7 +64,7 @@ drawlib/v0_2/private/umls/state_machine.py,sha256=VSPH7jsOmuPeSV6UbD5-V4PIXd9-dB
61
64
  drawlib/v0_2/private/umls/usecase.py,sha256=QiALmJV4lQyH1zaVUWt7S4_CJ3jgXfo1D3zaqnGC-xM,453
62
65
  drawlib/v0_2/private/util.py,sha256=1jr3MfpnNXVXv3F2Bex1yGhdxNZj2DtwUJqaskbk2eo,9772
63
66
  drawlib/v0_2/private/validators/__init__.py,sha256=BYnkfTT0x65pmPpFhh6HKJEOzXvsTZsQcrtTVrq1uxw,444
64
- drawlib/v0_2/private/validators/args.py,sha256=UIqmqqql24OonvMWgl6Afup0u81uZNIiuOA4sl0yviM,13447
67
+ drawlib/v0_2/private/validators/args.py,sha256=Nz1uNzQ-u2GBa9B6GzBQO0ZmWZdL5ZltA-HcRNZT5sg,13914
65
68
  drawlib/v0_2/private/validators/color.py,sha256=tUmY-6Cw1bPPmDqhWj7Vp85XlMSDon5lBvTaEgNV8YY,2353
66
69
  drawlib/v0_2/private/validators/coordinate.py,sha256=KtOB5VjoBRRVw4-SwFa6cfQEfrT2KFvsNUKsnfSwFpM,6078
67
70
  drawlib/v0_2/private/validators/icon.py,sha256=Q7FrnOy2IAEoMnysc4YNjMyi_TuCR4c-7HMVVMVwWkc,1067
@@ -72,8 +75,8 @@ drawlib/v0_2/private/validators/smartarts.py,sha256=fOAlC0syvZVk-GCLQgaPhhfWr3gc
72
75
  drawlib/v0_2/private/validators/style.py,sha256=R7aLlaVfzdo33L7GLQ3WVfzzD_EsgV2-Y7ERcbFq7QI,3308
73
76
  drawlib/v0_2/private/validators/text.py,sha256=ELT87nekr9hMx7m-wpVTku0QPxL3qCIX4cxI5RbFoIc,1126
74
77
  drawlib/v0_2/private/validators/types.py,sha256=KtiIgivuaFyFaxIGeqr5N8xpzqIk9soiacSzcFDdjSA,4155
75
- drawlib-0.2.3.dev2.dist-info/LICENSE.txt,sha256=h_ZiliCgEDqIYpxmUPmqGGP87VBcUHil1S4wUI48ZKg,11344
76
- drawlib-0.2.3.dev2.dist-info/METADATA,sha256=IcobHma08eUAidWj1U4qq1Wnvn1AGWBbp8AUJNSlqJo,4007
77
- drawlib-0.2.3.dev2.dist-info/WHEEL,sha256=sP946D7jFCHeNz5Iq4fL4Lu-PrWrFsgfLXbbkciIZwg,88
78
- drawlib-0.2.3.dev2.dist-info/entry_points.txt,sha256=Lp6mbrRMP-g6c7P6Iz21CEjceLITCWrma3b0ncP30oQ,49
79
- drawlib-0.2.3.dev2.dist-info/RECORD,,
78
+ drawlib-0.2.3.dev3.dist-info/LICENSE.txt,sha256=h_ZiliCgEDqIYpxmUPmqGGP87VBcUHil1S4wUI48ZKg,11344
79
+ drawlib-0.2.3.dev3.dist-info/METADATA,sha256=6Za_GcAXu2SYMAypSVQGEg-qYA26dBI70zbANLDfxNY,4007
80
+ drawlib-0.2.3.dev3.dist-info/WHEEL,sha256=sP946D7jFCHeNz5Iq4fL4Lu-PrWrFsgfLXbbkciIZwg,88
81
+ drawlib-0.2.3.dev3.dist-info/entry_points.txt,sha256=Lp6mbrRMP-g6c7P6Iz21CEjceLITCWrma3b0ncP30oQ,49
82
+ drawlib-0.2.3.dev3.dist-info/RECORD,,