Re: [Monobotics-develop] [ES] Cuestiones básicas de Herencia y funcionamiento
Brought to you by:
buhochileno
|
From: <buh...@gm...> - 2009-10-04 19:44:51
|
FuxXxA wrote:
> Buenas.
>
>
> Como se estructura la geneación de los menus en la aplicación ?? como
> es su funcionamiento ??
Los menus en la aplicacion apracen mediante una directiva (atributo de
clase en este caso) para el precompilador, por ejemplo:
[Designer("monoBOTICS.DomoKits.X10")]
public partial class X10Interface : MBF.Core.SerialKit {
la directiva "Designer" le dice al engine/motor de icarus en que "menu"
debe aparecer la clase, en el caso del ejemplo se creara una jerarquia
de menu tipo:
monoBOTICS->DomoKits->X10
y la clase X10Interface aparecera bajo ese menu, por supuesto la
jerarquia no se crea a cada rato, si ya otra clase la creo la proxima
simpemente se agrega bajo ese menu....Tu podrias crear un menu y poner
tus clases ahi, tipo:
[Designer("monoBOTICS.DomoKits.AlarmSystems")]
public partial class DSCAlarmKit : .... {
> Ej: Al crear archivo .cs con clases dentro, inicio la aplcación, y en
> el menú "monoBOTICS" salen mis clases como objetos para agregar al
> entorno (incluso sin estar implementadas).
apareceran incluso sin ninguna implementacion porque icarus agrega todas
las clases que son compatibles con el, si no tienen nada bueno no haran
nada nomas entonces...
Respecto a lo que preguntabas el otro dia en un mail "offlist", NO
EXISTE herencia multiple en C#!!!, asi que debes tener mucho ojo y se
preciso de donde heredar, eso ya lo cubrimos en la sesion de trabajo, si
tienes dudas puntuales respecto a alguno de los objetos y de donde
heredar consultas nomas...
Tambien preguntaste como funcionaba esto :
Cuando se agrega cualquier objeto al arbol de la escena 3D en
icaurs, el motor de icarus literalmente crea un "nuevo" objeto, es decir
hace el equivalente a un "...new Laclase()..." (pero mediante
Reflection), asi que cada objeto en el arbol (oficialmente el arbol se
llama "FlowGram") es un objeto tal cual...Nuestras clases tienen que
poseer un constructor vacio para que icarus pueda hacer esto, ademas
como regla general, los constructores no deberian tener demasiado codigo
pesado y ser mas bien livianos (no solo en icarus...)...
Toda clase que herede de SceneObject (no necesariamente
directamente, puede ser a travez de algun hijo de la jerarquia de
sceneobject como DomoKit, SerialKit, RobotKit, OnOffKit o muchos otros),
posee la capacidad de sobreescribir 3 metodos importantes:
InitialiseSimulation --> cuando se presiona "play" (se puede poner
aqui logica de coneccion, inicializacion, etc)
StepSimulation --> cada vez que se presiona "un frame para
adelante", usualmente no lo usamos...
FinaliseSimulation--> cuando se apreta "stop" (codigo de
desconeccion,etc...)
Espero haber aclarado dudas, mas preguntas puntuales (o tambien
generales) a la lista..
Mauricio
>
>
>
> Saludos.
>
> --
> --------------------------------------
> Cristian Fucha Plaza.
> Puerto Montt
> F: ( 0 9 ) 7 - 4 5 3 2 8 8 6
> --------------------------------------
> ------------------------------------------------------------------------
>
> ------------------------------------------------------------------------------
> Come build with us! The BlackBerry® Developer Conference in SF, CA
> is the only developer event you need to attend this year. Jumpstart your
> developing skills, take BlackBerry mobile applications to market and stay
> ahead of the curve. Join us from November 9-12, 2009. Register now!
> http://p.sf.net/sfu/devconf
> ------------------------------------------------------------------------
>
> _______________________________________________
> Monobotics-develop mailing list
> Mon...@li...
> https://lists.sourceforge.net/lists/listinfo/monobotics-develop
>
|