commit-gnue
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

gnue/designer/src Designer.py base/Instance.py ...


From: Jason Cater
Subject: gnue/designer/src Designer.py base/Instance.py ...
Date: Sun, 22 Dec 2002 23:33:06 -0500

CVSROOT:        /cvsroot/gnue
Module name:    gnue
Changes by:     Jason Cater <address@hidden>    02/12/22 23:33:06

Modified files:
        designer/src   : Designer.py 
        designer/src/base: Instance.py 
        designer/src/forms: Instance.py 
        designer/src/navigator: Instance.py 
        designer/src/reports: FilterSupport.py Instance.py 
        designer/src/schema: Instance.py 
        designer/src/templates/reports: Labels.py MailMerge.py 
                                        SimpleReport.py 

Log message:
        * Improved support for report styles (namespaces) in wizards
        * Misc bug fixes

CVSWeb URLs:
http://savannah.gnu.org/cgi-bin/viewcvs/gnue/gnue/designer/src/Designer.py.diff?tr1=1.59&tr2=1.60&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/gnue/gnue/designer/src/base/Instance.py.diff?tr1=1.79&tr2=1.80&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/gnue/gnue/designer/src/forms/Instance.py.diff?tr1=1.28&tr2=1.29&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/gnue/gnue/designer/src/navigator/Instance.py.diff?tr1=1.10&tr2=1.11&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/gnue/gnue/designer/src/reports/FilterSupport.py.diff?tr1=1.2&tr2=1.3&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/gnue/gnue/designer/src/reports/Instance.py.diff?tr1=1.12&tr2=1.13&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/gnue/gnue/designer/src/schema/Instance.py.diff?tr1=1.18&tr2=1.19&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/gnue/gnue/designer/src/templates/reports/Labels.py.diff?tr1=1.4&tr2=1.5&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/gnue/gnue/designer/src/templates/reports/MailMerge.py.diff?tr1=1.4&tr2=1.5&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/gnue/gnue/designer/src/templates/reports/SimpleReport.py.diff?tr1=1.6&tr2=1.7&r1=text&r2=text

Patches:
Index: gnue/designer/src/Designer.py
diff -c gnue/designer/src/Designer.py:1.59 gnue/designer/src/Designer.py:1.60
*** gnue/designer/src/Designer.py:1.59  Sat Dec 21 19:59:54 2002
--- gnue/designer/src/Designer.py       Sun Dec 22 23:33:05 2002
***************
*** 156,162 ****
      product = templateInformation['Product']
      templateSupport = dyn_import('gnue.designer.%s.TemplateSupport' % product)
  
!     instance = self.newInstance(product)
  
      if not TemplateParser.TemplateParser(instance, instance.rootObject,
            instance, templateInformation).run():
--- 156,167 ----
      product = templateInformation['Product']
      templateSupport = dyn_import('gnue.designer.%s.TemplateSupport' % product)
  
!     try:
!       style = templateInformation['ProductStyle']
!     except:
!       style = None
!     
!     instance = self.newInstance(product, style=style)
  
      if not TemplateParser.TemplateParser(instance, instance.rootObject,
            instance, templateInformation).run():
Index: gnue/designer/src/base/Instance.py
diff -c gnue/designer/src/base/Instance.py:1.79 
gnue/designer/src/base/Instance.py:1.80
*** gnue/designer/src/base/Instance.py:1.79     Sun Dec 22 22:36:23 2002
--- gnue/designer/src/base/Instance.py  Sun Dec 22 23:33:05 2002
***************
*** 63,69 ****
  
    # Called to load an "empty" object.  Create the root object
    # and any initial child objects (if appropriate)
!   def loadEmpty(self):
      return None
  
    # Called in a tree-like fashion for every object
--- 63,69 ----
  
    # Called to load an "empty" object.  Create the root object
    # and any initial child objects (if appropriate)
!   def loadEmpty(self, style=None):
      return None
  
    # Called in a tree-like fashion for every object
***************
*** 95,101 ****
    # then odds are we really need to provide
    # a hook of some sorts.
    #
!   def __init__(self, app, location=None, buffer=None):
      wxFrame.__init__(self, NULL, -1, "")
      EventController.__init__(self)
  
--- 95,101 ----
    # then odds are we really need to provide
    # a hook of some sorts.
    #
!   def __init__(self, app, location=None, buffer=None, style=None):
      wxFrame.__init__(self, NULL, -1, "")
      EventController.__init__(self)
  
