#pragma once #include #include "Betriebssystem.h" namespace Framework { class AuswahlBox; class AuswahlListe; class BildZ; class FBalken; class Kamera2D; class Fenster; class Knopf; class KontrollKnopf; class LDiag; class M2DVorschau; class Model2D; class Animation2D; class TextFeld; class ObjTabelle; class SLDiag; class UIMLView; class Schrift; class Bildschirm; struct UIInitParam { Schrift *schrift; Bildschirm *bildschirm; void *data; }; struct UIInit { UIInitParam initParam; std::function< AuswahlBox*( UIInitParam &p ) > createAuswahlBox; std::function< AuswahlListe*( UIInitParam &p ) > createAuswahlListe; std::function< BildZ*( UIInitParam &p ) > createBildZ; std::function< FBalken*( UIInitParam &p ) > createFBalken; std::function< Kamera2D*( UIInitParam &p ) > createKamera2D; std::function< Fenster*( UIInitParam &p ) > createFenster; std::function< Knopf*( UIInitParam &p ) > createKnopf; std::function< KontrollKnopf*( UIInitParam &p ) > createKontrollKnopf; std::function< LDiag*( UIInitParam &p ) > createLDiag; std::function< M2DVorschau*( UIInitParam &p ) > createM2DVorschau; std::function< Model2D*( UIInitParam &p ) > createModel2D; std::function< Animation2D*( UIInitParam &p ) > createAnimation2D; std::function< TextFeld*( UIInitParam &p ) > createTextFeld; std::function< ObjTabelle*( UIInitParam &p ) > createObjTabelle; std::function< SLDiag*( UIInitParam &p ) > createSLDiag; std::function< UIMLView*( UIInitParam &p ) > createUIMLView; }; //! gibt eine liste mit default initialisierungsfunktionen zurück //! \param zSchrift Die schrift die verwendet werden soll (ohne erhöhten reference Counter) //! \param zScreen Der Bildschirm der verwendet werden soll (ohne erhöhten reference Counter) __declspec( dllexport ) UIInit defaultUI( Schrift *zSchrift, Bildschirm *zScreen ); }