예제 #1
0
    def make_gui(self):
        dpg.set_main_window_size(self.width, self.height)
        dpg.set_theme(self.theme)
        with simple.window("Main", no_title_bar=True):
            dpg.set_main_window_title("pytasker")
            with simple.menu_bar("Menu"):
                with simple.menu("File"):
                    dpg.add_menu_item("New Page", callback=self.new_tab)
                    dpg.add_menu_item("Load Page", callback=self.load_page)
                    dpg.add_menu_item("Save Page",
                                      callback=self.save_page_dialog)
                    dpg.add_separator()
                    dpg.add_menu_item("Quit", callback=self.exit_program)
                with simple.menu("Themes"):
                    dpg.add_menu_item("Dark", callback=self.theme_callback)
                    dpg.add_menu_item("Light", callback=self.theme_callback)
                    dpg.add_menu_item("Classic", callback=self.theme_callback)
                    dpg.add_menu_item("Dark 2", callback=self.theme_callback)
                    dpg.add_menu_item("Grey", callback=self.theme_callback)
                    dpg.add_menu_item("Dark Grey",
                                      callback=self.theme_callback)
                    dpg.add_menu_item("Cherry", callback=self.theme_callback)
                    dpg.add_menu_item("Purple", callback=self.theme_callback)
                    dpg.add_menu_item("Gold", callback=self.theme_callback)
                    dpg.add_menu_item("Red", callback=self.theme_callback)

            dpg.add_tab_bar(name="tab_bar_1", parent="Main")
            with simple.group("inittext"):
                dpg.add_text("Hello! Select File - New to get started")
예제 #2
0
def update_theme(theme):
    """Update theme.

    Args:
        theme (str): theme name
    """
    core.set_theme(theme)
예제 #3
0
    def __init__(self):
        self.__fontSize = 1.
        self.__fontSizeStep = .1
        self.__fontSizeRange = (.8, 15.)
        core.set_global_font_scale(self.__fontSize)
        core.set_theme("Cherry")
        core.set_main_window_size(960, 540)

        with simple.window("MainWindow", autosize=True):
            core.add_text("HELLO WORLD!")
        core.set_mouse_wheel_callback(self.__cbMouseWheel)
예제 #4
0
	def apply(self, who):
		theme = self.__theme.get(who, None)
		if theme is None:
			print(f"no theme: {who}")
			return

		overall = theme.get("theme", None)
		if overall:
			core.set_theme(theme=overall)

		# thing is what category, cmd is cmd, const == color const for v[0]
		# func == extend function with data...
		for thing, cmd, func, const in [
			# ("font", "add_additional_font", False, False),
			("style", "set_style_", True, False),
			("color", "set_theme_item", False, True),
		]:
			for k, v in theme.get(thing, {}).items():
				meth = f"{cmd}{k}" if func else cmd
				try:
					meth = getattr(core, meth)
				except Exception as _:
					print(f"no function: {meth}")
					continue

				if const:
					nv = f"mvGuiCol_{k}"
					try:
						nv = getattr(core, nv)
					except Exception as _:
						print(f"no constant: {nv}")
						continue
					v = [nv] + [int(c * 255) for c in v]

				if isinstance(v, (list, tuple)):
					meth(*v)
				else:
					meth(v)
		self.__current = who
 def _theme_callback(self, theme_str: str, data: None) -> None:
     """ Set application GUI theme.
     """
     core.set_theme(theme_str)
예제 #6
0
파일: ux.py 프로젝트: zkxjzmswkwl/l0lscape
import dearpygui.core as core
import dearpygui.simple as simple
from logic import listen, load_config, modal, open_url, default

WINDOW = 'L0lScape Configuration'

with simple.window(WINDOW):
    core.set_main_window_title(WINDOW)
    core.set_main_window_size(430, 460)

    core.set_theme('Purple')

    core.set_style_item_spacing(5, 5)
    core.set_style_frame_padding(5, 5)

    core.add_additional_font('resources/monofur.ttf', 18)

    core.add_dummy(width=140)
    core.add_same_line()
    core.add_image('logo', 'resources/l0lscape.png')

    core.add_button('About', callback=modal, width=100)
    core.add_same_line()
    core.add_button('Github', callback=open_url, width=100)
    core.add_same_line()
    core.add_button('Discord', callback=open_url, width=100)
    core.add_same_line()
    core.add_button('Help', callback=open_url, width=100)

    core.add_separator()
예제 #7
0
from dearpygui import core, simple
from settings_window import SettingsWindow

core.enable_docking()
settingsWindow = SettingsWindow()

