Editor.h 2.9 KB

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