UIInitialization.h 2.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960
  1. #pragma once
  2. #include <functional>
  3. #include "OperatingSystem.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*(const UIInitParam& p)> createAuswahlBox;
  34. std::function<AuswahlListe*(const UIInitParam& p)> createAuswahlListe;
  35. std::function<BildZ*(const UIInitParam& p)> createBildZ;
  36. std::function<FBalken*(const UIInitParam& p)> createFBalken;
  37. std::function<Kamera2D*(const UIInitParam& p)> createKamera2D;
  38. std::function<Fenster*(const UIInitParam& p)> createFenster;
  39. std::function<Knopf*(const UIInitParam& p)> createKnopf;
  40. std::function<KontrollKnopf*(const UIInitParam& p)> createKontrollKnopf;
  41. std::function<LDiag*(const UIInitParam& p)> createLDiag;
  42. std::function<M2DVorschau*(const UIInitParam& p)> createM2DVorschau;
  43. std::function<Model2D*(const UIInitParam& p)> createModel2D;
  44. std::function<Animation2D*(const UIInitParam& p)> createAnimation2D;
  45. std::function<TextFeld*(const UIInitParam& p)> createTextFeld;
  46. std::function<ObjTabelle*(const UIInitParam& p)> createObjTabelle;
  47. std::function<SLDiag*(const UIInitParam& p)> createSLDiag;
  48. std::function<UIMLView*(const UIInitParam& p)> createUIMLView;
  49. };
  50. //! Returns a list of default initialization functions
  51. //! \param zSchrift The font to use (without increased reference counter)
  52. //! \param zScreen The screen to use (without increased reference counter)
  53. DLLEXPORT UIInit defaultUI(Schrift* zSchrift, Bildschirm* zScreen);
  54. } // namespace Framework