Interface.h 1.5 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950
  1. #pragma once
  2. #include <Fenster.h>
  3. #include <Knopf.h>
  4. #include "RightTools.h"
  5. #include "EditorKarte.h"
  6. using namespace Framework;
  7. namespace Editor
  8. {
  9. class Interface : public ZeichnungHintergrund
  10. {
  11. private:
  12. Knopf * beenden;
  13. RightTools *right;
  14. KarteDaten *daten;
  15. Schrift *schrift;
  16. bool verlassen;
  17. int ref;
  18. public:
  19. // Konstruktor
  20. // zS: Ein Zeiger auf die zu verwendende Schrift
  21. Interface( Schrift *zS, Punkt maxSize );
  22. // Destruktor
  23. ~Interface();
  24. void setDaten( KarteDaten *daten );
  25. // Verarbeitet eine Mausnachricht
  26. // me: Die Nachricht die verarbeitet werden soll
  27. void doPublicMausEreignis( MausEreignis &me ) override;
  28. // Verarbeitet eine Tastaturnachricht
  29. // te: Die Nachricht die verarbeitet werden soll
  30. void doTastaturEreignis( TastaturEreignis &te ) override;
  31. bool tick( double time ) override;
  32. // Zeichnet das Interface nach uRObj
  33. // zRObj: Das Bild in das gezeichnet werden soll
  34. void render( Bild &zRObj ) override;
  35. // Setzt das Interface in den Initialisierungszustand zurück
  36. void reset();
  37. // Gibt zurück, ob der Benutzer den Editor verlassen möchte
  38. bool hatVerlassen() const;
  39. // erhöht den Reference Counter
  40. // return: this
  41. Interface *getThis();
  42. // verringert den Reference Counter und löscht das Objekt wenn es nicht mehr gebraucht wird.
  43. // return: 0
  44. Interface *release();
  45. };
  46. }