gtk-stream 0.11__py3-none-any.whl → 0.11.2__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
gtk_stream/_version.py CHANGED
@@ -12,5 +12,5 @@ __version__: str
12
12
  __version_tuple__: VERSION_TUPLE
13
13
  version_tuple: VERSION_TUPLE
14
14
 
15
- __version__ = version = '0.11'
16
- __version_tuple__ = version_tuple = (0, 11)
15
+ __version__ = version = '0.11.2'
16
+ __version_tuple__ = version_tuple = (0, 11, 2)
gtk_stream/application.py CHANGED
@@ -95,6 +95,7 @@ class GtkStreamApp(Gtk.Application):
95
95
  def newWindow(self, document, id, **attrs):
96
96
  win = Gtk.Window(application=self)
97
97
  for (attr_name, attr_val) in attrs.items():
98
+ self.logger.debug("Setting attr '%s' on window", attr_name)
98
99
  set_parse_prop(self, win, attr_name, attr_val)
99
100
  self.namedWindows[id] = win
100
101
  win.set_child(document.render())
@@ -18,10 +18,11 @@ import io
18
18
  import xml.sax as sax
19
19
  import sys
20
20
  import os
21
+ import argparse
21
22
 
22
23
  from .parser import GtkStreamXMLHandler
23
24
  from .common import Logger, LogLevel
24
- from . import GLib
25
+ from . import GLib, Gtk, Gdk
25
26
 
26
27
  logLevel = LogLevel.__dict__.get(os.environ.get('GTK_STREAM_LOGLEVEL', 'WARN'), LogLevel.WARN)
27
28
 
@@ -34,13 +35,29 @@ class GtkStreamErrorHandler(sax.handler.ErrorHandler):
34
35
  raise exc
35
36
 
36
37
  def main():
37
- handler = GtkStreamXMLHandler(logger)
38
- errHandler = GtkStreamErrorHandler()
39
- parser = sax.make_parser()
40
- parser.setContentHandler(handler)
41
- parser.setErrorHandler(errHandler)
42
- try:
43
- parser.parse(io.FileIO(0, 'r', closefd=False))
44
- except Exception as e:
45
- logger.error("Done with exception : %s", e)
46
- handler.quit_application()
38
+ parser = argparse.ArgumentParser(
39
+ prog='gtk-stream',
40
+ description='A stream-based GUI tool',
41
+ add_help=False
42
+ )
43
+ parser.add_argument('--list-icons', action='store_true')
44
+ parser.add_argument('-h', '--help', action='store_true')
45
+ args = parser.parse_args()
46
+
47
+ if args.help:
48
+ parser.print_help()
49
+ elif args.list_icons:
50
+ theme = Gtk.IconTheme.get_for_display(Gdk.Display.get_default())
51
+ for name in theme.get_icon_names():
52
+ print(name)
53
+ else:
54
+ handler = GtkStreamXMLHandler(logger)
55
+ errHandler = GtkStreamErrorHandler()
56
+ parser = sax.make_parser()
57
+ parser.setContentHandler(handler)
58
+ parser.setErrorHandler(errHandler)
59
+ try:
60
+ parser.parse(io.FileIO(0, 'r', closefd=False))
61
+ except Exception as e:
62
+ logger.error("Done with exception : %s", e)
63
+ handler.quit_application()
@@ -20,16 +20,15 @@ from .. import Document
20
20
 
21
21
  class Picture(Document):
22
22
  __g_class__ = Gtk.Picture
23
- def __init__(self, app, src, **kwargs):
23
+ def __init__(self, app, **kwargs):
24
24
  super().__init__(app, **kwargs)
25
- self.src = src
26
25
  def render_raw(self):
27
- return Gtk.Picture.new_for_filename(self.src)
26
+ return Gtk.Picture()
28
27
 
29
28
  class Icon(Document):
30
29
  __g_class__ = Gtk.Image
31
- def __init__(self, app, src, **kwargs):
30
+ def __init__(self, app, **kwargs):
32
31
  super().__init__(app, **kwargs)
33
- self.src = src
34
32
  def render_raw(self):
35
- return Gtk.Image.new_from_file(self.src)
33
+ return Gtk.Image()
34
+
gtk_stream/properties.py CHANGED
@@ -16,7 +16,7 @@
16
16
 