***************
*** 139,145 ****
          self.__loadFromBuffer(buffer)
          self.makeDirty()
        else:
!         self.__createEmptyInstance()
  
      else:
  
--- 139,145 ----
          self.__loadFromBuffer(buffer)
          self.makeDirty()
        else:
!         self.__createEmptyInstance(style)
  
      else:
  
***************
*** 152,158 ****
              % location, _("File Not Found"), wxYES_NO|wxICON_QUESTION 
).ShowModal() == wxID_NO:
            sys.exit()
          self.Show(0)
!         self.__createEmptyInstance()
          self._path = location
          self.makeDirty()
  
--- 152,158 ----
              % location, _("File Not Found"), wxYES_NO|wxICON_QUESTION 
).ShowModal() == wxID_NO:
            sys.exit()
          self.Show(0)
!         self.__createEmptyInstance(style)
          self._path = location
          self.makeDirty()
  
***************
*** 374,381 ****
      self.rootObject = self.loadBuffer(fileHandle)
  
  
!   def __createEmptyInstance(self):
!     self.rootObject = self.loadEmpty()
      self.makeClean()
      self._isNew = 1
  
--- 374,381 ----
      self.rootObject = self.loadBuffer(fileHandle)
  
  
!   def __createEmptyInstance(self, style):
!     self.rootObject = self.loadEmpty(style)
      self.makeClean()
      self._isNew = 1
  
Index: gnue/designer/src/forms/Instance.py
diff -c gnue/designer/src/forms/Instance.py:1.28 
gnue/designer/src/forms/Instance.py:1.29
*** gnue/designer/src/forms/Instance.py:1.28    Sun Dec 22 22:36:24 2002
--- gnue/designer/src/forms/Instance.py Sun Dec 22 23:33:06 2002
***************
*** 94,100 ****
      return form
  
  
!   def loadEmpty(self):
      form = GFForm.GFForm()
      options = GFObjects.GFOptions(form)
      form.title = _("Untitled Form")
--- 94,100 ----
      return form
  
  
!   def loadEmpty(self, style=None):
      form = GFForm.GFForm()
      options = GFObjects.GFOptions(form)
      form.title = _("Untitled Form")
Index: gnue/designer/src/navigator/Instance.py
diff -c gnue/designer/src/navigator/Instance.py:1.10 
gnue/designer/src/navigator/Instance.py:1.11
*** gnue/designer/src/navigator/Instance.py:1.10        Fri Dec 20 23:52:32 2002
--- gnue/designer/src/navigator/Instance.py     Sun Dec 22 23:33:06 2002
***************
*** 59,65 ****
      return object
  
  
!   def loadEmpty(self):
      object = GNObjects.GNProcesses()
      object.title = "Untitled Process"
      return object
--- 59,65 ----
      return object
  
  
!   def loadEmpty(self, style=None):
      object = GNObjects.GNProcesses()
      object.title = "Untitled Process"
      return object
Index: gnue/designer/src/reports/FilterSupport.py
diff -c gnue/designer/src/reports/FilterSupport.py:1.2 
gnue/designer/src/reports/FilterSupport.py:1.3
*** gnue/designer/src/reports/FilterSupport.py:1.2      Sat Dec 21 01:30:28 2002
--- gnue/designer/src/reports/FilterSupport.py  Sun Dec 22 23:33:06 2002
***************
*** 36,47 ****
      self.instance = instance
      self.report = report
      self.init()
!     
    def init(self):
      pass
!     
!   def addTools(self): 
      pass
  
    def initAsNew(self):
!     self.report.findChildOfType('GRLayout')._xmlchildnamespace = 
self.NAMESPACE
--- 36,53 ----
      self.instance = instance
      self.report = report
      self.init()
! 
    def init(self):
      pass
! 
!   def addTools(self):
      pass
  
+   def setNamespace(self, namespace):
+     if namespace:
+       self.report.findChildOfType('GRLayout')._xmlchildnamespace = 
self.NAMESPACE
+ 
    def initAsNew(self):
!     self.setNamespace(self.NAMESPACE)
! 
!     
\ No newline at end of file
Index: gnue/designer/src/reports/Instance.py
diff -c gnue/designer/src/reports/Instance.py:1.12 
gnue/designer/src/reports/Instance.py:1.13
*** gnue/designer/src/reports/Instance.py:1.12  Sun Dec 22 22:36:24 2002
--- gnue/designer/src/reports/Instance.py       Sun Dec 22 23:33:06 2002
***************
*** 29,34 ****
--- 29,36 ----
  
  from gnue.designer.reports import properties as reportsProperties
  from gnue.designer.base.Instance import BaseInstance
