TextFeld.h 4.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120
  1. #ifndef TextFeld_H
  2. #define TextFeld_H
  3. #include "Objekt.h"
  4. namespace Framework
  5. {
  6. class Schrift; // Schrift.h
  7. class Text; // Text.h
  8. class Farbe; // Farbe.h
  9. class AlphaFeld; // AlphaFeld.h
  10. class LRahmen; // Rahmen.h
  11. class TextFeld; // aus dieser Datei
  12. class TextFeldArray; // aus dieser Datei
  13. namespace TF_Style
  14. {
  15. const int Sichtbar = 0x00001;
  16. const int Erlaubt = 0x00002;
  17. const int Rahmen = 0x00004;
  18. const int Hintergrund = 0x00008;
  19. const int HAlpha = 0x00010;
  20. const int HBild = 0x00020;
  21. const int Fokus = 0x00080;
  22. const int Mehrzeilig = 0x00100;
  23. const int HCenter = 0x00200;
  24. const int VCenter = 0x00400;
  25. const int Mehrfarbig = 0x00800;
  26. const int Center = 0x00600;
  27. const int TextFeld = 0x00447;
  28. const int Text = 0x00901;
  29. const int TextGebiet = 0x0090F;
  30. }
  31. class TextFeld : public Objekt
  32. {
  33. private:
  34. int style;
  35. unsigned char schriftGröße;
  36. Schrift *schrift;
  37. Text *buffer;
  38. Farbe *bgF;
  39. Farbe *sF;
  40. AlphaFeld *bgBuff;
  41. LRahmen *rahmen;
  42. Bild *bgBild;
  43. unsigned char showChar;
  44. int begf, cpos;
  45. double tickVal;
  46. int ref;
  47. public:
  48. // Konstruktor
  49. TextFeld();
  50. // Destruktor
  51. ~TextFeld();
  52. // nicht constant
  53. void update(); // aktualisiert Position und größe
  54. void setText( Text *txt ); // setzt den angezeigten Text
  55. void setTextZ( Text *txt ); // setzt einen Zeiger zum angezeigten Text
  56. void setAuswahl( int pos1, int pos2 ); // setzt den Ausgewählten Text
  57. void setAuswahl( Punkt *auswahl );
  58. void setText( const char *txt ); // setzt den angezeigten Text
  59. void setHintergrundBild( Bild *bild ); // setzt das Hintergrund Bild
  60. void setHintergrundBildZ( Bild *bild ); // setzt einen Zeiger zum Hintergrund Bild
  61. void setHintergrundFarbe( int fc ); // setzt die Hintergrundfarbe
  62. void setHintergrundFarbe( Farbe *f );
  63. void setHintergrundFarbeZ( Farbe *f ); // setzt einen Zeiger zur Hintergrundfarbe
  64. void setSchriftZ( Schrift *schrift ); // setzt einen Zeiger zur Schrift
  65. void setSchriftGröße( unsigned char gr ); // setzt die Schriftgröße
  66. void setSchriftFarbe( int fc ); // setzt die Schrift Farbe
  67. void setSchriftFarbe( Farbe *f );
  68. void setSchriftFarbeZ( Farbe *f ); // setze einen Zeiger zur Schriftfarbe
  69. void setLRZ( LRahmen *ram ); // setzt einen Zeiger zum Rahmen
  70. void setLRBreite( int br ); // setzt die Breite des Rahmens
  71. void setLRFarbe( int fc ); // setzt die Farbe des Rahmens
  72. void setLRFarbe( Farbe *f );
  73. void setLRFarbeZ( Farbe *f ); // setzt einen Zeiger zur Farbe des Rahmens
  74. void setSchowChar( unsigned char c ); // bei Passwortfeld *
  75. void setStyle( int style ); // setzt den Style des Text Feldes
  76. void setStyle( int style, bool add_löschen );
  77. void addStyle( int style );
  78. void löscheStyle( int style );
  79. virtual void tick( double tickval ); // tick
  80. virtual void doMausEreignis( MausEreignis *te ); // Maus Ereignis
  81. virtual void doTastaturEreignis( TastaturEreignis *te ); // Tastatur Ereignis
  82. virtual void render( Bild *zrObj ); // zeichenet nach rObj
  83. virtual void render( int xOff, int yOff, int bOff, int hOff, Bild *zrObj );
  84. // Konstant
  85. Text *getText() const; // gibt getThis vom Text zurück
  86. Text *zText() const; // gibt den Text zurück
  87. Bild *getHintergrundBild() const; // gibt getThis vom Hintergrund Bild zurück
  88. Bild *zHintergrundBild() const; // gibt das Hintergrund Bild zurück
  89. Farbe *getHintergrundFarbe() const; // giebt getThis der Hintergrundfarbe zurück
  90. Farbe *zHintergrundFarbe() const; // gibt die Hintergrundfarbe zurück
  91. int getHintergrundFarbeCode() const;
  92. Schrift *getSchrift() const;// gint getThis der Schrift Zurück
  93. Schrift *zSchrift() const;// gibt die Schrift zurück
  94. unsigned char getSchriftGröße() const; // gibt die Schriftgröße zurück
  95. Farbe *getSchriftFarbe() const;// gibt getThis der Schriftfarbe zurück
  96. Farbe *zSchriftFarbe() const; // gibt die Schriftfarbe zurück
  97. int getSchriftFarbeCode() const;
  98. LRahmen *getLR() const; // gibt getThis des Rahmens zurück
  99. LRahmen *zLR() const; // gibt den Rahmen zurück
  100. int getLRBreite() const; // gibt die Breite des Rahmens zurück
  101. Farbe *getLRFarbe() const; // gibt getThis der Farbe des Rahmens zurück
  102. Farbe *zLRFarbe() const; // gibt die Farbe des Rahmens zurück
  103. int getLRFarbeCode() const;
  104. unsigned char getShowChar() const; // gibt den Anzeige Char zurück
  105. bool hatStyle( int style ) const; // prüft, ob style vorhanden
  106. bool hatStyleNicht( int style ) const; // prüft, ob style nicht vorhanden
  107. int getMarkierungLänge() const; // gibt die Länge der Markierung zurück
  108. // Reference Counting
  109. TextFeld *getThis();
  110. TextFeld *release();
  111. };
  112. }
  113. #endif