Skip to main content

Components for DPG

Project description

dpg-components

"A component is a piece of the UI (user interface) that has its own logic and appearance. A component can be as small as a button, or as large as an entire page." Components are a powerful abstraction.

The goal of this project is to bring Components to DearPyGui

  • Components should be first class citizens, i.e. use the same API as regular DPG Items.
  • Components can contain other Components or regular DPG Items.
  • Reusability is achieved through composition.

Install

pip install DPGComponents

How it works ?

Copy file DPGComponents.py into your project, then after import, you can interact with DPG as normal and also call the method "add_component" to add complex components to your project. You can also define your own components by implementing abstract class "DPGComponent".

from datetime import datetime
import dearpygui.dearpygui as dpg
import DPGComponents.DPGComponents as comps
import pandas as pd

def save_callback():
    print("Save Clicked")

dpg.create_context()
dpg.create_viewport()
dpg.setup_dearpygui()

with dpg.window(label="Example Window"):
    dpg.add_text("Hello world")
    dpg.add_button(label="Save", callback=save_callback)
    dpg.add_input_text(label="string")
    dpg.add_slider_float(label="float")

    # add a Date Picker component
    dpg.add_component(comps.DatePickerComp, tag=f'date_picker_1')
    # Set default date to today
    dpg.configure_item(f'date_picker_1', default_value = datetime.now().date())

    #Add data grid
    dpg.add_component(comps.DataGridComp, tag=f'data_grid_1')    
    data = {
        'Name': ['Alice', 'Bob', 'Charlie'],
        'Age': [25, 30, 28],
        'City': ['New York', 'London', 'Paris']
    }
    df = pd.DataFrame(data)
        
    # Set data grid value
    dpg.set_value('data_grid_1', value = df)
        

dpg.show_viewport()
dpg.start_dearpygui()
dpg.destroy_context()

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

dpgcomponents-0.0.6.tar.gz (8.6 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

dpgcomponents-0.0.6-py3-none-any.whl (8.3 kB view details)

Uploaded Python 3

File details

Details for the file dpgcomponents-0.0.6.tar.gz.

File metadata

  • Download URL: dpgcomponents-0.0.6.tar.gz
  • Upload date:
  • Size: 8.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.5

File hashes

Hashes for dpgcomponents-0.0.6.tar.gz
Algorithm Hash digest
SHA256 a575ddf774137d597e049a99aa32af3be72c877f2d42143cd0a2769e593b6d82
MD5 76511ad772e307b938e732a2680d980b
BLAKE2b-256 f643af37e95c5aaf98fc694aea9d6960583e71fad380a2084352dc6d686cf057

See more details on using hashes here.

File details

Details for the file dpgcomponents-0.0.6-py3-none-any.whl.

File metadata

  • Download URL: dpgcomponents-0.0.6-py3-none-any.whl
  • Upload date:
  • Size: 8.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.5

File hashes

Hashes for dpgcomponents-0.0.6-py3-none-any.whl
Algorithm Hash digest
SHA256 26a93c1c22ef0614eab8d3957135bf887e0a9bee0cae521d6bc395cf568c3fbb
MD5 6794b41f77ec184b740ea8dfe89d942c
BLAKE2b-256 ae5393d6fb728d8c29984695a8522db062f00ed0c1d8d9ca886a80c4ee56fba8

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page