##// END OF EJS Templates
add parent to Configurable...
add parent to Configurable this adds the notion of a parent and member config, so the config: c.Foo.Bar.attr = value will only set `Bar.attr = value` for `Bar` instances which are members of `Foo` instances. The mechanism for doing this is ```python f = Foo(config=cfg) f.b = Bar(parent=f) ``` This Instance config has higher priority than plain class config for Bar, but still lower priority than direct keyword arg trait assignment. The main implication this has is to change the standard creation of descendants: ```python self.bar = Bar(config=self.config) ``` into a direct parent expression ```python self.bar = Bar(parent=self) ``` This also means that most Configurables will actually have a handle on their parent object.

File last commit:

r9722:7ec1888e
r11062:7f44a560
Show More
qt.py
23 lines | 732 B | text/x-python | PythonLexer
Evan Patterson
Paved the way for PySide support....
r3304 """ A Qt API selector that can be used to switch between PyQt and PySide.
MinRK
reorder qt support in kernel...
r4191
This uses the ETS 4.0 selection pattern of:
PySide first, PyQt with API v2. second.
Do not use this if you need PyQt with the old QString/QVariant API.
Evan Patterson
Paved the way for PySide support....
r3304 """
import os
epatters
Clean up in Qt API switcher.
r3306
Chris Beaumont
Refactor qt import logic. Fixes #2955
r9722 from IPython.external.qt_loaders import (load_qt, QT_API_PYSIDE,
QT_API_PYQT)
Evan Patterson
Paved the way for PySide support....
r3304
Chris Beaumont
Refactor qt import logic. Fixes #2955
r9722 QT_API = os.environ.get('QT_API', None)
if QT_API not in [QT_API_PYSIDE, QT_API_PYQT, None]:
raise RuntimeError("Invalid Qt API %r, valid values are: %r, %r" %
(QT_API, QT_API_PYSIDE, QT_API_PYQT))
epatters
Smarter Qt binding selection when environment variable is not specified.
r3927 if QT_API is None:
Chris Beaumont
Refactor qt import logic. Fixes #2955
r9722 api_opts = [QT_API_PYSIDE, QT_API_PYQT]
epatters
Clean up in Qt API switcher.
r3306 else:
Chris Beaumont
Refactor qt import logic. Fixes #2955
r9722 api_opts = [QT_API]
QtCore, QtGui, QtSvg, QT_API = load_qt(api_opts)