A package for easily creating UIs in Python, mainly using OpenCV's drawing functions.
Project description
ImageUI
A package for easily creating UIs in Python, mainly using OpenCV's drawing functions.
Installation
pip install ImageUI
Usage
import SimpleWindow
import ImageUI
import numpy
import time
# Create a background to render the UI on
Background = numpy.zeros((250, 400, 3), dtype=numpy.uint8)
Background[:] = (28, 28, 28)
# Initialize a window could be a OpenCV window too
SimpleWindow.Initialize(Name="Example UI",
Size=(Background.shape[1], Background.shape[0]),
Position=(100, 100),
TitleBarColor=(28, 28, 28),
Resizable=False,
TopMost=False,
Foreground=True,
Minimized=False,
Undestroyable=False,
Icon="",
NoWarnings=False)
# Get all available translation languages
TranslationLanguages = list(ImageUI.Translations.GetAvailableLanguages().keys())
def SetTranslator(Language):
# Set the auto UI translator, automatically translates all the UI elements
ImageUI.SetTranslator(SourceLanguage="English", DestinationLanguage=Language)
def SetTheme(Theme):
ThemeColor = (28, 28, 28) if Theme == "Dark" else (250, 250, 250)
Background[:] = ThemeColor
# Set the ImageUI theme, either "Dark" or "Light"
ImageUI.SetTheme(Theme)
SimpleWindow.SetTitleBarColor(Name="Example UI", Color=ThemeColor)
while True:
# Add a button to the UI
ImageUI.Button(Text="Button",
X1=10,
Y1=10,
X2=150,
Y2=45,
ID="Button",
OnPress=lambda: print("Button pressed!"))
# Add a switch to the UI
ImageUI.Switch(Text="Switch",
X1=10,
Y1=55,
X2=150,
Y2=80,
ID="Switch",
OnChange=lambda State: print("Switch changed to:", State))
# Add a label to the UI
ImageUI.Label(Text="This is a Label",
X1=200,
Y1=55,
X2=380,
Y2=80,
ID="Label")
# Add a dropdown for language selection to the UI
ImageUI.Dropdown(Title="Dropdown",
Items=TranslationLanguages,
DefaultItem="English",
X1=10,
Y1=90,
X2=190,
Y2=125,
ID="LanguageDropdown",
OnChange=SetTranslator)
# Add a dropdown for theme selection to the UI
ImageUI.Dropdown(Title="Theme",
Items=["Dark", "Light"],
DefaultItem="Dark",
X1=200,
Y1=90,
X2=380,
Y2=125,
ID="ThemeDropdown",
OnChange=SetTheme)
# Add an input to the UI
ImageUI.Input(X1=10,
Y1=135,
X2=380,
Y2=170,
Placeholder="Enter something...",
ID="Input",
OnChange=lambda Text: print("Input changed to:", Text))
# Get the window handle
WindowHandle = SimpleWindow.GetHandle(Name="Example UI")
# Render the UI on the background
Frame = ImageUI.Update(WindowHWND=WindowHandle, Frame=Background)
# Show the background with the UI rendered on it
SimpleWindow.Show(Name="Example UI", Frame=Frame)
if SimpleWindow.GetOpen(Name="Example UI") != True:
# Saves cache like translations
ImageUI.Exit()
break
# Limit to about 60 FPS
time.sleep(1 / 60)
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
imageui-0.39.tar.gz
(54.0 kB
view details)
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
imageui-0.39-py3-none-any.whl
(43.6 kB
view details)
File details
Details for the file imageui-0.39.tar.gz.
File metadata
- Download URL: imageui-0.39.tar.gz
- Upload date:
- Size: 54.0 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.2
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
0f359106bfb12fc7c19517827b37af7c872bcb6a70e2bdfd070780dcb964b222
|
|
| MD5 |
c4bf7ea9dfccc1d8de6c4ba558ef1e76
|
|
| BLAKE2b-256 |
4be882e34371feba61d30ec8a2659864b733a7014ca8c4fca0a3cd928770e923
|
File details
Details for the file imageui-0.39-py3-none-any.whl.
File metadata
- Download URL: imageui-0.39-py3-none-any.whl
- Upload date:
- Size: 43.6 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.2
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
4207c898720355a2083580b7a3c340866ebd7203677c3402831bb30a3ed41904
|
|
| MD5 |
9355a23a10a1f045d6f88e8c58b041eb
|
|
| BLAKE2b-256 |
584915203b340b9f584d0a6a3f36ac8170a033ce21d207d09fd07c749cc03cc7
|