Skip to content

Commit 4ae048f

Browse files
committed
1.3.1
1 parent b5a36c9 commit 4ae048f

File tree

3 files changed

+11
-4
lines changed

3 files changed

+11
-4
lines changed

docs/source/changelog.rst

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,10 @@ Glossary
2323
---------------------
2424
Releases
2525
---------------------
26+
v1.3.1
27+
================
28+
- Fixed :func:`tkclasswiz.convert.convert_objects_to_script` not including enum imports.
29+
2630

2731
v1.3.0
2832
================

tkclasswiz/__init__.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,7 @@
2626
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
2727
SOFTWARE.
2828
"""
29-
__version__ = "1.3.0"
29+
__version__ = "1.3.1"
3030

3131
from .object_frame import *
3232
from .annotations import *

tkclasswiz/convert.py

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -240,16 +240,14 @@ def convert_objects_to_script(object: Union[ObjectInfo, list, tuple, set, str]):
240240
object_str = f"{object.class_.__name__}(\n "
241241
attr_str = []
242242
for attr, value in object.data.items():
243-
if isinstance(value, (ObjectInfo, list, tuple, set)):
243+
if isinstance(value, (ObjectInfo, list, tuple, set, Enum)):
244244
value, import_data_ = convert_objects_to_script(value)
245245
import_data.extend(import_data_)
246246

247247
elif isinstance(value, str):
248248
value, _ = convert_objects_to_script(value)
249249

250250
attr_str.append(f"{attr}={value},\n")
251-
if issubclass(type(value), Enum):
252-
import_data.append(f"from {type(value).__module__} import {type(value).__name__}")
253251

254252
import_data.append(f"from {object.class_.__module__} import {object.class_.__name__}")
255253

@@ -265,6 +263,11 @@ def convert_objects_to_script(object: Union[ObjectInfo, list, tuple, set, str]):
265263

266264
_list_data = " ".join(''.join(_list_data).splitlines(keepends=True)) + "]"
267265
object_data.append(_list_data)
266+
267+
elif isinstance(object, Enum):
268+
import_data.append(f"from {object.__module__} import {type(object).__name__}")
269+
object_data.append(str(object))
270+
268271
else:
269272
if isinstance(object, str):
270273
object = object.replace("\\", "\\\\").replace("\n", "\\n").replace('"', '\\"')

0 commit comments

Comments
 (0)