#pragma once #include class UnshapedRecipieElement : public Framework::UIMLElement { public: UnshapedRecipieElement(); //! prüft, ob dieses UIML Element für ein bestimmtes xml Element zuständig //! ist bool isApplicableFor(Framework::XML::Element& element) override; //! erstellt eine neue Zeichnung zu einem gegebenen xml Element Framework::Zeichnung* parseElement(Framework::XML::Element& element, Framework::UIMLContainer& generalFactory) override; bool updateElement(Framework::XML::Element& element, Framework::Zeichnung& z, Framework::UIMLContainer& generalFactory) override; //! wendet die layout parameter zu einer Zeichnung an void layout(Framework::XML::Element& element, Framework::Zeichnung& z, int pWidth, int pHeight, Framework::UIMLContainer& generalLayouter) override; }; class UnshapedRecipie : public Framework::ZeichnungHintergrund { private: Framework::RCArray ingredients; Framework::RCArray outputs; public: UnshapedRecipie(); void addIngredient(Zeichnung* ingredient); void addOutput(Zeichnung* output); bool tick(double tickVal) override; void render(Framework::Bild& rObj) override; void doMausEreignis(Framework::MausEreignis& me, bool userRet) override; };