Editor.h 2.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778
  1. #pragma once
  2. #include <Schrift.h>
  3. #include <Text.h>
  4. #include <MausEreignis.h>
  5. #include <TastaturEreignis.h>
  6. #include "../Include/KSGScript.h"
  7. using namespace Framework;
  8. namespace KSGScript
  9. {
  10. class KSGScriptEditor;
  11. class ColorParser;
  12. class Editor : public KSGScriptEditor
  13. {
  14. private:
  15. Schrift *schrift;
  16. Text *script;
  17. ColorParser *parser;
  18. bool errorDetection;
  19. bool warningDetection;
  20. double tickVal;
  21. int reloadCounter;
  22. int cPos;
  23. int begF;
  24. int colors[ COLOR_ANZAHL ];
  25. bool mausKlick;
  26. int ref;
  27. void updateHScroll( int pos );
  28. void updateVScroll( int pos );
  29. public:
  30. // Konstructor
  31. Editor();
  32. // Destructor
  33. ~Editor();
  34. // Setzt die zu verwendende Schrift
  35. // s: Die Schrift
  36. void setSchriftZ( Schrift *s ) override;
  37. // Setzt den Text (das Script was verändert werden soll)
  38. // txt: Der Text
  39. void setText( Framework::Text *txt ) override;
  40. // Gibt den aktuellen Text zurück
  41. Text *zText() const override;
  42. // Schaltet die Fehlererkennung ein oder aus
  43. // on: 1, um die Fehlererkennung einzuschalten, 0 um sie auszuschalten
  44. void setErrorDetection( bool on = 1 ) override;
  45. // Schaltet die Warnungserkennung ein oder aus
  46. // on: 1, um die Warnungserkennung einzuschalten, 0 um sie auszuschalten
  47. void setWarningDetection( bool on = 1 ) override;
  48. // gibt 1 zurück, wenn die Fehlererkennung eingeschaltet ist
  49. bool getErrorDetection() const override;
  50. // gibt 1 zurück, wenn die Warnungserkennung eingeschaltet ist
  51. bool getWarningDetection() const override;
  52. // Verarbeitet ein Maus Ereignis. Wird vom Framework automatisch aufgerufen.
  53. // me: Das Ereignis
  54. void doMausEreignis( MausEreignis &me ) override;
  55. // Verarbeitet ein Tastatur Ereignis. Wird vom Framework automatisch aufgerufen
  56. // te: Das Ereignis
  57. void doTastaturEreignis( TastaturEreignis &te ) override;
  58. // Updated den Editor
  59. // tickVal: Die vergangene Zeit in Sekunden, die seit dem Letzten Aufruf dieser Funktion verstrichen ist
  60. // return: 1, wenn das Bild neu gezeichnet werden muss. 0 sonnst
  61. bool tick( double tickVal ) override;
  62. // Zeichnet den Editor nach rObj
  63. void render( Bild &rObj ) override;
  64. // Setzt die Farbe eines Bestimmten Codetyps
  65. // color: Die Farbe in 0xAARRGGBB Format
  66. // cType: Der Codetyp, der die Farbe bekommen soll
  67. void setTextColor( int color, ColorType cType ) override;
  68. // Reference Counting
  69. KSGScriptEditor *getThis() override;
  70. KSGScriptEditor *release() override;
  71. };
  72. }