From f072066b3a73ab2bb30f1251ceb7059750bc8430 Mon Sep 17 00:00:00 2001 From: Helmut Merz Date: Thu, 10 Nov 2011 08:17:12 +0100 Subject: [PATCH] work in progress: configurable reports - basic interfaces and classes, example report (work_report) --- browser/common.py | 21 --------------------- expert/README.txt | 6 +++--- expert/browser/configure.zcml | 2 +- expert/configure.zcml | 5 +++-- organize/work/README.txt | 10 ++++++++++ organize/work/configure.zcml | 13 +++++++++++++ 6 files changed, 30 insertions(+), 27 deletions(-) diff --git a/browser/common.py b/browser/common.py index ad541e7..762fba1 100644 --- a/browser/common.py +++ b/browser/common.py @@ -829,27 +829,6 @@ class SimpleTerms(object): return (token, self.terms[token]) -class AdapterTerms(SimpleTerms): - """ Allows the selection of a named adapter from a list of tuples - (name, adapter). - - The adapter class may have a 'label' attribute for display. - The translation domain may be overridden by subclasses. - """ - - translate = _ - - def getTerm(self, value): - token, adapter = value - adapter = removeSecurityProxy(adapter) - label = getattr(adapter.__class__, 'label', token) - return SimpleTerm(token, token, self.translate(label)) - - def getValue(self, token): - # just store the name of the adapter - return (token, token) - - class LoopsTerms(object): """ Provide the ITerms interface, e.g. for usage in selection lists. diff --git a/expert/README.txt b/expert/README.txt index 613e37b..0404b89 100644 --- a/expert/README.txt +++ b/expert/README.txt @@ -227,15 +227,15 @@ Reports >>> report = Report(None) - >>> from loops.expert.report import DefaultConceptReportInstance + >>> from loops.expert.report import IReportInstance, DefaultConceptReportInstance >>> component.provideAdapter(DefaultConceptReportInstance, + ... provides=IReportInstance, ... name='default_concept_report') >>> from loops.expert.report import ReportTypeSourceList >>> source = ReportTypeSourceList(report) >>> list(source) - [(u'default_concept_report', - )] + [(u'default_concept_report', u'Default Concept Report')] Fin de partie diff --git a/expert/browser/configure.zcml b/expert/browser/configure.zcml index a1b4491..2014a46 100644 --- a/expert/browser/configure.zcml +++ b/expert/browser/configure.zcml @@ -57,7 +57,7 @@ diff --git a/expert/configure.zcml b/expert/configure.zcml index b0ec33b..03543ad 100644 --- a/expert/configure.zcml +++ b/expert/configure.zcml @@ -22,13 +22,14 @@ provides="loops.expert.report.IReport" trusted="True" /> + interface="loops.expert.report.IReportSchema" /> + set_schema="loops.expert.report.IReportSchema" /> ] +Work Reports +============ + + >>> from loops.organize.work.report import WorkReportInstance + >>> from loops.expert.report import IReportInstance + >>> component.provideAdapter(WorkReportInstance, + ... provides=IReportInstance, + ... name='work_report') + + Fin de partie ============= diff --git a/organize/work/configure.zcml b/organize/work/configure.zcml index b48b04c..ccd434f 100644 --- a/organize/work/configure.zcml +++ b/organize/work/configure.zcml @@ -73,6 +73,19 @@ class="loops.organize.work.browser.WorkItemInfo" permission="zope.View" /> + + + + + + + +