123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778 |
- #ifndef KSGSKlasse_H
- #define KSGSKlasse_H
- #include <Knopf.h>
- #include <Fenster.h>
- #include <Bild.h>
- #include <Animation.h>
- #include "KSGSFunktion.h"
- #include "../Include/KSGScript.h"
- namespace KSGScript
- {
- class KSGSKlasse; // aus dieser Datei
- class KSGSKlasseInstanz : public KSGSVariable
- {
- protected:
- RCArray< KSGSVariable > *lokaleVariablen;
- RCArray< KSGSFunktion > *funktionen;
- Array< bool > *varPublic;
- KSGScriptProcessor *obj;
- int typ;
- public:
- // Konstruktor
- KSGSKlasseInstanz( int typ, Array< KSGSVariableDef * > *zVars, RCArray< KSGSFunktion > *funcs, KSGScriptProcessor *zObj );
- // Destruktor
- virtual ~KSGSKlasseInstanz();
- // nicht constant
- virtual KSGSVariable *startFunktion( int id, bool zugriff, RCArray< KSGSVariable > *parameter ) override;
- virtual KSGSVariable *doOperator( int id, KSGSVariable *rechts ) override;
- virtual void setVariable( int id, KSGSVariable *var ) override;
- // constant
- virtual KSGSVariable *getVariable( int id, bool zugriff ) const override;
- virtual KSGSVariable *umwandelnIn( int typ ) const override;
- virtual int getTyp() const override;
- // verarbeiten
- virtual bool getBool() const override;
- virtual int getInt() const override;
- virtual double getDouble() const override;
- virtual Text *getText() const override;
- virtual Bild *getBild() const override;
- virtual MausEreignis getMausEreignis() const override;
- virtual TastaturEreignis getTastaturEreignis() const override;
- virtual TextFeld *getTextFeld() const override;
- virtual Knopf *getKnopf() const override;
- virtual Fenster *getFenster() const override;
- virtual BildZ *getBildZ() const override;
- virtual Animation2DData *getAnimation2DData() const override;
- virtual Animation2D *getAnimation2D() const override;
- virtual Zeichnung *getZeichnung() const override;
- virtual RCArray< KSGSVariable > *getArray() const override;
- // static
- static KSGSVariable *erstellVariable( KSGScriptProcessor *zObj, KSGSVariableDef *def );
- };
- class KSGSKlasse : public virtual ReferenceCounter
- {
- private:
- Array< KSGSVariableDef * > *var;
- RCArray< KSGSFunktion > *funktionen;
- int id;
- public:
- // Konstruktor
- __declspec( dllexport ) KSGSKlasse( int id );
- // Destruktor
- __declspec( dllexport ) ~KSGSKlasse();
- // nicht constant
- __declspec( dllexport ) void addVariable( KSGSVariableDef *var );
- __declspec( dllexport ) void addFunktion( KSGSFunktion *func );
- __declspec( dllexport ) KSGSKlasseInstanz *erstellInstanz( KSGScriptProcessor *zObj );
- // constant
- __declspec( dllexport ) int getId() const;
- };
- }
- #endif
|