[Erp5-report] r23188 - /erp5/trunk/utils/oood/mimemapper.py
nobody at svn.erp5.org
nobody at svn.erp5.org
Wed Aug 27 13:31:45 CEST 2008
Author: kazuhiko
Date: Wed Aug 27 13:31:37 2008
New Revision: 23188
URL: http://svn.erp5.org?rev=23188&view=rev
Log:
* include the original format in getAllowedTo() results.
* sort the format list somehow similar to OOo's save/export dialog.
Modified:
erp5/trunk/utils/oood/mimemapper.py
Modified: erp5/trunk/utils/oood/mimemapper.py
URL: http://svn.erp5.org/erp5/trunk/utils/oood/mimemapper.py?rev=23188&r1=23187&r2=23188&view=diff
==============================================================================
--- erp5/trunk/utils/oood/mimemapper.py (original)
+++ erp5/trunk/utils/oood/mimemapper.py Wed Aug 27 13:31:37 2008
@@ -212,6 +212,23 @@
return x
return None
+ def sort_index(flags, extension):
+ num = 0
+ flag_list = flags.split(' ')
+ if 'OWN' not in flag_list:
+ num += 10000
+ if 'ALIEN' in flag_list:
+ num += 1000
+ if '3RDPARTYFILTER' in flag_list:
+ num += 100
+ elif 'SUPPORTSSELECTION' in flag_list:
+ num += 200
+ if 'PREFERRED' not in flag_list:
+ num += 10
+ if 'TEMPLATEPATH' in flag_list:
+ num += 1
+ return '%05.f.%s' % (num, extension)
+
type_list = []
for x in type_file_list:
type_list.extend(
@@ -294,7 +311,8 @@
'document_type':document_type,
'extension':extension,
'mime_type':media_type,
- 'label':ui_name
+ 'label':ui_name,
+ 'sort_index':sort_index(flags, extension),
}
self.export_filter_by_extension_dict = {}
@@ -305,7 +323,9 @@
for document_type in self.document_type_list:
self.document_type_dict[document_type] = \
[self.extension_by_export_filter_dict[k] for k, v in \
- self.filter_property_dict.items() if v['document_type'] == document_type]
+ sorted(self.filter_property_dict.items(),
+ lambda a,b:cmp(a[1]['sort_index'], b[1]['sort_index']))
+ if v['document_type'] == document_type]
def setFilterInfo(self):
# specify more properties for several filters
@@ -368,8 +388,7 @@
return []
return [(ext,
self.getTypePropertyDict(extension=ext)['label']) \
- for ext in self.document_type_dict[document_type] \
- if ext != extension]
+ for ext in self.document_type_dict[document_type]]
def _mimeToType(self, mimetype):
"""
More information about the Erp5-report
mailing list