UIInitialization.h 2.0 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859
  1. #pragma once
  2. #include <functional>
  3. #include "Betriebssystem.h"
  4. namespace Framework
  5. {
  6. class AuswahlBox;
  7. class AuswahlListe;
  8. class BildZ;
  9. class FBalken;
  10. class Kamera2D;
  11. class Fenster;
  12. class Knopf;
  13. class KontrollKnopf;
  14. class LDiag;
  15. class M2DVorschau;
  16. class Model2D;
  17. class Animation2D;
  18. class TextFeld;
  19. class ObjTabelle;
  20. class SLDiag;
  21. class UIMLView;
  22. class Schrift;
  23. class Bildschirm;
  24. struct UIInitParam
  25. {
  26. Schrift *schrift;
  27. Bildschirm *bildschirm;
  28. void *data;
  29. };
  30. struct UIInit
  31. {
  32. UIInitParam initParam;
  33. std::function< AuswahlBox*( UIInitParam &p ) > createAuswahlBox;
  34. std::function< AuswahlListe*( UIInitParam &p ) > createAuswahlListe;
  35. std::function< BildZ*( UIInitParam &p ) > createBildZ;
  36. std::function< FBalken*( UIInitParam &p ) > createFBalken;
  37. std::function< Kamera2D*( UIInitParam &p ) > createKamera2D;
  38. std::function< Fenster*( UIInitParam &p ) > createFenster;
  39. std::function< Knopf*( UIInitParam &p ) > createKnopf;
  40. std::function< KontrollKnopf*( UIInitParam &p ) > createKontrollKnopf;
  41. std::function< LDiag*( UIInitParam &p ) > createLDiag;
  42. std::function< M2DVorschau*( UIInitParam &p ) > createM2DVorschau;
  43. std::function< Model2D*( UIInitParam &p ) > createModel2D;
  44. std::function< Animation2D*( UIInitParam &p ) > createAnimation2D;
  45. std::function< TextFeld*( UIInitParam &p ) > createTextFeld;
  46. std::function< ObjTabelle*( UIInitParam &p ) > createObjTabelle;
  47. std::function< SLDiag*( UIInitParam &p ) > createSLDiag;
  48. std::function< UIMLView*( UIInitParam &p ) > createUIMLView;
  49. };
  50. //! gibt eine liste mit default initialisierungsfunktionen zurück
  51. //! \param zSchrift Die schrift die verwendet werden soll (ohne erhöhten reference Counter)
  52. //! \param zScreen Der Bildschirm der verwendet werden soll (ohne erhöhten reference Counter)
  53. DLLEXPORT UIInit defaultUI( Schrift *zSchrift, Bildschirm *zScreen );
  54. }