core.set_main_window_title("NeuronApplication")
with simple.window('MainWindow'):
    core.add_menu_bar("MenuBar")
    with simple.menu("Motyw##demo"):
        core.add_menu_item("Ciemny", callback=lambda sender, data: core.set_theme("Dark"), check=True)
        core.add_menu_item("Jasny", callback=lambda sender, data: core.set_theme("Light"), check=True)
        core.add_menu_item("Klasyczny", callback=lambda sender, data: core.set_theme("Classic"), check=True)
        core.add_menu_item("Ciemny 2", callback=lambda sender, data: core.set_theme("Dark 2"), check=True)
        core.add_menu_item("Szary", callback=lambda sender, data: core.set_theme("Grey"), check=True)
        core.add_menu_item("Ciemno-Szary", callback=lambda sender, data: core.set_theme("Dark Grey"), check=True)
        core.add_menu_item("Wisniowy", callback=lambda sender, data: core.set_theme("Cherry"), check=True)
        core.add_menu_item("Purpurowy", callback=lambda sender, data: core.set_theme("Purple"), check=True)
        core.add_menu_item("Zloty", callback=lambda sender, data: core.set_theme("Gold"), check=True)
        core.add_menu_item("Czerwony", callback=lambda sender, data: core.set_theme("Red"), check=True)
    with simple.menu("Pozycja"):
        core.add_menu_item("Zresetuj wszystko", callback=lambda sender, data: settingsWindow.reset_all())
        pass
    with simple.menu("Ukryj"):
        core.add_menu_item("Okno ustawien", callback = lambda sender, data: settingsWindow.toggle_visibility())
        core.add_menu_item("Wizualizacja sieci", callback = lambda sender, data: settingsWindow.betterVisualizer.toggle_visibility())
        core.add_menu_item("Wczytaj plik", callback = lambda sender, data: settingsWindow.importWindow.toggle_visibility())
        core.add_menu_item("Odpowiedz sieci", callback = lambda sender, data: settingsWindow.outputVisualisationWindow.toggle_visibility())
        core.add_menu_item("Historia uczenia##temp2", callback = lambda sender, data: settingsWindow.historyGraphWindow.toggle_visibility())

예제 #8
0
from dearpygui import core, simple, demo

from convo.view import MainView
from convo import config

# Create windows
mm = MainView()
mm.draw()

# Default theme
core.set_theme(config.DEFAULT_THEME)

# demo.show_demo()

core.set_main_window_title('Convo-Craft')
core.set_main_window_size(*config.DEFAULT_WINDOW_SIZE)
core.start_dearpygui()
예제 #9
0
        core.add_button("Choose template file",
                        callback=open_template_file,
                        width=200)
        core.add_same_line(spacing=10)
        core.add_input_text(
            "template_file",
            label="",
            width=300,
            enabled=False,
        )
        core.add_button("Choose output folder",
                        callback=open_output_folder,
                        width=200)
        core.add_same_line(spacing=10)
        core.add_input_text(
            "output_folder",
            label="",
            width=300,
            enabled=False,
        )
        core.add_same_line(spacing=10)
        core.add_input_text("Output file", width=100, default_value="out.docx")
        core.add_button("Start creation", callback=start_creation)

    Base.metadata.create_all(engine)
    core.add_additional_font("OpenSans-Regular.ttf", 25)
    core.set_theme("Light")
    core.set_main_window_title("Create Document from Template")
    core.set_main_window_pos(0, 0)
    core.start_dearpygui(primary_window="Create Document from Template")
예제 #10
0
파일: moon.py 프로젝트: zkxjzmswkwl/moon
                        before='Login',
                        width=200)


with simple.window('Moon Overwatch Leveling Bot'):
    core.set_style_item_spacing(15, 15)
    core.set_style_frame_padding(5, 5)
    core.add_additional_font('Roboto-Regular.ttf', 14)

    core.add_image('logo', 'moon.png')
    core.add_separator()

    core.add_input_text('Account Email',
                        default_value='*****@*****.**',
                        width=200)

    core.add_input_text('Account Password',
                        default_value='weShouldBuffBrig!69',
                        width=200)

    core.add_checkbox('Multiple Accounts',
                      default_value=False,
                      callback=multiple_accounts)

    core.add_same_line()
    core.add_button('Login', callback=login, width=85)
    core.add_separator()