+ from gnue.common.FileUtils import dyn_import
+ from gnue.common import GDebug
  import wizards
  
  # Tool support...
***************
*** 40,47 ****
  from gnue.designer.base.tools.TriggerEditor import TriggerEditor
  from gnue.designer.base.tools.EventEditor import EventEditor
  
! 
! from gnue.reports import GRReport, GRParser, GRLayout, GRSources, GRParameters
  
  
  class Instance(BaseInstance):
--- 42,48 ----
  from gnue.designer.base.tools.TriggerEditor import TriggerEditor
  from gnue.designer.base.tools.EventEditor import EventEditor
  
! from gnue.reports import GRReport, GRParser, GRLayout, GRSources, 
GRParameters, GRSortOptions
  
  
  class Instance(BaseInstance):
***************
*** 69,99 ****
      report.name = 'report'
  
      # Find which filter is in use... yes, this is ugly
!     filter = report.findChildOfType('GRLayout')._findNamespace()
  
      try:
!       filtersupport = dyn_import('%s.FilterSupport' % filter)
      except ImportError:
        GDebug.printMesg(2,'No filter support for %s; using default')
!       filtersupport = dyn_import('Default.FilterSupport')
  
      self.filter = filtersupport.FilterSupport(self, report)
!     self.incubator = self.filter.INCUBATOR(self)
  
      return report
  
  
!   def loadEmpty(self):
      report = GRReport.GRReport()
      report.title = "Untitled report"
      report.name = 'report'
-     GRSources.GRSources(report)._buildObject()
      GRParameters.GRParameters(report)._buildObject()
      GRLayout.GRLayout(report)._buildObject()
  
!     from Standard.FilterSupport import FilterSupport
  
-     self.filter = FilterSupport(self, report)
      self.incubator = self.filter.INCUBATORCLASS(self)
  
      self.filter.initAsNew()
--- 70,120 ----
      report.name = 'report'
  
      # Find which filter is in use... yes, this is ugly
!     namespace = report.findChildOfType('GRLayout')._findNamespace()
!     filter = namespace.split(':')[-1]
  
      try:
!       filtersupport = dyn_import('gnue.designer.reports.%s.FilterSupport' % 
filter)
!       usingDefault = 0
      except ImportError:
        GDebug.printMesg(2,'No filter support for %s; using default')
!       filtersupport = 
dyn_import('gnue.designer.reports.Default.FilterSupport')
!       usingDefault = 1
  
      self.filter = filtersupport.FilterSupport(self, report)
!     if usingDefault:
!       self.filter.setNamespace(namespace)
! 
!     self.incubator = self.filter.INCUBATORCLASS(self)
  
      return report
  
  
!   def loadEmpty(self, style=None):
      report = GRReport.GRReport()
      report.title = "Untitled report"
      report.name = 'report'
      GRParameters.GRParameters(report)._buildObject()
+     GRSortOptions.GRSortOptions(report)._buildObject()
+     GRSources.GRSources(report)._buildObject()
      GRLayout.GRLayout(report)._buildObject()
  
!     # Find which filter is in use... yes, this is ugly
!     namespace = style or "GNUe:Reports:Standard"
!     filter = (namespace).split(':')[-1]
! 
!     try:
!       filtersupport = dyn_import('gnue.designer.reports.%s.FilterSupport' % 
filter)
!       usingDefault = 0
!     except ImportError:
!       GDebug.printMesg(2,'No filter support for %s; using default')
!       filtersupport = 
dyn_import('gnue.designer.reports.Default.FilterSupport')
!       usingDefault = 1
! 
!     self.filter = filtersupport.FilterSupport(self, report)
!     if usingDefault:
!       self.filter.setNamespace(namespace)
  
      self.incubator = self.filter.INCUBATORCLASS(self)
  
      self.filter.initAsNew()
***************
*** 143,148 ****
                report._sources, report._layout]:
        report._children.pop(report._children.index(o))
        if len(o._children):
!         report._children.append(p)
  
  
--- 164,169 ----
                report._sources, report._layout]:
        report._children.pop(report._children.index(o))
        if len(o._children):
