Web   ·   Wiki   ·   Activities   ·   Blog   ·   Lists   ·   Chat   ·   Meeting   ·   Bugs   ·   Git   ·   Translate   ·   Archive   ·   People   ·   Donate
summaryrefslogtreecommitdiffstats
path: root/services/clipboard/typeregistry.py
diff options
context:
space:
mode:
Diffstat (limited to 'services/clipboard/typeregistry.py')
-rw-r--r--services/clipboard/typeregistry.py47
1 files changed, 46 insertions, 1 deletions
diff --git a/services/clipboard/typeregistry.py b/services/clipboard/typeregistry.py
index 0a1aaa2..ea37dba 100644
--- a/services/clipboard/typeregistry.py
+++ b/services/clipboard/typeregistry.py
@@ -13,6 +13,9 @@ class FileType:
def get_preview(self):
raise NotImplementedError
+
+ def get_activity(self):
+ raise NotImplementedError
def matches_mime_type(cls, mime_type):
raise NotImplementedError
@@ -38,6 +41,9 @@ class TextFileType(FileType):
return text[0:49] + "..."
return ''
+
+ def get_activity(self):
+ return ''
def matches_mime_type(cls, mime_type):
return mime_type in cls._types
@@ -55,6 +61,9 @@ class ImageFileType(FileType):
def get_preview(self):
return ''
+
+ def get_activity(self):
+ return ''
def matches_mime_type(cls, mime_type):
return mime_type in cls._types
@@ -78,7 +87,10 @@ class UriFileType(FileType):
return title
return ''
-
+
+ def get_activity(self):
+ return ''
+
def matches_mime_type(cls, mime_type):
return mime_type in cls._types
matches_mime_type = classmethod(matches_mime_type)
@@ -95,6 +107,9 @@ class PdfFileType(FileType):
def get_preview(self):
return ''
+
+ def get_activity(self):
+ return 'org.laptop.sugar.Xbook'
def matches_mime_type(cls, mime_type):
return mime_type in cls._types
@@ -112,6 +127,9 @@ class MsWordFileType(FileType):
def get_preview(self):
return ''
+
+ def get_activity(self):
+ return 'org.laptop.AbiWordActivity'
def matches_mime_type(cls, mime_type):
return mime_type in cls._types
@@ -129,6 +147,29 @@ class RtfFileType(FileType):
def get_preview(self):
return ''
+
+ def get_activity(self):
+ return 'org.laptop.AbiWordActivity'
+
+ def matches_mime_type(cls, mime_type):
+ return mime_type in cls._types
+ matches_mime_type = classmethod(matches_mime_type)
+
+class OOTextFileType(FileType):
+
+ _types = set(['application/vnd.oasis.opendocument.text'])
+
+ def get_name(self):
+ return _('OpenOffice text file')
+
+ def get_icon(self):
+ return 'activity-abiword'
+
+ def get_preview(self):
+ return ''
+
+ def get_activity(self):
+ return 'org.laptop.AbiWordActivity'
def matches_mime_type(cls, mime_type):
return mime_type in cls._types
@@ -143,6 +184,9 @@ class UnknownFileType(FileType):
def get_preview(self):
return ''
+
+ def get_activity(self):
+ return ''
def matches_mime_type(cls, mime_type):
return true
@@ -154,6 +198,7 @@ class TypeRegistry:
self._types.append(PdfFileType)
self._types.append(MsWordFileType)
self._types.append(RtfFileType)
+ self._types.append(OOTextFileType)
self._types.append(UriFileType)
self._types.append(ImageFileType)
self._types.append(TextFileType)