The question is: Is it simple to build a GUI that can be accessible remotely?
We worked a lot on this and we built a GUI library, portable, lightweight, Python!
Hosted on github https://github.com/dddomodossola/gui

Here is an example (suggestions are gratefully accepted :-) ):

import gui
from gui import *


class MyApp(App):

    def __init__(self, *args):
        super(MyApp, self).__init__(*args)

    def main(self):
        # the arguments are width - height - layoutOrientationOrizontal
        wid = gui.Widget(120, 100, False, 10)
        self.lbl = gui.Label(100, 30, 'Hello world!')
        self.bt = gui.Button(100, 30, 'Press me!')

        # setting the listener for the onclick event of the button
        self.bt.set_on_click_listener(self, 'on_button_pressed')

        # appending a widget to another, the first argument is a string key
        wid.append('1', self.lbl)
        wid.append('2', self.bt)

        # returning the root widget
        return wid

    # listener function
    def on_button_pressed(self):
        self.lbl.set_text('Button pressed!')
        self.bt.set_text('Hi!')

    def test(self):
        return ('test', 'data')


# starts the webserver
start(MyApp)

Recommended Answers

All 4 Replies

Seems nice but it only has generic widges available. Are you planning on adding further stuff?

I would like to build a complete set of widgets. But, which are the necessary ones? Do you have a specific need? Furthermore, build new widgets is simple, you can see gui.py in order to know the basic principles.

By the way it's a really good idea especialy if you want to perform some tasks on a remote server than you can just supply input to. Well I was thinking more math/business related stuff like charts, plots etc?

Fine, thank you. I think that the better way to do this is to use mathplotlib and produce images that can be added to the gui. But probably, a basic chart could be however usefull.

It can be also a usefull solution for platforms like raspberry pi, if the user won't to attach a display.

commented: Yep, and yeah I was referirng to matplotlib just integrated to get inputs from the gui =] +6
Be a part of the DaniWeb community

We're a friendly, industry-focused community of developers, IT pros, digital marketers, and technology enthusiasts meeting, networking, learning, and sharing knowledge.