easypyui 2.2.0__tar.gz → 2.2.1__tar.gz
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.
- easypyui-2.2.1/LICENSE +9 -0
- easypyui-2.2.1/PKG-INFO +128 -0
- easypyui-2.2.1/README.md +108 -0
- {easypyui-2.2.0 → easypyui-2.2.1}/easypyui/__init__.py +1 -1
- easypyui-2.2.1/easypyui.egg-info/PKG-INFO +128 -0
- {easypyui-2.2.0 → easypyui-2.2.1}/easypyui.egg-info/SOURCES.txt +1 -0
- easypyui-2.2.1/pyproject.toml +29 -0
- easypyui-2.2.0/PKG-INFO +0 -7
- easypyui-2.2.0/README.md +0 -49
- easypyui-2.2.0/easypyui.egg-info/PKG-INFO +0 -7
- easypyui-2.2.0/pyproject.toml +0 -14
- {easypyui-2.2.0 → easypyui-2.2.1}/easypyui/animation.py +0 -0
- {easypyui-2.2.0 → easypyui-2.2.1}/easypyui/core.py +0 -0
- {easypyui-2.2.0 → easypyui-2.2.1}/easypyui/modern.py +0 -0
- {easypyui-2.2.0 → easypyui-2.2.1}/easypyui.egg-info/dependency_links.txt +0 -0
- {easypyui-2.2.0 → easypyui-2.2.1}/easypyui.egg-info/top_level.txt +0 -0
- {easypyui-2.2.0 → easypyui-2.2.1}/setup.cfg +0 -0
easypyui-2.2.1/LICENSE
ADDED
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
MIT License
|
|
2
|
+
|
|
3
|
+
Copyright (c) 2026 EasyPyUI
|
|
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.
|
easypyui-2.2.1/PKG-INFO
ADDED
|
@@ -0,0 +1,128 @@
|
|
|
1
|
+
Metadata-Version: 2.4
|
|
2
|
+
Name: easypyui
|
|
3
|
+
Version: 2.2.1
|
|
4
|
+
Summary: A simple and modern Python GUI library built on tkinter and ttk
|
|
5
|
+
Author: EasyPyUI
|
|
6
|
+
License: MIT
|
|
7
|
+
Project-URL: Homepage, https://pypi.org/project/easypyui/
|
|
8
|
+
Keywords: gui,tkinter,ttk,desktop,ui,python-gui
|
|
9
|
+
Classifier: Development Status :: 4 - Beta
|
|
10
|
+
Classifier: Intended Audience :: Developers
|
|
11
|
+
Classifier: License :: OSI Approved :: MIT License
|
|
12
|
+
Classifier: Operating System :: OS Independent
|
|
13
|
+
Classifier: Programming Language :: Python :: 3
|
|
14
|
+
Classifier: Programming Language :: Python :: 3 :: Only
|
|
15
|
+
Classifier: Topic :: Software Development :: User Interfaces
|
|
16
|
+
Requires-Python: >=3.9
|
|
17
|
+
Description-Content-Type: text/markdown
|
|
18
|
+
License-File: LICENSE
|
|
19
|
+
Dynamic: license-file
|
|
20
|
+
|
|
21
|
+
# EasyPyUI
|
|
22
|
+
|
|
23
|
+
**Build modern Python desktop GUIs with much less code than raw tkinter.**
|
|
24
|
+
|
|
25
|
+
EasyPyUI is a lightweight GUI library built on Python's standard `tkinter` and `ttk`.
|
|
26
|
+
It provides a short beginner-friendly API while keeping access to native Tk widgets.
|
|
27
|
+
|
|
28
|
+
## Installation
|
|
29
|
+
|
|
30
|
+
```bash
|
|
31
|
+
pip install easypyui
|
|
32
|
+
```
|
|
33
|
+
|
|
34
|
+
## Quick Start
|
|
35
|
+
|
|
36
|
+
```python
|
|
37
|
+
from easypyui import *
|
|
38
|
+
|
|
39
|
+
app("Hello EasyPyUI", 500, 400, appearance="dark")
|
|
40
|
+
title("Hello!")
|
|
41
|
+
|
|
42
|
+
name = minput("Name", placeholder="Your name")
|
|
43
|
+
mbutton("Say hello", lambda: notify("Hello " + name.get()))
|
|
44
|
+
|
|
45
|
+
fade_in(400)
|
|
46
|
+
run()
|
|
47
|
+
```
|
|
48
|
+
|
|
49
|
+
## Modern UI
|
|
50
|
+
|
|
51
|
+
EasyPyUI 2.x includes `mbutton()`, `minput()`, `mswitch()`, `mcard()`,
|
|
52
|
+
Light/Dark appearance and custom accent colors.
|
|
53
|
+
|
|
54
|
+
```python
|
|
55
|
+
app("Dashboard", 700, 500, appearance="dark", accent="#8b5cf6")
|
|
56
|
+
```
|
|
57
|
+
|
|
58
|
+
## Animation
|
|
59
|
+
|
|
60
|
+
```python
|
|
61
|
+
ring = progress_ring(20, size=110)
|
|
62
|
+
mbutton("Start", lambda: ring.animate_to(100, 1000))
|
|
63
|
+
fade_in(500)
|
|
64
|
+
```
|
|
65
|
+
|
|
66
|
+
Easing modes: `linear`, `ease_in`, `ease_out`, `ease_in_out`.
|
|
67
|
+
|
|
68
|
+
## Pages / Router
|
|
69
|
+
|
|
70
|
+
```python
|
|
71
|
+
from easypyui import *
|
|
72
|
+
|
|
73
|
+
app("Pages", 500, 350)
|
|
74
|
+
|
|
75
|
+
def home(ui):
|
|
76
|
+
title("Home")
|
|
77
|
+
on("Settings", lambda: go("settings"))
|
|
78
|
+
|
|
79
|
+
def settings(ui):
|
|
80
|
+
title("Settings")
|
|
81
|
+
on("Back", lambda: go("home"))
|
|
82
|
+
|
|
83
|
+
route("home", home)
|
|
84
|
+
route("settings", settings)
|
|
85
|
+
go("home")
|
|
86
|
+
run()
|
|
87
|
+
```
|
|
88
|
+
|
|
89
|
+
## Background Tasks
|
|
90
|
+
|
|
91
|
+
```python
|
|
92
|
+
def work():
|
|
93
|
+
import time
|
|
94
|
+
time.sleep(2)
|
|
95
|
+
return "Done!"
|
|
96
|
+
|
|
97
|
+
run_task(work, done=lambda result: notify(result), loading_text="Working...")
|
|
98
|
+
```
|
|
99
|
+
|
|
100
|
+
## Native tkinter access
|
|
101
|
+
|
|
102
|
+
Most EasyPyUI wrapper objects expose `.tk`:
|
|
103
|
+
|
|
104
|
+
```python
|
|
105
|
+
btn = mbutton("Test", lambda: print("clicked"))
|
|
106
|
+
btn.tk.bind("<Button-2>", lambda event: print("middle click"))
|
|
107
|
+
```
|
|
108
|
+
|
|
109
|
+
## Classic API
|
|
110
|
+
|
|
111
|
+
The older API remains available, including `window()`, `text()`, `inputbox()`,
|
|
112
|
+
`button()`, `table()`, `canvas()` and `start()`.
|
|
113
|
+
|
|
114
|
+
## Requirements
|
|
115
|
+
|
|
116
|
+
- Python 3.9+
|
|
117
|
+
- tkinter support in your Python installation
|
|
118
|
+
- No mandatory third-party runtime GUI dependency
|
|
119
|
+
|
|
120
|
+
## License
|
|
121
|
+
|
|
122
|
+
MIT License
|
|
123
|
+
|
|
124
|
+
## Version
|
|
125
|
+
|
|
126
|
+
Current release: **2.2.1**
|
|
127
|
+
|
|
128
|
+
2.2.1 is a PyPI metadata and documentation update for the 2.2 series.
|
easypyui-2.2.1/README.md
ADDED
|
@@ -0,0 +1,108 @@
|
|
|
1
|
+
# EasyPyUI
|
|
2
|
+
|
|
3
|
+
**Build modern Python desktop GUIs with much less code than raw tkinter.**
|
|
4
|
+
|
|
5
|
+
EasyPyUI is a lightweight GUI library built on Python's standard `tkinter` and `ttk`.
|
|
6
|
+
It provides a short beginner-friendly API while keeping access to native Tk widgets.
|
|
7
|
+
|
|
8
|
+
## Installation
|
|
9
|
+
|
|
10
|
+
```bash
|
|
11
|
+
pip install easypyui
|
|
12
|
+
```
|
|
13
|
+
|
|
14
|
+
## Quick Start
|
|
15
|
+
|
|
16
|
+
```python
|
|
17
|
+
from easypyui import *
|
|
18
|
+
|
|
19
|
+
app("Hello EasyPyUI", 500, 400, appearance="dark")
|
|
20
|
+
title("Hello!")
|
|
21
|
+
|
|
22
|
+
name = minput("Name", placeholder="Your name")
|
|
23
|
+
mbutton("Say hello", lambda: notify("Hello " + name.get()))
|
|
24
|
+
|
|
25
|
+
fade_in(400)
|
|
26
|
+
run()
|
|
27
|
+
```
|
|
28
|
+
|
|
29
|
+
## Modern UI
|
|
30
|
+
|
|
31
|
+
EasyPyUI 2.x includes `mbutton()`, `minput()`, `mswitch()`, `mcard()`,
|
|
32
|
+
Light/Dark appearance and custom accent colors.
|
|
33
|
+
|
|
34
|
+
```python
|
|
35
|
+
app("Dashboard", 700, 500, appearance="dark", accent="#8b5cf6")
|
|
36
|
+
```
|
|
37
|
+
|
|
38
|
+
## Animation
|
|
39
|
+
|
|
40
|
+
```python
|
|
41
|
+
ring = progress_ring(20, size=110)
|
|
42
|
+
mbutton("Start", lambda: ring.animate_to(100, 1000))
|
|
43
|
+
fade_in(500)
|
|
44
|
+
```
|
|
45
|
+
|
|
46
|
+
Easing modes: `linear`, `ease_in`, `ease_out`, `ease_in_out`.
|
|
47
|
+
|
|
48
|
+
## Pages / Router
|
|
49
|
+
|
|
50
|
+
```python
|
|
51
|
+
from easypyui import *
|
|
52
|
+
|
|
53
|
+
app("Pages", 500, 350)
|
|
54
|
+
|
|
55
|
+
def home(ui):
|
|
56
|
+
title("Home")
|
|
57
|
+
on("Settings", lambda: go("settings"))
|
|
58
|
+
|
|
59
|
+
def settings(ui):
|
|
60
|
+
title("Settings")
|
|
61
|
+
on("Back", lambda: go("home"))
|
|
62
|
+
|
|
63
|
+
route("home", home)
|
|
64
|
+
route("settings", settings)
|
|
65
|
+
go("home")
|
|
66
|
+
run()
|
|
67
|
+
```
|
|
68
|
+
|
|
69
|
+
## Background Tasks
|
|
70
|
+
|
|
71
|
+
```python
|
|
72
|
+
def work():
|
|
73
|
+
import time
|
|
74
|
+
time.sleep(2)
|
|
75
|
+
return "Done!"
|
|
76
|
+
|
|
77
|
+
run_task(work, done=lambda result: notify(result), loading_text="Working...")
|
|
78
|
+
```
|
|
79
|
+
|
|
80
|
+
## Native tkinter access
|
|
81
|
+
|
|
82
|
+
Most EasyPyUI wrapper objects expose `.tk`:
|
|
83
|
+
|
|
84
|
+
```python
|
|
85
|
+
btn = mbutton("Test", lambda: print("clicked"))
|
|
86
|
+
btn.tk.bind("<Button-2>", lambda event: print("middle click"))
|
|
87
|
+
```
|
|
88
|
+
|
|
89
|
+
## Classic API
|
|
90
|
+
|
|
91
|
+
The older API remains available, including `window()`, `text()`, `inputbox()`,
|
|
92
|
+
`button()`, `table()`, `canvas()` and `start()`.
|
|
93
|
+
|
|
94
|
+
## Requirements
|
|
95
|
+
|
|
96
|
+
- Python 3.9+
|
|
97
|
+
- tkinter support in your Python installation
|
|
98
|
+
- No mandatory third-party runtime GUI dependency
|
|
99
|
+
|
|
100
|
+
## License
|
|
101
|
+
|
|
102
|
+
MIT License
|
|
103
|
+
|
|
104
|
+
## Version
|
|
105
|
+
|
|
106
|
+
Current release: **2.2.1**
|
|
107
|
+
|
|
108
|
+
2.2.1 is a PyPI metadata and documentation update for the 2.2 series.
|
|
@@ -0,0 +1,128 @@
|
|
|
1
|
+
Metadata-Version: 2.4
|
|
2
|
+
Name: easypyui
|
|
3
|
+
Version: 2.2.1
|
|
4
|
+
Summary: A simple and modern Python GUI library built on tkinter and ttk
|
|
5
|
+
Author: EasyPyUI
|
|
6
|
+
License: MIT
|
|
7
|
+
Project-URL: Homepage, https://pypi.org/project/easypyui/
|
|
8
|
+
Keywords: gui,tkinter,ttk,desktop,ui,python-gui
|
|
9
|
+
Classifier: Development Status :: 4 - Beta
|
|
10
|
+
Classifier: Intended Audience :: Developers
|
|
11
|
+
Classifier: License :: OSI Approved :: MIT License
|
|
12
|
+
Classifier: Operating System :: OS Independent
|
|
13
|
+
Classifier: Programming Language :: Python :: 3
|
|
14
|
+
Classifier: Programming Language :: Python :: 3 :: Only
|
|
15
|
+
Classifier: Topic :: Software Development :: User Interfaces
|
|
16
|
+
Requires-Python: >=3.9
|
|
17
|
+
Description-Content-Type: text/markdown
|
|
18
|
+
License-File: LICENSE
|
|
19
|
+
Dynamic: license-file
|
|
20
|
+
|
|
21
|
+
# EasyPyUI
|
|
22
|
+
|
|
23
|
+
**Build modern Python desktop GUIs with much less code than raw tkinter.**
|
|
24
|
+
|
|
25
|
+
EasyPyUI is a lightweight GUI library built on Python's standard `tkinter` and `ttk`.
|
|
26
|
+
It provides a short beginner-friendly API while keeping access to native Tk widgets.
|
|
27
|
+
|
|
28
|
+
## Installation
|
|
29
|
+
|
|
30
|
+
```bash
|
|
31
|
+
pip install easypyui
|
|
32
|
+
```
|
|
33
|
+
|
|
34
|
+
## Quick Start
|
|
35
|
+
|
|
36
|
+
```python
|
|
37
|
+
from easypyui import *
|
|
38
|
+
|
|
39
|
+
app("Hello EasyPyUI", 500, 400, appearance="dark")
|
|
40
|
+
title("Hello!")
|
|
41
|
+
|
|
42
|
+
name = minput("Name", placeholder="Your name")
|
|
43
|
+
mbutton("Say hello", lambda: notify("Hello " + name.get()))
|
|
44
|
+
|
|
45
|
+
fade_in(400)
|
|
46
|
+
run()
|
|
47
|
+
```
|
|
48
|
+
|
|
49
|
+
## Modern UI
|
|
50
|
+
|
|
51
|
+
EasyPyUI 2.x includes `mbutton()`, `minput()`, `mswitch()`, `mcard()`,
|
|
52
|
+
Light/Dark appearance and custom accent colors.
|
|
53
|
+
|
|
54
|
+
```python
|
|
55
|
+
app("Dashboard", 700, 500, appearance="dark", accent="#8b5cf6")
|
|
56
|
+
```
|
|
57
|
+
|
|
58
|
+
## Animation
|
|
59
|
+
|
|
60
|
+
```python
|
|
61
|
+
ring = progress_ring(20, size=110)
|
|
62
|
+
mbutton("Start", lambda: ring.animate_to(100, 1000))
|
|
63
|
+
fade_in(500)
|
|
64
|
+
```
|
|
65
|
+
|
|
66
|
+
Easing modes: `linear`, `ease_in`, `ease_out`, `ease_in_out`.
|
|
67
|
+
|
|
68
|
+
## Pages / Router
|
|
69
|
+
|
|
70
|
+
```python
|
|
71
|
+
from easypyui import *
|
|
72
|
+
|
|
73
|
+
app("Pages", 500, 350)
|
|
74
|
+
|
|
75
|
+
def home(ui):
|
|
76
|
+
title("Home")
|
|
77
|
+
on("Settings", lambda: go("settings"))
|
|
78
|
+
|
|
79
|
+
def settings(ui):
|
|
80
|
+
title("Settings")
|
|
81
|
+
on("Back", lambda: go("home"))
|
|
82
|
+
|
|
83
|
+
route("home", home)
|
|
84
|
+
route("settings", settings)
|
|
85
|
+
go("home")
|
|
86
|
+
run()
|
|
87
|
+
```
|
|
88
|
+
|
|
89
|
+
## Background Tasks
|
|
90
|
+
|
|
91
|
+
```python
|
|
92
|
+
def work():
|
|
93
|
+
import time
|
|
94
|
+
time.sleep(2)
|
|
95
|
+
return "Done!"
|
|
96
|
+
|
|
97
|
+
run_task(work, done=lambda result: notify(result), loading_text="Working...")
|
|
98
|
+
```
|
|
99
|
+
|
|
100
|
+
## Native tkinter access
|
|
101
|
+
|
|
102
|
+
Most EasyPyUI wrapper objects expose `.tk`:
|
|
103
|
+
|
|
104
|
+
```python
|
|
105
|
+
btn = mbutton("Test", lambda: print("clicked"))
|
|
106
|
+
btn.tk.bind("<Button-2>", lambda event: print("middle click"))
|
|
107
|
+
```
|
|
108
|
+
|
|
109
|
+
## Classic API
|
|
110
|
+
|
|
111
|
+
The older API remains available, including `window()`, `text()`, `inputbox()`,
|
|
112
|
+
`button()`, `table()`, `canvas()` and `start()`.
|
|
113
|
+
|
|
114
|
+
## Requirements
|
|
115
|
+
|
|
116
|
+
- Python 3.9+
|
|
117
|
+
- tkinter support in your Python installation
|
|
118
|
+
- No mandatory third-party runtime GUI dependency
|
|
119
|
+
|
|
120
|
+
## License
|
|
121
|
+
|
|
122
|
+
MIT License
|
|
123
|
+
|
|
124
|
+
## Version
|
|
125
|
+
|
|
126
|
+
Current release: **2.2.1**
|
|
127
|
+
|
|
128
|
+
2.2.1 is a PyPI metadata and documentation update for the 2.2 series.
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
[build-system]
|
|
2
|
+
requires = ["setuptools>=68", "wheel"]
|
|
3
|
+
build-backend = "setuptools.build_meta"
|
|
4
|
+
|
|
5
|
+
[project]
|
|
6
|
+
name = "easypyui"
|
|
7
|
+
version = "2.2.1"
|
|
8
|
+
description = "A simple and modern Python GUI library built on tkinter and ttk"
|
|
9
|
+
readme = {file = "README.md", content-type = "text/markdown"}
|
|
10
|
+
requires-python = ">=3.9"
|
|
11
|
+
license = {text = "MIT"}
|
|
12
|
+
authors = [{name = "EasyPyUI"}]
|
|
13
|
+
keywords = ["gui", "tkinter", "ttk", "desktop", "ui", "python-gui"]
|
|
14
|
+
classifiers = [
|
|
15
|
+
"Development Status :: 4 - Beta",
|
|
16
|
+
"Intended Audience :: Developers",
|
|
17
|
+
"License :: OSI Approved :: MIT License",
|
|
18
|
+
"Operating System :: OS Independent",
|
|
19
|
+
"Programming Language :: Python :: 3",
|
|
20
|
+
"Programming Language :: Python :: 3 :: Only",
|
|
21
|
+
"Topic :: Software Development :: User Interfaces"
|
|
22
|
+
]
|
|
23
|
+
|
|
24
|
+
[project.urls]
|
|
25
|
+
Homepage = "https://pypi.org/project/easypyui/"
|
|
26
|
+
|
|
27
|
+
[tool.setuptools.packages.find]
|
|
28
|
+
where = ["."]
|
|
29
|
+
include = ["easypyui*"]
|
easypyui-2.2.0/PKG-INFO
DELETED
easypyui-2.2.0/README.md
DELETED
|
@@ -1,49 +0,0 @@
|
|
|
1
|
-
# EasyPyUI 2.2 — Animation
|
|
2
|
-
|
|
3
|
-
2.2 加入輕量動畫引擎,沒有新增第三方依賴。
|
|
4
|
-
|
|
5
|
-
## 新功能
|
|
6
|
-
|
|
7
|
-
- `fade_in()` / `fade_out()`
|
|
8
|
-
- `animate(..., kind="slide")`
|
|
9
|
-
- easing:linear / ease_in / ease_out / ease_in_out
|
|
10
|
-
- `progress_ring()` 圓形進度
|
|
11
|
-
- `ring.animate_to(80)`
|
|
12
|
-
- Animation 可 `.cancel()`
|
|
13
|
-
- 2.1 現代 UI、2.0 Router、1.x API 全部保留
|
|
14
|
-
|
|
15
|
-
## Fade
|
|
16
|
-
|
|
17
|
-
```python
|
|
18
|
-
from easypyui import *
|
|
19
|
-
|
|
20
|
-
app("動畫", 500, 400, appearance="dark")
|
|
21
|
-
title("EasyPyUI 2.2")
|
|
22
|
-
mbutton("淡出", lambda: fade_out(500))
|
|
23
|
-
fade_in(500)
|
|
24
|
-
run()
|
|
25
|
-
```
|
|
26
|
-
|
|
27
|
-
## Progress Ring
|
|
28
|
-
|
|
29
|
-
```python
|
|
30
|
-
ring = progress_ring(20, size=110)
|
|
31
|
-
mbutton("到 90%", lambda: ring.animate_to(90, 700))
|
|
32
|
-
```
|
|
33
|
-
|
|
34
|
-
## Slide
|
|
35
|
-
|
|
36
|
-
```python
|
|
37
|
-
btn = mbutton("滑入", lambda: None, layout="none")
|
|
38
|
-
|
|
39
|
-
animate(
|
|
40
|
-
btn,
|
|
41
|
-
kind="slide",
|
|
42
|
-
from_x=-160,
|
|
43
|
-
from_y=180,
|
|
44
|
-
to_x=170,
|
|
45
|
-
to_y=180,
|
|
46
|
-
duration=600,
|
|
47
|
-
easing="ease_out"
|
|
48
|
-
)
|
|
49
|
-
```
|
easypyui-2.2.0/pyproject.toml
DELETED
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
[build-system]
|
|
2
|
-
requires = ["setuptools>=68", "wheel"]
|
|
3
|
-
build-backend = "setuptools.build_meta"
|
|
4
|
-
|
|
5
|
-
[project]
|
|
6
|
-
name = "easypyui"
|
|
7
|
-
version = "2.2.0"
|
|
8
|
-
description = "A concise modern GUI wrapper for tkinter and ttk"
|
|
9
|
-
requires-python = ">=3.9"
|
|
10
|
-
license = {text = "MIT"}
|
|
11
|
-
keywords = ["gui", "tkinter", "ttk", "easy", "desktop"]
|
|
12
|
-
|
|
13
|
-
[tool.setuptools]
|
|
14
|
-
packages = ["easypyui"]
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|