!         report._children.append(o)
  
  
Index: gnue/designer/src/schema/Instance.py
diff -c gnue/designer/src/schema/Instance.py:1.18 
gnue/designer/src/schema/Instance.py:1.19
*** gnue/designer/src/schema/Instance.py:1.18   Fri Dec 20 23:52:32 2002
--- gnue/designer/src/schema/Instance.py        Sun Dec 22 23:33:06 2002
***************
*** 60,66 ****
      return schema
  
  
!   def loadEmpty(self):
      schema = Objects.GSSchema()
      schema.title = "Untitled schema"
      schema.name = 'schema'
--- 60,66 ----
      return schema
  
  
!   def loadEmpty(self, style=None):
      schema = Objects.GSSchema()
      schema.title = "Untitled schema"
      schema.name = 'schema'
Index: gnue/designer/src/templates/reports/Labels.py
diff -c gnue/designer/src/templates/reports/Labels.py:1.4 
gnue/designer/src/templates/reports/Labels.py:1.5
*** gnue/designer/src/templates/reports/Labels.py:1.4   Sun Dec 22 22:36:24 2002
--- gnue/designer/src/templates/reports/Labels.py       Sun Dec 22 23:33:06 2002
***************
*** 174,181 ****
        if field.name in self.variables['fields']:
          fields[field.name] = field
  
-     layout._xmlchildnamespace = 'GNUe:Reports:Labels'
- 
      out_labels = self.AddElement('out:labels', layout, {})
      section = self.AddElement('section', out_labels, {'source': 
datasource.name})
      out_label = self.AddElement('out:label', section, {})
--- 174,179 ----
***************
*** 197,202 ****
--- 195,201 ----
  #
  TemplateInformation = {
      'Product': 'reports',
+     'ProductStyle': 'GNUe:Reports:Labels',
      'BaseClass' : SimpleReportTemplate,
      'Name' : 'Labels wizard',
      'Description' : 'Creates a labels report.',
Index: gnue/designer/src/templates/reports/MailMerge.py
diff -c gnue/designer/src/templates/reports/MailMerge.py:1.4 
gnue/designer/src/templates/reports/MailMerge.py:1.5
*** gnue/designer/src/templates/reports/MailMerge.py:1.4        Sun Dec 22 
22:36:24 2002
--- gnue/designer/src/templates/reports/MailMerge.py    Sun Dec 22 23:33:06 2002
***************
*** 172,179 ****
        if field.name in self.variables['fields']:
          fields[field.name] = field
  
-     layout._xmlchildnamespace = 'GNUe:Reports:MailMerge'
- 
      out_mailmerge = self.AddElement('out:mailmerge', layout, {})
      section = self.AddElement('section', out_mailmerge, {'source': 
datasource.name})
      out_record = self.AddElement('out:record', section, {})
--- 172,177 ----
***************
*** 194,199 ****
--- 192,198 ----
  #
  TemplateInformation = {
      'Product': 'reports',
+     'ProductStyle': 'GNUe:Reports:MailMerge',
      'BaseClass' : SimpleReportTemplate,
      'Name' : 'Mailmerge wizard',
      'Description' : 'Creates a mailmerge report.',
Index: gnue/designer/src/templates/reports/SimpleReport.py
diff -c gnue/designer/src/templates/reports/SimpleReport.py:1.6 
gnue/designer/src/templates/reports/SimpleReport.py:1.7
*** gnue/designer/src/templates/reports/SimpleReport.py:1.6     Sun Dec 22 
22:36:24 2002
--- gnue/designer/src/templates/reports/SimpleReport.py Sun Dec 22 23:33:06 2002
***************
*** 179,187 ****
        if field.name in self.variables['fields']:
          fields[field.name] = field
  
- 
-     layout._xmlchildnamespace = 'GNUe:Reports:SimpleTabulation'
- 
      out_report = self.AddElement('out:report', layout, {})
      out_reportTitle = self.AddElement('out:reportTitle', out_report, {}, 
content=self.variables['title'])
      out_section = self.AddElement('out:section', out_report, {'break':"page"})
--- 179,184 ----
***************
*** 221,226 ****
--- 218,224 ----
  #
  TemplateInformation = {
      'Product': 'reports',
+     'ProductStyle': 'GNUe:Reports:SimpleTabulation',
      'BaseClass' : SimpleReportTemplate,
      'Name' : 'Simple report wizard',
      'Description' : 'Creates a simple single-source report.',



reply via email to

[Prev in Thread] Current Thread [Next in Thread]