annotate getan/walker.py @ 568:e7b36e596751 tip

Last week's year is not necessarily today's year
author Tom Gottfried <tom@intevation.de>
date Mon, 03 Jan 2022 11:37:31 +0100
parents 7e27d2145007
children
rev   line source
225
f958ce12ba5a Implement an own ListWalker class
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
1 # -*- coding: utf-8 -*-
f958ce12ba5a Implement an own ListWalker class
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
2 #
f958ce12ba5a Implement an own ListWalker class
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
3 # (c) 2013 by Björn Ricks <bjoern.ricks@intevation.de>
f958ce12ba5a Implement an own ListWalker class
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
4 #
f958ce12ba5a Implement an own ListWalker class
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
5 # This is Free Software licensed under the terms of GPLv3 or later.
f958ce12ba5a Implement an own ListWalker class
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
6 # For details see LICENSE coming with the source of 'getan'.
f958ce12ba5a Implement an own ListWalker class
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
7 #
f958ce12ba5a Implement an own ListWalker class
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
8 import logging
f958ce12ba5a Implement an own ListWalker class
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
9
f958ce12ba5a Implement an own ListWalker class
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
10 import urwid
f958ce12ba5a Implement an own ListWalker class
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
11
f958ce12ba5a Implement an own ListWalker class
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
12
f958ce12ba5a Implement an own ListWalker class
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
13 logger = logging.getLogger(__name__)
f958ce12ba5a Implement an own ListWalker class
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
14
410
7e27d2145007 Code-cleanup: improves style.
Bernhard Reiter <bernhard@intevation.de>
parents: 237
diff changeset
15
225
f958ce12ba5a Implement an own ListWalker class
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
16 class ListWalker(urwid.SimpleListWalker):
f958ce12ba5a Implement an own ListWalker class
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
17
f958ce12ba5a Implement an own ListWalker class
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
18 def __init__(self, content, widget=None):
f958ce12ba5a Implement an own ListWalker class
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
19 super(ListWalker, self).__init__(content)
f958ce12ba5a Implement an own ListWalker class
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
20 self.widget = widget
f958ce12ba5a Implement an own ListWalker class
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
21 self.position = None
f958ce12ba5a Implement an own ListWalker class
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
22
f958ce12ba5a Implement an own ListWalker class
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
23 def set_focus(self, position):
237
13692255bc71 Fix crash when all entries are moved from entry list
Björn Ricks <bjoern.ricks@intevation.de>
parents: 230
diff changeset
24 if position is None:
13692255bc71 Fix crash when all entries are moved from entry list
Björn Ricks <bjoern.ricks@intevation.de>
parents: 230
diff changeset
25 return
13692255bc71 Fix crash when all entries are moved from entry list
Björn Ricks <bjoern.ricks@intevation.de>
parents: 230
diff changeset
26
225
f958ce12ba5a Implement an own ListWalker class
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
27 super(ListWalker, self).set_focus(position)
f958ce12ba5a Implement an own ListWalker class
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
28 if self.widget and self.position != position:
f958ce12ba5a Implement an own ListWalker class
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
29 self.position = position
f958ce12ba5a Implement an own ListWalker class
Björn Ricks <bjoern.ricks@intevation.de>
parents:
diff changeset
30 self.widget.content_focus_changed()
This site is hosted by Intevation GmbH (Datenschutzerklärung und Impressum | Privacy Policy and Imprint)