#ifndef TextFeld_H #define TextFeld_H #include "Objekt.h" namespace Framework { class Schrift; // Schrift.h class Text; // Text.h class Farbe; // Farbe.h class AlphaFeld; // AlphaFeld.h class LRahmen; // Rahmen.h class TextFeld; // aus dieser Datei class TextFeldArray; // aus dieser Datei namespace TF_Style { const int Sichtbar = 0x00001; const int Erlaubt = 0x00002; const int Rahmen = 0x00004; const int Hintergrund = 0x00008; const int HAlpha = 0x00010; const int HBild = 0x00020; const int Fokus = 0x00080; const int Mehrzeilig = 0x00100; const int HCenter = 0x00200; const int VCenter = 0x00400; const int Mehrfarbig = 0x00800; const int Center = 0x00600; const int TextFeld = 0x00447; const int Text = 0x00901; const int TextGebiet = 0x0090F; } class TextFeld : public Objekt { private: int style; unsigned char schriftGröße; Schrift *schrift; Text *buffer; Farbe *bgF; Farbe *sF; AlphaFeld *bgBuff; LRahmen *rahmen; Bild *bgBild; unsigned char showChar; int begf, cpos; double tickVal; int ref; public: // Konstruktor TextFeld(); // Destruktor ~TextFeld(); // nicht constant void update(); // aktualisiert Position und größe void setText( Text *txt ); // setzt den angezeigten Text void setTextZ( Text *txt ); // setzt einen Zeiger zum angezeigten Text void setAuswahl( int pos1, int pos2 ); // setzt den Ausgewählten Text void setAuswahl( Punkt *auswahl ); void setText( const char *txt ); // setzt den angezeigten Text void setHintergrundBild( Bild *bild ); // setzt das Hintergrund Bild void setHintergrundBildZ( Bild *bild ); // setzt einen Zeiger zum Hintergrund Bild void setHintergrundFarbe( int fc ); // setzt die Hintergrundfarbe void setHintergrundFarbe( Farbe *f ); void setHintergrundFarbeZ( Farbe *f ); // setzt einen Zeiger zur Hintergrundfarbe void setSchriftZ( Schrift *schrift ); // setzt einen Zeiger zur Schrift void setSchriftGröße( unsigned char gr ); // setzt die Schriftgröße void setSchriftFarbe( int fc ); // setzt die Schrift Farbe void setSchriftFarbe( Farbe *f ); void setSchriftFarbeZ( Farbe *f ); // setze einen Zeiger zur Schriftfarbe void setLRZ( LRahmen *ram ); // setzt einen Zeiger zum Rahmen void setLRBreite( int br ); // setzt die Breite des Rahmens void setLRFarbe( int fc ); // setzt die Farbe des Rahmens void setLRFarbe( Farbe *f ); void setLRFarbeZ( Farbe *f ); // setzt einen Zeiger zur Farbe des Rahmens void setSchowChar( unsigned char c ); // bei Passwortfeld * void setStyle( int style ); // setzt den Style des Text Feldes void setStyle( int style, bool add_löschen ); void addStyle( int style ); void löscheStyle( int style ); virtual void tick( double tickval ); // tick virtual void doMausEreignis( MausEreignis *te ); // Maus Ereignis virtual void doTastaturEreignis( TastaturEreignis *te ); // Tastatur Ereignis virtual void render( Bild *zrObj ); // zeichenet nach rObj virtual void render( int xOff, int yOff, int bOff, int hOff, Bild *zrObj ); // Konstant Text *getText() const; // gibt getThis vom Text zurück Text *zText() const; // gibt den Text zurück Bild *getHintergrundBild() const; // gibt getThis vom Hintergrund Bild zurück Bild *zHintergrundBild() const; // gibt das Hintergrund Bild zurück Farbe *getHintergrundFarbe() const; // giebt getThis der Hintergrundfarbe zurück Farbe *zHintergrundFarbe() const; // gibt die Hintergrundfarbe zurück int getHintergrundFarbeCode() const; Schrift *getSchrift() const;// gint getThis der Schrift Zurück Schrift *zSchrift() const;// gibt die Schrift zurück unsigned char getSchriftGröße() const; // gibt die Schriftgröße zurück Farbe *getSchriftFarbe() const;// gibt getThis der Schriftfarbe zurück Farbe *zSchriftFarbe() const; // gibt die Schriftfarbe zurück int getSchriftFarbeCode() const; LRahmen *getLR() const; // gibt getThis des Rahmens zurück LRahmen *zLR() const; // gibt den Rahmen zurück int getLRBreite() const; // gibt die Breite des Rahmens zurück Farbe *getLRFarbe() const; // gibt getThis der Farbe des Rahmens zurück Farbe *zLRFarbe() const; // gibt die Farbe des Rahmens zurück int getLRFarbeCode() const; unsigned char getShowChar() const; // gibt den Anzeige Char zurück bool hatStyle( int style ) const; // prüft, ob style vorhanden bool hatStyleNicht( int style ) const; // prüft, ob style nicht vorhanden int getMarkierungLänge() const; // gibt die Länge der Markierung zurück // Reference Counting TextFeld *getThis(); TextFeld *release(); }; } #endif