Skip to main content

High power secure server GUI utility helpers.

Project description

pyvguicom PyV GUI Common utilities

Common GUI routines and classes

These classes are for python PyGobject (Gtk) development. They are used in several projects. They act as a simplification front end for the PyGtk / PyGobject classes.

A sampler of what is in there (pasted from code, in no particular order):

class CairoHelper():
class TextTable(Gtk.Table):
class TextRow(Gtk.HBox):
class RadioGroup(Gtk.Frame):
class Led(Gtk.DrawingArea):
class SeparatorMenuItem(Gtk.SeparatorMenuItem):
class Menu():
class MenuButt(Gtk.DrawingArea):
class Lights(Gtk.Frame):
class WideButt(Gtk.Button):
class ScrollListBox(Gtk.Frame):
class FrameTextView(Gtk.TextView):
class Label(Gtk.Label):
class Logo(Gtk.VBox):
class xSpacer(Gtk.HBox):
class ListBox(Gtk.TreeView):

... and a lot more ...

Also includes Some Python / Gtk primitives:

def get_screen_wh():
def get_screen_xy():
def print_exception(xstr):
def message(strx, parent = None, title = None, icon = Gtk.MessageType.INFO):
def usleep(msec):
def tmpname(indir, template):
def mainloop():
def time_n2s(ttt):
def time_s2n(sss):
def yes_no_cancel(title, message, cancel = True, parent = None):
def yn_key(win, event, cancel):
def opendialog(parent=None):
def savedialog(resp):
def leadspace(strx):

 ... and a lot more ...

Example:

The Label Button (SmallButt) takes a constructor, and feeds the arguments with defaults as one would expect.

 def __init__(self, textm="", widget=None, tooltip=None, font=None):

The simplification effect allows one to create a Label Button with no arguments, and still have a somewhat reasonable outcome. The label example is trivial, the simplification takes a new dimension with classes like SimpleTree.

The defaults are set to a reasonable value, and the named argument(s) can be set on one line. This makes the code look more compact and maintainable.

Tests:

The test utilities can confirm correct operation; however being a visual set of classes, the real test is seeing the generated UI. The test utilities can also be found in the project install directory, starting with the text* prefix.

See descendent projects for more examples. (pyedpro; pycal; pyvserv; ...)

History:

Sat 08.Nov.2025     -- Simplified pyutils
Tue 11.Nov.2025     -- No default frame for radio buttons

Peter Glen

// EOF

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

pyvguicom-1.4.0.tar.gz (185.4 kB view details)

Uploaded Source

Built Distribution

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

pyvguicom-1.4.0-py3-none-any.whl (203.0 kB view details)

Uploaded Python 3

File details

Details for the file pyvguicom-1.4.0.tar.gz.

File metadata

  • Download URL: pyvguicom-1.4.0.tar.gz
  • Upload date:
  • Size: 185.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.10.12

File hashes

Hashes for pyvguicom-1.4.0.tar.gz
Algorithm Hash digest
SHA256 862d5267417f144d305af30917051a07e38bee0308f286eb66b8a51556a2e650
MD5 d99d3257867eaa37b99720b976330240
BLAKE2b-256 8f1fe63e2c6533692963c61a6e74074204cf7e4a44bdd50f7163ede2989257ba

See more details on using hashes here.

File details

Details for the file pyvguicom-1.4.0-py3-none-any.whl.

File metadata

  • Download URL: pyvguicom-1.4.0-py3-none-any.whl
  • Upload date:
  • Size: 203.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.10.12

File hashes

Hashes for pyvguicom-1.4.0-py3-none-any.whl
Algorithm Hash digest
SHA256 32066c68b2be28fd9dab38c470a04683f62ce545bb48260816617c6d33c8234e
MD5 e20f22c3d0ff8fb6c70a993fe470ddd2
BLAKE2b-256 56e442fec861008a6fbe30e24098c0eeb9566463ab6e8267af8b070604c88d68

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