/mandos/release

To get this branch, use:
bzr branch http://bzr.recompile.se/loggerhead/mandos/release

« back to all changes in this revision

Viewing changes to mandos-monitor

  • Committer: Teddy Hogeborn
  • Date: 2024-11-22 20:30:34 UTC
  • mto: This revision was merged to the branch mainline in revision 412.
  • Revision ID: teddy@recompile.se-20241122203034-92q7483wxv29tqev
mandos-monitor: avoid deprecation warnings from urwid

The urwid.FlowWidget class is deprecated.  Replace it with inheriting
from urwid.Widget, and setting the appropriate class attribute.

* mandos-monitor: Replace any mentions of urwid.FlowWidget with
  urwid.Widget.
  (MandosClientWidget): Inherit from "urwid.Widget" instead of
  "urwid.FlowWidget".  Also, move MandosClientPropertyCache to first
  in inheritance list so that its __init__ method can absorb the
  "proxy_object" and "properties" keyword arguments.
  (MandosClientWidget._sizing): New class attribute; set to
  "frozenset(["flow"])".

(Thanks to an anonymous contributor for reporting this.)

Show diffs side-by-side

added added

removed removed

Lines of Context:
128
128
        self.property_changed_match.remove()
129
129
 
130
130
 
131
 
class MandosClientWidget(urwid.FlowWidget, MandosClientPropertyCache):
 
131
class MandosClientWidget(MandosClientPropertyCache, urwid.Widget):
132
132
    """A Mandos Client which is visible on the screen.
133
133
    """
134
134
 
 
135
    _sizing = frozenset(["flow"])
 
136
 
135
137
    def __init__(self, server_proxy_object=None, update_hook=None,
136
138
                 delete_hook=None, **kwargs):
137
139
        # Called on update
226
228
 
227
229
    def selectable(self):
228
230
        """Make this a "selectable" widget.
229
 
        This overrides the method from urwid.FlowWidget."""
 
231
        This overrides the method from urwid.Widget."""
230
232
        return True
231
233
 
232
234
    def rows(self, maxcolrow, focus=False):
233
235
        """How many rows this widget will occupy might depend on
234
236
        whether we have focus or not.
235
 
        This overrides the method from urwid.FlowWidget"""
 
237
        This overrides the method from urwid.Widget"""
236
238
        return self.current_widget(focus).rows(maxcolrow, focus=focus)
237
239
 
238
240
    def current_widget(self, focus=False):
330
332
 
331
333
    def render(self, maxcolrow, focus=False):
332
334
        """Render differently if we have focus.
333
 
        This overrides the method from urwid.FlowWidget"""
 
335
        This overrides the method from urwid.Widget"""
334
336
        return self.current_widget(focus).render(maxcolrow,
335
337
                                                 focus=focus)
336
338
 
337
339
    def keypress(self, maxcolrow, key):
338
340
        """Handle keys.
339
 
        This overrides the method from urwid.FlowWidget"""
 
341
        This overrides the method from urwid.Widget"""
340
342
        if key == "+":
341
343
            self.proxy.Set(client_interface, "Enabled",
342
344
                           dbus.Boolean(True), ignore_reply=True,