[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Papo-hackers] Re: Fallas al actualizar la nueva version de cimarron con
From: |
maram |
Subject: |
[Papo-hackers] Re: Fallas al actualizar la nueva version de cimarron con Pantalla de ABM |
Date: |
Mon, 13 Dec 2004 17:41:01 -0300 |
Continuando con el cambio de version de cimarron a la de cvs, no puedo
hacer andar las pantallas que tenia funcionando...
On Wed, 8 Dec 2004 10:14:26 -0300, maram <address@hidden> wrote:
> 041207-1035
>
> Al tratar de actualizar la version de cimarron recientemente subida a
> cvs, me surgen los siguientes errores, respecto a la version sobre la
> que veniamos trabajando.
>
> esquema:
> 1) mainRecep.py se encarga de lanzar la aplicacion y mostrar un window
> con un boton.
>
> 2) la accion de dicho boton se enlaza con ReceptionABM, que es un
> ConsistencyController que maneja el modelo Reception.
>
> 3) ReceptionABM, coordina objetos relacionados, entre ellos
> ReceptionData, quien en definitiva muestra los datos como fecha,
> nombre, etc... dentro de una pagina del notebook que posee
> ReceptionABM.
>
Reescribi un poco los scripts, copiandolos al pie de este mail.
al correr mainRecep.py obtengo el siguiente error al tratar de agragar
ReceptionData
a una pagina del notebook que contiene ReceptionABM.
... File "mainRecep.py", line 55, in reception
... w= ReceptionABM (
... File "/home/marceloa/src/agro-new/MyControllers/ReceptionABM.py", line 34,
in __init__
... self.buildView ()
... File "/home/marceloa/src/agro-new/MyControllers/ReceptionABM.py", line 42,
in buildView
... label=u"Datos de Recepcion"
... File "/home/marceloa/src/cimarron/src/Controllers/ConsistencyController.py
", line 50, in addChild
... self.tabbook.appendPage (child, label)
... File "/home/marceloa/src/cimarron/src/Generic/Notebook.py", line 37, in ap
pendPage
... return self.insertPage(-1, child, label, menu)
... File "/home/marceloa/src/cimarron/src/Generic/Notebook.py", line 67, in in
sertPage
... raise NotebookError, _("Unable to insert page")
... NotebookError: No pude agregar la página:
... ... Traceback (most recent call last):
... ... File "/home/marceloa/src/cimarron/src/Generic/Notebook.py", line 63, i
n insertPage
... ... self._doInsertPage(pos, child, label, menu)
... ... File "/home/marceloa/src/cimarron/src/Gtk2/Gtk2Notebook.py", line 43,
in _doInsertPage
... ... self._obj.insert_page_menu(child._obj, label, menu, pos)
... ... AttributeError: 'ReceptionData' object has no attribute '_obj'
ReceptionABM es un ConsistencyController, ReceptionData es un
ViewController que se carga en una pagina del ReceptionABM.
Esta bien que ReceptionData sea del tipo ViewController?
===============================================
copia de los scripts utilizados (Resumidos, tal vez el numero de linea
en los errores no coincida.... )
un poco largo... pero no hay otra... o prefieren que los adjunte?
==== script mainRecep.py ====
#! /usr/bin/python2.3
import cimarron,sys
from MyControllers.ReceptionABM import ReceptionABM
def main ():
eng=None
if len(sys.argv) > 1:
eng = sys.argv[1]
#cimarron.setEngine(eng)
ui = cimarron.getEngine()
app = ui.Application()
win = ui.Window(parent=app,
title=u'Laboratorio Agro-Test',
sizeRequest=(630,350)
)
tabbook= ui.Notebook (parent=win,borderWidth=5)
# Pagina Inicial
page= ui.VBox (spacing=10,borderWidth=10,homogeneous=False)
ui.Button (
parent= page,
label=u'Recepciones',
action=reception
)
tabbook.appendPage(page, u'Principal')
win.pushStatus('Listo.')
win.show ()
app.run ()
def reception(self):
w= ReceptionABM (
windowTitle=u"Reception"
)
w.show ()
if __name__=='__main__':
main ()
==== script ReceptionABM.py ====
#! /usr/bin/python2.3
# -*- python -*- coding: ISO-8859-1 -*-
from Controllers.ConsistencyController import ConsistencyController
from MyControllers.ReceptionData import ReceptionData
class ReceptionABM (ConsistencyController):
__obligs= {'_model': lambda: None,
'modelClass':lambda:'Reception',
'sizeRequest':lambda:(640,400),
}
def __init__ (self, *args, **kwargs):
self._processArgs(ReceptionABM, kwargs)
self.buildView ()
def buildView (self):
super (ReceptionABM, self).buildView ()
self.dataPage= ReceptionData (
)
self.addChild (self.dataPage,
label=u"Datos de Recepcion"
)
==== script ReceptionData.py ====
from SIGALv1.Reception import Reception
from Controllers.ViewController import ViewController
import cimarron
ui= cimarron.getEngine ()
class ReceptionData (ViewController):
__obligs= {'modelClass': lambda : 'Reception'}
def __init__ (self, **kwargs):
self._processArgs (ReceptionData, kwargs)
self.buildView ()
def buildView (self):
self.view=ui.VBox (spacing=5,borderWidth=2)
frame=ui.Frame(parent=self.view)
boxNom= ui.HBox (
parent= frame,
spacing=3,
homogeneous=False
)
boxDate=ui.VBox(parent=boxNom,spacing=3)
lb=ui.Label(parent=boxDate,
label='Fecha Recepcion',align=(0,1)
)
newButton= ui.Button (parent=boxDate,
label=u'Cargar Nue_va Recepcion'
)
==== fin de scripts ================================
--
Marcelo Ametller
----------------------------------------------------------------------------------------------
Maram Sistemas - Debian Sarge - Linux User: 354777
www.maramsis.com.ar www.aeroenlace.com.ar www.grulic.org.ar