This commit adds an error_dialog funciton to DotWidget which emits an error
signal. DotWindow connects to this error signal and, when emitted, it displays
the error dialog.
| ... | ... |
@@ -1537,7 +1537,8 @@ class DotWidget(Gtk.DrawingArea): |
| 1537 | 1537 |
|
| 1538 | 1538 |
#TODO GTK3: Second argument has to be of type Gdk.EventButton instead of object. |
| 1539 | 1539 |
__gsignals__ = {
|
| 1540 |
- 'clicked' : (GObject.SIGNAL_RUN_LAST, None, (str, object)) |
|
| 1540 |
+ 'clicked' : (GObject.SIGNAL_RUN_LAST, None, (str, object)), |
|
| 1541 |
+ 'error' : (GObject.SIGNAL_RUN_LAST, None, (str,)) |
|
| 1541 | 1542 |
} |
| 1542 | 1543 |
|
| 1543 | 1544 |
filter = 'dot' |
| ... | ... |
@@ -1575,6 +1576,9 @@ class DotWidget(Gtk.DrawingArea): |
| 1575 | 1576 |
self.presstime = None |
| 1576 | 1577 |
self.highlight = None |
| 1577 | 1578 |
|
| 1579 |
+ def error_dialog(self, message): |
|
| 1580 |
+ self.emit('error', message)
|
|
| 1581 |
+ |
|
| 1578 | 1582 |
def set_filter(self, filter): |
| 1579 | 1583 |
self.filter = filter |
| 1580 | 1584 |
|
| ... | ... |
@@ -1973,6 +1977,7 @@ class DotWindow(Gtk.Window): |
| 1973 | 1977 |
window.add(vbox) |
| 1974 | 1978 |
|
| 1975 | 1979 |
self.dotwidget = widget or DotWidget() |
| 1980 |
+ self.dotwidget.connect("error", lambda e, m: self.error_dialog(m))
|
|
| 1976 | 1981 |
|
| 1977 | 1982 |
# Create a UIManager instance |
| 1978 | 1983 |
uimanager = self.uimanager = Gtk.UIManager() |