[meld] melddoc: Make label handling a mixin-like helper and use in new diff tab
- From: Kai Willadsen <kaiw src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [meld] melddoc: Make label handling a mixin-like helper and use in new diff tab
- Date: Sun, 1 May 2016 20:45:36 +0000 (UTC)
commit 399bb33ecb7f61369303785f17fa42fd21ea94a2
Author: Kai Willadsen <kai willadsen gmail com>
Date: Thu Nov 5 11:17:13 2015 +1000
melddoc: Make label handling a mixin-like helper and use in new diff tab
meld/melddoc.py | 23 +++++++++++++++--------
meld/newdifftab.py | 4 ++--
2 files changed, 17 insertions(+), 10 deletions(-)
---
diff --git a/meld/melddoc.py b/meld/melddoc.py
index de6fdfd..e9ceccb 100644
--- a/meld/melddoc.py
+++ b/meld/melddoc.py
@@ -54,13 +54,25 @@ def make_custom_editor_command(path, line=0):
STATE_NORMAL, STATE_CLOSING, STATE_SAVING_ERROR, NUM_STATES = range(4)
-class MeldDoc(GObject.GObject):
+class LabeledObjectMixin(GObject.GObject):
+ __gsignals__ = {
+ 'label-changed': (
+ GObject.SignalFlags.RUN_FIRST, None,
+ (GObject.TYPE_STRING, GObject.TYPE_STRING)),
+ }
+
+ label_text = _("untitled")
+ tooltip_text = _("untitled")
+
+ def label_changed(self):
+ self.emit("label-changed", self.label_text, self.tooltip_text)
+
+
+class MeldDoc(LabeledObjectMixin, GObject.GObject):
"""Base class for documents in the meld application.
"""
__gsignals__ = {
- 'label-changed': (GObject.SignalFlags.RUN_FIRST, None,
- (GObject.TYPE_STRING, GObject.TYPE_STRING)),
'file-changed': (GObject.SignalFlags.RUN_FIRST, None,
(GObject.TYPE_STRING,)),
'create-diff': (GObject.SignalFlags.RUN_FIRST, None,
@@ -80,8 +92,6 @@ class MeldDoc(GObject.GObject):
GObject.GObject.__init__(self)
self.scheduler = task.FifoScheduler()
self.num_panes = 0
- self.label_text = _("untitled")
- self.tooltip_text = _("untitled")
self.main_actiongroup = None
self._state = STATE_NORMAL
@@ -184,9 +194,6 @@ class MeldDoc(GObject.GObject):
def on_file_changed(self, filename):
pass
- def label_changed(self):
- self.emit("label-changed", self.label_text, self.tooltip_text)
-
def set_labels(self, lst):
pass
diff --git a/meld/newdifftab.py b/meld/newdifftab.py
index 4f50e18..1a3f47c 100644
--- a/meld/newdifftab.py
+++ b/meld/newdifftab.py
@@ -20,11 +20,11 @@ from gi.repository import GObject
from gi.repository import Gtk
from .ui import gnomeglade
-
+from meld.melddoc import LabeledObjectMixin
from meld.recent import recent_comparisons
-class NewDiffTab(GObject.GObject, gnomeglade.Component):
+class NewDiffTab(LabeledObjectMixin, GObject.GObject, gnomeglade.Component):
__gtype_name__ = "NewDiffTab"
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]