ToolTip.h 3.2 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374
  1. #ifndef ToolTip_H
  2. #define ToolTip_H
  3. #include "Array.h"
  4. #include "Zeichnung.h"
  5. namespace Framework
  6. {
  7. class Schrift; // Schrift.h
  8. class Bild; // Bild.h
  9. class AlphaFeld; // AlphaFeld.h
  10. class Text; // Text.h
  11. class Rahmen; // Rahmen.h
  12. struct MausEreignis; // MausEreignis.h
  13. class Bildschirm; // Bildschirm.h
  14. class ToolTip : public ZeichnungHintergrund
  15. {
  16. private:
  17. RCArray< Zeichnung > *members;
  18. Punkt size;
  19. double animationSpeed;
  20. double warten;
  21. double wartenCount;
  22. double tval;
  23. bool mausIn;
  24. unsigned char alpha;
  25. bool sichtbar;
  26. bool zeichnen;
  27. bool mausIn2;
  28. Bildschirm *bildschirm;
  29. public:
  30. // Konstruktor
  31. __declspec( dllexport ) ToolTip( Bildschirm *zSceen );
  32. // Destruktor
  33. __declspec( dllexport ) ~ToolTip();
  34. // Fügt eine Zeichnung zum Tooltip hinzu
  35. // m: die neue Zeichnung
  36. __declspec( dllexport ) void addMember( Zeichnung *m );
  37. // Setzt die anzahl an Seunden, de gewartet wird bis der Tipp erscheint
  38. // warten: Die Anzahl an Sekunden
  39. __declspec( dllexport ) void setWarten( double warten );
  40. // Legt fest, wie schnell der Tipp erscheint
  41. // speed: Anzahl der Pixel, die pro Sekunde eingeblendet werden. (Standart: 250)
  42. __declspec( dllexport ) void setAnimationSpeed( double speed );
  43. // Legt Fest, ob die Maus in dem Zeichnung ist, zu dem der Tip gehört
  44. // mausIn: 1, wenn die Maus in dem Zeichnung ist. 0 sonst
  45. __declspec( dllexport ) void setMausIn( bool mausIn );
  46. // Setzt den Counter zurück, der zählt, wann der Tipp eingeblendet wird.
  47. __declspec( dllexport ) void wartenReset();
  48. // Legt fest, das das Zeichnung, zu dem der Tip gehört gezeichnet wurde, so dass der Tip auch gezeichnet werden könnte
  49. __declspec( dllexport ) void setZeichnen();
  50. // Aktualisiert den Tip. Wird vom Framework aufgerufen
  51. // tickVal: Die Zeit in sekunden, die seit dem lezten Aufruf dieser Funktion vergangen ist
  52. // return: 1, wenn sich etwas verändert hat und das Bild neu gezeichnet werden muss. 0 sonst
  53. __declspec( dllexport ) bool tick( double tickVal ) override;
  54. // Verarbeitet Maus Nachrichten
  55. // me: Das Ereignis, was durch die Mauseingabe ausgelößt wurde
  56. __declspec( dllexport ) void doMausEreignis( MausEreignis &me ) override;
  57. // Zeichnet den Tip nach zRObj, falls er sichtbar ist und das zugehörige Zeichnung ebenfalls gezeichnet wurde
  58. // zRObj: Das Bild, in welches gezeichnet werden soll
  59. __declspec( dllexport ) void render( Bild &zRObj ) override;
  60. // Gibt einen Zeiger auf den Bildschirm ohne erhöhten Reference Counter zurück, so dem der Tooltip gehört.
  61. __declspec( dllexport ) Bildschirm *zBildschirm() const;
  62. // Erzeugt eine komplette kopie eines tooltips
  63. __declspec( dllexport ) Zeichnung *dublizieren() const override;
  64. // Verringert den Reference Counting Zähler. Wenn der Zähler 0 erreicht, wird das Zeichnung automatisch gelöscht.
  65. // return: 0.
  66. __declspec( dllexport ) Zeichnung *release() override;
  67. };
  68. }
  69. #endif