17
17
  import sys
18
18
 
19
- from . import Gtk
19
+ from . import Gtk, Gio
20
20
 
21
21
  def _const(x):
22
22
  return lambda _: x
@@ -51,7 +51,11 @@ def _parse_css_classes_property(val):
51
51
  return _const(val.split())
52
52
  def _parse_widget_property(val):
53
53
  return lambda app: app.namedWidgets[val]
54
-
54
+ def _parse_window_property(val):
55
+ return lambda app: app.namedWindows[val]
56
+ def _parse_gfile_property(val):
57
+ return _const(Gio.File.new_for_path(val))
58
+
55
59
  _PARSE_TYPE_PROPERTY = {
56
60
  'GStrv' : _parse_css_classes_property,
57
61
  'GtkOrientation' : _parse_orientation_property,
@@ -61,8 +65,10 @@ _PARSE_TYPE_PROPERTY = {
61
65
  'gboolean' : _parse_boolean_property,
62
66
  'GtkStringFilterMatchMode' : _parse_searchMode_property,
63
67
  'GtkWidget' : _parse_widget_property,
68
+ 'GtkWindow' : _parse_window_property,
64
69
  'GtkAdjustment' : _parse_adjustment_property,
65
70
  'gchararray' : _const,
71
+ 'GFile' : _parse_gfile_property,
66
72
  }
67
73
 
68
74
  def parse_property(prop_type, val):
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: gtk-stream
3
- Version: 0.11
3
+ Version: 0.11.2
4
4
  Summary: A simple stream-oriented GUI protocol
5
5
  Author-email: Marc Coiffier <marc.coiffier@univ-grenoble-alpes.fr>
6
6
  Project-URL: Homepage, https://coiffier.net/projects/gtk-stream/
@@ -1,10 +1,10 @@
1
1
  gtk_stream/__init__.py,sha256=y6JLknVFexWrSo_Zl7-TXrPR6EQ5XVMeFO1bUzLN9Lg,98
2
- gtk_stream/_version.py,sha256=Q2GWjTMIRsleycpIehR0fJZ1os_SNIR1qmR8a9sL4sU,408
3
- gtk_stream/application.py,sha256=s-f6B260CdRfrktnC9lj5mbC1PdTHTIpJ6M6J_xFKWI,4921
4
- gtk_stream/command_line.py,sha256=Ej4mmPiuYjr5-1JrvjGK0BDitKUCfVEI9uHp1p_FAr4,1520
2
+ gtk_stream/_version.py,sha256=v52WNNFq-_uq9OSfK9O7vLpi66zlufcyohjNPzWbpdk,413
3
+ gtk_stream/application.py,sha256=uFquTXCV0fbGlSURBmjrg9BK3Enf9N0_WKX6Lv-5Fko,4993
4
+ gtk_stream/command_line.py,sha256=NdfJ1WTG-NmbW_CGaLCuiEK2SB8jhV-7GVsOW6e-ooI,2104
5
5
  gtk_stream/common.py,sha256=xdscxYgBg_Ux6iyk26gB-AMSgoUIqlZUPgso5YS_gKE,2106
6
6
  gtk_stream/parser.py,sha256=LOCGoTT_L5Qf29YJ2wFfTYLHtH0al-QjpFWf9HEHYxU,6561
7
- gtk_stream/properties.py,sha256=2cLsFGDMhlFAUQV7eewN_sexmv0DOxfOXU8EYHRzqjY,2989
7
+ gtk_stream/properties.py,sha256=wrKtpyN76BEdm394wBl2A5ssT7Slov-RMf72aREuryk,3255
8
8
  gtk_stream/documents/__init__.py,sha256=T9mIonSi9DWrpXQzbjq0s0TPU0hB7HylfhMA20OfWIg,831
9
9
  gtk_stream/documents/classes/Box.py,sha256=d01o2-JQ3-k0VjvvY8E7mly-u_f1v1NqYz1IDjHZLUo,1381
10
10
  gtk_stream/documents/classes/Button.py,sha256=21bVI7DUWmiusboxdsimTgcqKtLqzQydhS9ifIt4R64,1512
@@ -16,7 +16,7 @@ gtk_stream/documents/classes/Frame.py,sha256=zAZvsT-YTZMijsgk7p0YVf6siAmFoCCSXou
16
16
  gtk_stream/documents/classes/Grid.py,sha256=jDJ9U1GJZ45hi1VvPsCwFILN7CwEkgjqYqhTzMdtX9o,1249
17
17
  gtk_stream/documents/classes/Label.py,sha256=bBNBTvGs6fM8uLf4EDb2Ro8FmCeS27cnU1Ao-44nRYs,1023
18
18
  gtk_stream/documents/classes/Paned.py,sha256=q1goKJMWBg1d3hS0eanPBxzBqLB-Pz5hUnH9N-RXXh8,1392
19
- gtk_stream/documents/classes/Picture.py,sha256=QCLQNuQxfXmaasd-bPgXxJZYyc1e1DQkLdxCZ39gvlI,1251
19
+ gtk_stream/documents/classes/Picture.py,sha256=p84N1ntCHu47O84m48zC8uKFgso3-38yXpPlAjr4IKU,1153
20
20
  gtk_stream/documents/classes/ProgressBar.py,sha256=NPJtP3qaKiZUEAYEHZk4FEoWSFn2KVorI2SVb8cDnW0,966
21
21
  gtk_stream/documents/classes/Scale.py,sha256=6rW6sBCdpPaqgDEGUPZi5UR8CT3bPmaZQqXXhnl-oaw,1124
22
22
  gtk_stream/documents/classes/ScrolledWindow.py,sha256=WaTPgz6GBC-hjH83SQT2OGUdCapHAgO3xEmSMJZ8q70,1041
@@ -24,8 +24,8 @@ gtk_stream/documents/classes/Separator.py,sha256=uw_EgAKs_6pNA8nrOLzruIlJfk4uaog
24
24
  gtk_stream/documents/classes/Stack.py,sha256=YA6NDzZL2u4Ko8GXtx8Or-jEWGMCEw2cC1HNkAMRw-8,1030
25
25
  gtk_stream/documents/classes/Switch.py,sha256=jQVuxqS9Pmpp1ymB_dbJPxasJNpm4e35ry0JYPHdAsk,1275
26
26
  gtk_stream/documents/classes/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
27
- gtk_stream-0.11.dist-info/METADATA,sha256=cieUbyM41PMOpUG3gkkpnDqFr72ApD8bkSywbw1y-BM,805
28
- gtk_stream-0.11.dist-info/WHEEL,sha256=PZUExdf71Ui_so67QXpySuHtCi3-J3wvF4ORK6k_S8U,91
29
- gtk_stream-0.11.dist-info/entry_points.txt,sha256=PmhKTb4MMQM6dN2HJcoDSMI8L0lZIFIlFn-BgdfPDpo,60
30
- gtk_stream-0.11.dist-info/top_level.txt,sha256=vE9zfHGe9Ke7FSe0wBK2WYJI-BpcQNu6xDC3Cu5O8rQ,11
31
- gtk_stream-0.11.dist-info/RECORD,,
27
+ gtk_stream-0.11.2.dist-info/METADATA,sha256=Naho27fPS6mB7yEnEr09ECYKoNXL9G91tzSfxtTLHUo,807
28
+ gtk_stream-0.11.2.dist-info/WHEEL,sha256=A3WOREP4zgxI0fKrHUG8DC8013e3dK3n7a6HDbcEIwE,91
29
+ gtk_stream-0.11.2.dist-info/entry_points.txt,sha256=PmhKTb4MMQM6dN2HJcoDSMI8L0lZIFIlFn-BgdfPDpo,60
30
+ gtk_stream-0.11.2.dist-info/top_level.txt,sha256=vE9zfHGe9Ke7FSe0wBK2WYJI-BpcQNu6xDC3Cu5O8rQ,11
31
+ gtk_stream-0.11.2.dist-info/RECORD,,
@@ -1,5 +1,5 @@
1
1
  Wheel-Version: 1.0
2
- Generator: setuptools (75.6.0)
2
+ Generator: setuptools (75.7.0)
3
3
  Root-Is-Purelib: true
4
4
  Tag: py3-none-any
5
5