+
+void keytree::initialize(void)
+{
+ int tval = 0;
+
+ _epist->getConfig()->getValue(Config::chainTimeout, tval);
+ _timer = new BTimer(_epist, this);
+
+ if (tval <= 0)
+ tval = 3000; // set default timeout to 3 seconds
+
+ _timer->setTimeout(tval);
+}
+
+void keytree::timeout(void)
+{
+ assert(_timeout_screen != NULL);
+
+ if (_current != _head) {
+ ungrabChildren(_current, _timeout_screen);
+ _current = _head;
+ }
+ _timeout_screen = NULL;
+}