core.set_theme('Red')
core.start_dearpygui(primary_window='Moon Overwatch Leveling Bot')
예제 #11
0
    def start(self):
        available_out_ports = mido.get_output_names()
        available_in_ports = mido.get_input_names()

        if len(available_in_ports) > 0:
            status.current_in_port = mido.open_input(
                available_in_ports[0], callback=self.get_midi_input)

        if len(available_out_ports) > 0:
            self.out_port = mido.open_output(available_out_ports[0])

        core.set_main_window_size(350, 550)
        core.set_main_window_title('Fractal Melody Machine')
        core.set_theme('Gold')

        with simple.window('Fractal Melody Machine', width=500, height=300):
            core.add_text('MIDI Input Port')
            core.add_combo('ComboInPort', items=mido.get_input_names(
            ), default_value=status.current_in_port.name, label='', width=100, callback=self.change_midi_in_port)

            core.add_text('MIDI Output Port')
            core.add_combo('ComboOutPort', items=mido.get_output_names(
            ), default_value=self.out_port.name, label='', width=100, callback=self.change_midi_out_port)

            core.add_spacing(count=10)

            core.add_text('BPM')
            core.add_slider_int('SliderBPM', default_value=60, min_value=20, max_value=200, label='', width=100, callback=self.change_bpm)

            core.add_text('Depth')
            core.add_slider_int('SliderDepth', default_value=4, min_value=1,
                                max_value=16, label='', width=100, callback=self.change_depth)

            core.add_same_line(spacing=45)
            core.add_text('DetectedKey', default_value='Detected Key: ')

            core.add_text('Branching Factor')
            core.add_slider_int('SliderBF', default_value=2, min_value=2,
                                max_value=4, label='', width=100, callback=self.change_bf)

            core.add_text('Octave Spread')
            core.add_child('OctaveWindow', width=300, height=150)
            core.end()

            core.add_text('Figures')
            core.add_child('FigureWindow', width=300, height=150)

            core.add_table('FigureTable', [], hide_headers=True, height=10)

            core.add_columns('FigureTableCols', 2, border=False)

            core.add_checkbox(str(theory.FIGURE_WHOLE_NOTE), label='Whole note', callback=self.change_figures)
            core.add_checkbox(str(theory.FIGURE_QUARTER_NOTE), label='Quarter note', callback=self.change_figures, default_value=True)
            core.add_checkbox(str(theory.FIGURE_16TH_NOTE), label='16th note', callback=self.change_figures)
            core.add_checkbox(str(theory.FIGURE_64TH_NOTE), label='64th note', callback=self.change_figures)

            core.add_next_column()

            core.add_checkbox(str(theory.FIGURE_HALF_NOTE), label='Half note', callback=self.change_figures)
            core.add_checkbox(str(theory.FIGURE_8TH_NOTE), label='8th note', callback=self.change_figures, default_value=True)
            core.add_checkbox(str(theory.FIGURE_32ND_NOTE), label='32nd note', callback=self.change_figures)

            core.end()

            # Initialize octave spread sliders
            self.change_depth()

        core.start_dearpygui(primary_window='Fractal Melody Machine')
예제 #12
0
 def theme_setting(sender, data):
     core.set_theme(data)
