from guietta import B, E, _, Gui, Quit # Use *args to accept multiple signals # with different arguments. def do_eval(gui, *args): print(gui.foo) gui.bar = eval(gui.foo) gui = Gui(['Enter expression:', E('expr'), B('Eval!')], ['Result:', 'result', _], [_, _, Quit]) gui.events( [_, do_eval, do_eval], [_, _, _], [_, _, _], ) gui.rename( [_, 'foo', _], [_, 'bar', _], [_, _, _], ) gui.run() # GUI widgets are available after window closing, print(gui.bar)
# -*- coding: utf-8 -*- from guietta import B, E, _, Gui, Quit, QSlider, Qt def do_eval(gui, *args): gui.result = eval(gui.expr) def do_slider(gui, state): gui.result = '%d' % state s = QSlider(Qt.Horizontal) gui = Gui(['Enter expression:', E('expr'), B('Eval!')], ['Result:', 'result', _], [(s, 'myslider'), _, Quit]) gui.events( [_, do_eval, do_eval], [_, _, _], [do_slider, _, _], ) gui.run() # GUI widgets are available after window closing, print(gui.result)
# -*- coding: utf-8 -*- from PySide2.QtCore import Qt from guietta import Gui, _, ___, III, HValueSlider, VValueSlider def do_slider(gui, value): print('Slider value: ', value) import numpy as np slider1 = HValueSlider('hvalue', range(500), unit='Hz') slider2 = HValueSlider('hvalue', range(500), unit='Hz', anchor=Qt.AnchorLeft) slider3 = VValueSlider('hvalue', range(500)) gui = Gui( ['xxx', ['xxx'], 'xxx', slider3], [slider1, ___, ___, III], [slider2, ___, _, III], ) gui.events( [_, _, _, _], [do_slider, _, _, _], [_, _, _, _], ) gui.run()
def myeval(gui): gui.result = eval(gui.expr) def reset(gui): global counter counter = 0 def stop(gui): gui.timer_stop() def start(gui): gui.timer_start(regular_update, interval=0.1) gui = Gui(['Enter expression:', '__expr__', ['Eval!']], ['Result:', 'result', _], [['Start'], ['Stop'], ['Reset']], ['counter', _, Quit]) gui.events( [_, myeval, myeval], [_, _, _], [start, stop, reset], [_, _, _], ) start(gui) gui.run()
# -*- coding: utf-8 -*- from guietta import Gui, LB, _, III def listbox(gui, text): print(text) def test(gui, *args): print(gui.listbox) gui = Gui([LB('listbox')], [III], [III], [['Test']]) gui.events( [listbox], [_], [_], [test], ) gui.widgets['listbox'].setSelectionMode( gui.widgets['listbox'].ExtendedSelection) gui.listbox = ['a', 'b', 'c', 'd'] gui.run()
from guietta import Gui, M, _, ___, III, VS, Ax import numpy as np def replot(gui, value): with Ax(gui.plot) as ax: ax.set_title('y=sin(x)') t = np.linspace(0, 1+value/10, 500) ax.plot(t, np.sin(t), ".-") gui = Gui( [M('plot'), ___, ___, VS('slider')], [III, III, III, III], [III, III, III, III], [III, III, III, '^^^ Move the slider'], ) gui.events( [_, _, _, replot], [_, _, _, _], [_, _, _, _], ) replot(gui, 1) gui.run()
def replot(gui, value): with Ax(gui.plot) as ax: ax.set_title('y=tan(x)') t = np.linspace(0, 1+value/10, 500) ax.plot(t, np.tan(t), ".-") def click(gui, x, y): print('Mouse click:', x, y) gui = Gui( [ M('plot'), ___, ___, VS('slider') ], [ III , III, III, III ], [ III , III, III, III ], [ III , III, III, '^^^ Move the slider' ], ) gui.events( [ click , _ , _ , replot ], [ _ , _ , _ , _ ], [ _ , _ , _ , _ ], ) replot(gui, 1) gui.run()
# -*- coding: utf-8 -*- from guietta import B, C, E, _, Gui, Quit def do_eval(gui, *args): gui.result = eval(gui.expr) def checkbox(gui, state): print('Checkbox state is', state) gui = Gui(['Enter expression:', E('expr'), B('Eval!')], ['Result:', 'result', _], [C('test'), _, Quit]) gui.events( [_, do_eval, do_eval], [_, _, _], [checkbox, _, _], ) gui.run() # GUI widgets are available after window closing, print(gui.result)
from guietta import Gui, _, R1, R2, R3 gui = Gui( [R1('rad1'), R2('rad3'), R3('rad5')], [R1('rad2'), R2('rad4'), R3('rad6')], ) def msg(gui, *args): print('second button group') def event(gui, *args): print('third group') gui.events( [_, _, event], [_, _, event], ) with gui.rad1, gui.rad2: print('First button group') print('rad1 isChecked = ', gui.rad1.isChecked()) print('rad2 isChecked = ', gui.rad2.isChecked()) gui.rad3 = msg gui.rad4 = msg gui.run()
title=titletext, text=content, category=category_number, subcategory=subcategory_number) print(r) token = r['success'] r = nation.command('dispatch', token=token, dispatch='add', mode='execute', title=titletext, text=content, category=category_number, subcategory=subcategory_number) id = r['success'] digits = re.compile(r'[0-9]+') id = digits.findall(id) print(id[0]) post['id'] = id[0] frontmatter.dump(post, entry.path) gui = Gui(['Enter Nation', '__nation__'], ['Post & Edit Dispatches:', ['Go']]) gui.events([ _, _, ], [_, post]) gui.run()
# -*- coding: utf-8 -*- from guietta import E, _, Gui, Quit gui = Gui(['Enter expression:', E('expr'), _], ['Result:', 'result', _], [_, _, Quit]) gui.events( [_, ('textEdited', None), _], [_, _, _], [_, _, _], ) while True: name, event = gui.get() if name == 'expr': try: gui.result = eval(gui.expr) except Exception as e: gui.result = 'Error: ' + str(e) elif name == None: break
gui.result = result def change(gui): opdict = { '^': '__pow__', '==': '__eq__', '>': '__gt__', '//': '__floordiv__' } gui.op = opdict def get(gui): print(gui.op) opdict = {'+': '__add__', '-': '__sub__', '*': '__mul__', '/': '__truediv__'} gui = Gui([ 'Enter numbers:', '__num1__', CB('op', opdict), '__num2__', ['Calculate'] ], ['Result: -->', 'result', ___, ___, ['Change']], [_, _, _, ['Get'], Quit], exceptions=Exceptions.POPUP) gui.events([_, _, _, _, calculate], [_, _, _, _, change], [_, _, _, get, _]) gui.run()
# -*- coding: utf-8 -*- from guietta import E, _, Gui, Quit def do_eval(gui, text): gui.result = eval(text) gui = Gui(['Enter expression:', E('expr'), _], ['Result:', 'result', _], [_, _, Quit]) gui.events( [_, ('textEdited', do_eval), _], [_, _, _], [_, _, _], ) gui.run() # GUI widgets are available after window closing, print(gui.result)