예제 #13
0
def main():

    center_items = []
    core.add_data('item_center_list', center_items)

    with simple.window(TITLE):
        with simple.menu_bar('##menu_bar'):
            with simple.menu('File'):
                # core.add_menu_item('Import', callback=None)
                # core.add_menu_item('Export', callback=None)
                with simple.menu('Theme'):
                    themes = ['Dark', 'Light', 'Classic', 'Dark 2', 'Grey', 'Dark Grey', 'Cherry', 'Purple', 'Gold', 'Red']
                    for theme in themes:
                        core.add_menu_item(theme, callback=menu.update_theme)
                # core.add_menu_item('Exit', callback=None)
            with simple.menu('About'):
                core.add_menu_item('Version', callback=menu.show_version)

        with simple.group('##input_group'):
            # Title input
            core.add_text('Title:')
            core.add_input_text(TITLE_ID, hint='Enter title', width=WIDGET_WIDTH)
            core.add_spacing(count=2)

            # Identifier input
            core.add_text('Identifier:')
            core.add_input_text(IDENTIFIER_ID, hint='Enter identifier', width=WIDGET_WIDTH)
            core.add_spacing(count=2)

            # Password input
            core.add_text('Password:'******'Enter password', width=WIDGET_WIDTH)
            core.add_spacing(count=2)

            # Note input
            core.add_text('Note:')
            core.add_input_text(NOTE_ID, hint='Enter note info', width=WIDGET_WIDTH)
            core.add_spacing(count=10)

            # Save button
            save_clear_spacing = 50
            core.add_button('##save', label='Save', callback=input_field.save_password, width=WIDGET_HALF_WIDTH - (save_clear_spacing // 2))
            core.set_item_color('##save', core.mvGuiCol_Button, color=GREEN)
            core.add_same_line(spacing=save_clear_spacing)
            # Clear input entry button
            core.add_button('##clear_input', label='Clear input', callback=input_field.clear_input, width=WIDGET_HALF_WIDTH - (save_clear_spacing // 2))
            core.add_spacing(count=20)

        with simple.group('##log_group'):
            # Logger
            core.add_logger('##log_message', auto_scroll_button=False, copy_button=False, filter=False, clear_button=False, width=WIDGET_WIDTH, height=80)
            core.set_log_level(core.mvTRACE, logger='##log_message')
            core.add_spacing(count=10)

            # Clear log button
            core.add_button('##clear_log', label='Clear log', callback=logger.clear_log, width=WIDGET_WIDTH)
            core.add_spacing(count=10)

        with simple.group('##password_table_group'):
            # Password table
            header = ['No', 'Title', 'Identifier', 'Password', 'Note']
            core.add_table('##password_table', header, callback=table.table_printer, height=int(WINDOW_HEIGHT * 0.45), width=WIDGET_WIDTH)
            core.add_spacing(count=10)

            table.update_password_table()

            # Update password table button
            update_delete_spacing = 20
            core.add_button('##update_table', label='Update table', callback=table.update_password_table, width=WIDGET_HALF_WIDTH - (update_delete_spacing // 2))
            core.set_item_color('##update_table', core.mvGuiCol_Button, color=BLUE)
            core.add_same_line(spacing=update_delete_spacing)

            # Delete password table button
            core.add_button('##delete_table', label='Delete table', width=WIDGET_HALF_WIDTH - (update_delete_spacing // 2))
            core.set_item_color('##delete_table', core.mvGuiCol_Button, color=RED)
            with simple.popup('##delete_table', '##ask_delete', mousebutton=core.mvMouseButton_Left, modal=True):
                with simple.group('##delete_table_button_group'):
                    delete_table_spacing = 10
                    delete_table_half_width = core.get_main_window_size()[1] // 5 - delete_table_spacing

                    core.add_text('##delete_table_button', default_value='Are you sure to delete all data?')

                    core.add_spacing(count=delete_table_spacing)
                    core.add_button('##delete_table_button_yes', label='Yes', callback=table.delete_password_table, callback_data=True, width=delete_table_half_width)
                    core.add_same_line(spacing=delete_table_spacing)
                    core.add_button('##delete_table_button_no', label='No', callback=table.delete_password_table, callback_data=False, width=delete_table_half_width)

                    # TODO WONT WORK NEED TO FIX center_item FUNCTION
                    # center_item('##delete_table_button')
                    # center_item('##delete_table_button_yes')
                    # center_item('##delete_table_button_no')
                # center_item('##delete_table_button_group')

    if DEBUG_MODE:
        # core.show_logger()
        simple.show_debug()
        # simple.show_documentation()

    # Common Configuration
    core.set_theme(DEFAULT_THEME)
    core.add_additional_font(FONT, FONT_SIZE)
    core.set_main_window_title(TITLE)
    core.set_main_window_size(WINDOW_WIDTH, WINDOW_HEIGHT)
    core.set_main_window_resizable(RESIZABLE)
    core.set_style_window_padding(WINDOW_PADDING, WINDOW_PADDING)
    core.set_exit_callback(model.close_connection)

    # core.set_render_callback(apply_centering)
    core.start_dearpygui(primary_window=TITLE)
예제 #14
0
 def theme_callback(self, sender, data):
     dpg.set_theme(sender)
예제 #15
0
import win32process

dwmapi = ctypes.WinDLL("dwmapi")
DWMWA_CLOAKED = 14
isCloacked = c_int(0)

from dearpygui.core import set_main_window_size, set_global_font_scale, set_theme, set_style_window_padding, get_value, \
    set_value, add_spacing, add_text, add_slider_int, add_menu_item, add_button, start_dearpygui, set_start_callback, \
    mvMouseButton_Left, close_popup, set_main_window_title, add_window, end, delete_item
from dearpygui.simple import set_window_pos, window, menu, popup

PREF_FILE_NM = 'Auto Pots preferences.json'
SCREEN_WIDTH = 640
set_main_window_size(SCREEN_WIDTH, 500)
set_global_font_scale(1.5)
set_theme("Gold")
set_style_window_padding(30, 30)


def get_active_windows():
    def enum_cb(hwnd, results):
        if win32gui.IsWindowVisible(hwnd) and win32gui.GetWindowText(hwnd) != '':
            dwmapi.DwmGetWindowAttribute(HWND(hwnd), DWORD(DWMWA_CLOAKED), ctypes.byref(isCloacked),
                                         ctypes.sizeof(isCloacked))
            if (isCloacked.value == 0):
                results.append((hwnd, win32gui.GetWindowText(hwnd)))

    toplist, winlist = [], []
    win32gui.EnumWindows(enum_cb, toplist)
    filtered_titles = []
    for hwnd, title in toplist:
예제 #16
0
 def set_theme(self, theme):
     '''
     Sets the theme
     '''
     core.set_theme(theme)
     self.active_theme = theme