Zeichnung.h 22 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365
  1. #ifndef Zeichnung_H
  2. #define Zeichnung_H
  3. #include "Punkt.h"
  4. namespace Framework
  5. {
  6. struct VScrollData; // Scroll.h
  7. struct HScrollData; // Scroll.h
  8. struct MausEreignis; // MausEreignis.h
  9. struct TastaturEreignis; // TastaturEreignis.h
  10. class Bild; // Bild.h
  11. class Zeichnung; // Aus dieser Datei
  12. class ZeichnungArray; // Aus dieser Datei
  13. class ToolTip; // ToopTip.h
  14. class Bildschirm; // Bildschirm.h
  15. class LRahmen; // Rahmen.h
  16. class AlphaFeld; // AlphaFeld.h
  17. class VScrollBar; // Scroll.h
  18. class HScrollBar; // Scroll.h
  19. // Eine Zeichnung für das 2D GUI Framework
  20. class Zeichnung
  21. {
  22. public:
  23. class Style
  24. {
  25. public:
  26. const static __int64 Sichtbar = 0x00001; // Wenn dieser Style gesetzt ist, wird die Zeichnung beim Zeichnen angezeigt
  27. const static __int64 Erlaubt = 0x00002; // Wenn dieser Style gesetzt ist, kann der Benutzer mit der Zeichnung interagieren
  28. const static __int64 Fokus = 0x00004; // Wenn dieser Style gesetzt ist, werden die Tastatur Ereignisse von der Zeichnung verarbeitet
  29. };
  30. protected:
  31. Punkt pos;
  32. Punkt gr;
  33. void *makParam;
  34. void *takParam;
  35. bool( *Mak )( void *, void *, MausEreignis );
  36. bool( *Tak )( void *, void *, TastaturEreignis );
  37. void *nmakParam;
  38. void *ntakParam;
  39. bool( *nMak )( void *, void *, MausEreignis );
  40. bool( *nTak )( void *, void *, TastaturEreignis );
  41. bool mausIn;
  42. CRITICAL_SECTION cs;
  43. ToolTip *toolTip;
  44. __int64 style;
  45. bool rend;
  46. public:
  47. // Konstruktor
  48. __declspec( dllexport ) Zeichnung();
  49. // Destruktor
  50. __declspec( dllexport ) ~Zeichnung();
  51. // Legt fest, ob sich die Zeichnung seit des letzten Bildes verändert hat und neu gezeichnet werden muss
  52. __declspec( dllexport ) void setRender();
  53. // Setzt den Text, der erscheint, wenn der Benutzer für längere Zeit mit der Maus in der Zeichnung verweilt
  54. // txt: Der Text, der angezeigt werden soll
  55. // zScreen: Ein Zeiger auf das Verwendete Bildschirm Objekt ohne erhöhten Reference Counter
  56. __declspec( dllexport ) void setToolTipText( const char *txt, Bildschirm *zScreen );
  57. // Dies ist notwendig, falls mehrere Threads gleichzeitig die Zeichnung benutzen.
  58. // Wenn lockZeichnung() von zwei threads aufgerufen wird, wartet der letzte so lange, bis der erste unlockZeichnung() aufgerufen hat.
  59. __declspec( dllexport ) void lockZeichnung();
  60. // Dies ist notwendig, falls mehrere Threads gleichzeitig die Zeichnung benutzen.
  61. // Wenn lockZeichnung() von zwei threads aufgerufen wird, wartet der letzte so lange, bis der erste unlockZeichnung() aufgerufen hat.
  62. __declspec( dllexport ) void unlockZeichnung();
  63. // setzt den Parameter, der bei einem Maus Ereignis an die Rückruffunktion übergeben wird
  64. // p: Der Parameter
  65. __declspec( dllexport ) void setMausEreignisParameter( void *p );
  66. // Setzt den Parameter, der bei einem Tastatur Ereignis an die Rückruffunktion übergeben wird
  67. // p: Der Parameter
  68. __declspec( dllexport ) void setTastaturEreignisParameter( void *p );
  69. // Setzt die Rückruffunktion, die bei einem Maus Ereignis aufgerufen werden soll.
  70. // Wenn die Rückruffunktion 0 zurückgiebt, oder nicht gesetzt wurde, wird ein Maus Ereignis von der Zeichnung nicht weiter beachtet
  71. // Es kann die Standartfunktion __ret1ME verwendet werden, die in MausEreignis.h definiert ist und immer 1 zurückgibt
  72. // ak: Ein Zeiger auf die Rückruffunktion
  73. __declspec( dllexport ) void setMausEreignis( bool( *ak )( void *, void *, MausEreignis ) );
  74. // Setzt die Rückruffunktion, die bei einem Tastatur Ereignis aufgerufen werdne soll.
  75. // Wenn die Rückruffunktion 0 zurückgiebt, oder nicht gesetzt wurde, wird ein Tastatur Ereignis von der Zeichnung nicht weiter beachtet
  76. // Es kann die Standartfunktion __ret1TE verwendet werden, die in TastaturEreignis.h definiert ist und immer 1 zurückgibt
  77. // Weitere Standartfunktionen sind _nurNummernTE und _nurHexTE ebenfals aus TastaturEreignis.h
  78. // ak: Ein Zeiger auf die Rückruffunktion
  79. __declspec( dllexport ) void setTastaturEreignis( bool( *ak )( void *, void *, TastaturEreignis ) );
  80. // setzt den Parameter, der bei einem Maus Ereignis an die Rückruffunktion übergeben wird, die aufgerufen wird, fals das Ereignis von der Zeichnung verarbeitet wurde
  81. // p: Der Parameter
  82. __declspec( dllexport ) void setNMausEreignisParameter( void *p );
  83. // Setzt den Parameter, der bei einem Tastatur Ereignis an die Rückruffunktion übergeben wird, die aufgerufen wird, fals das Ereignis von der Zeichnung verarbeitet wurde
  84. // p: Der Parameter
  85. __declspec( dllexport ) void setNTastaturEreignisParameter( void *p );
  86. // Setzt die Rückruffunktion, die bei einem Maus Ereignis aufgerufen werden soll, nachdem das Ereignis bereits von der Zeichnung verarbeitet wurde
  87. // Wenn die Rückruffunktion 1 zurückgiebt, oder nicht gesetzt wurde, wird das Maus Ereignis von keiner weiteren Zeichnung verarbeitet, die zum Beispiel hinter dieser Zeichnung liegen
  88. // Es kann die Standartfunktion __ret1ME verwendet werden, die in MausEreignis.h definiert ist und immer 1 zurückgibt
  89. // ak: Ein Zeiger auf die Rückruffunktion
  90. __declspec( dllexport ) void setNMausEreignis( bool( *ak )( void *, void *, MausEreignis ) );
  91. // Setzt die Rückruffunktion, die bei einem Tastatur Ereignis aufgerufen werdne soll, nachdem das Ereignis bereits von der Zeichnung verarbeitet wurde
  92. // Wenn die Rückruffunktion 1 zurückgiebt, oder nicht gesetzt wurde, wird das Tastatur Ereignis von keiner weiteren Zeichnung verarbeitet
  93. // Es kann die Standartfunktion __ret1TE verwendet werden, die in TastaturEreignis.h definiert ist und immer 1 zurückgibt
  94. // Weitere Standartfunktionen sind _nurNummernTE und _nurHexTE ebenfals aus TastaturEreignis.h
  95. // ak: Ein Zeiger auf die Rückruffunktion
  96. __declspec( dllexport ) void setNTastaturEreignis( bool( *ak )( void *, void *, TastaturEreignis ) );
  97. // Verarbeitet ein Maus Ereignis. Wird vom Framework automatisch aufgerufen.
  98. // me: Das Ereignis
  99. __declspec( dllexport ) virtual void doMausEreignis( MausEreignis &me );
  100. // Verarbeitet ein Tastatur Ereignis. Wird vom Framework automatisch aufgerufen
  101. // te: Das Ereignis
  102. __declspec( dllexport ) virtual void doTastaturEreignis( TastaturEreignis &te );
  103. // Verarbeitet die Zeit, die seit dem letzten aufruf dieser Funktion vergangen ist
  104. // tickVal: Die vergangene Zeit in Sekunden
  105. __declspec( dllexport ) virtual bool tick( double tickval );
  106. // Setzt die Position der Zeichnung
  107. // pos: Die Position in Pixeln
  108. __declspec( dllexport ) void setPosition( const Punkt &pos );
  109. // Setzt die X Position der Zeichnung
  110. // xPos: Die Position in Pixeln
  111. __declspec( dllexport ) void setX( int xPos );
  112. // Setzt die Y Position der Zeichnung
  113. // yPos: Die Position in Pixeln
  114. __declspec( dllexport ) void setY( int yPos );
  115. // Setzt die Größe der Zeichnung
  116. // gr: Ein Punkt mit x als Breite und y als Höhe in Pixeln
  117. __declspec( dllexport ) void setGröße( const Punkt &gr );
  118. // Setzt die Position der Zeichnung
  119. // x: Die X Position in Pixeln
  120. // y: Die Y Position in Pixeln
  121. __declspec( dllexport ) void setPosition( int x, int y );
  122. // Setzt die Größe der Zeichnung
  123. // br: Die Breite in Pixeln
  124. // hö: Die Höhe in Pixeln
  125. __declspec( dllexport ) void setGröße( int br, int hö );
  126. // Setzt den Style der Zeichnung
  127. // style: Der neue Style bestehend aus den Flags aus der zugehörigen Style Klasse
  128. __declspec( dllexport ) void setStyle( __int64 style );
  129. // Setzt den Style der Zeichnung
  130. // style: Alle Style Flags, die verändert werden sollen
  131. // add_löschen: 1, falls der Style hinzugefügt werden soll. 0, falls der Style entfernt weden soll
  132. __declspec( dllexport ) void setStyle( __int64 style, bool add_löschen );
  133. // Fügt Style Flags hinzu
  134. // style: Der Style, der hinzugefügt werden soll
  135. __declspec( dllexport ) void addStyle( __int64 style );
  136. // Entfernt Style Flags
  137. // style: Der Style, der entfernt werden soll
  138. __declspec( dllexport ) void löscheStyle( __int64 style );
  139. // Zeichnet die Zeihnung in ein bestimmtes Bild
  140. // zRObj: Das Bild, in das gezeichnet werden soll
  141. __declspec( dllexport ) virtual void render( Bild &zRObj );
  142. // Gibt zurück, ob eine Rückruffunktion für Maus Ereignisse gesetzt wurde
  143. __declspec( dllexport ) bool hatMausEreignis() const;
  144. // Gibt zurück, ob eine Rückruffunktion für Tastatur Ereignisse gesetzt wurde
  145. __declspec( dllexport ) bool hatTastaturEreignis() const;
  146. // Gibt die Position der Zeichnung in Pixeln zurück
  147. __declspec( dllexport ) const Punkt &getPosition() const;
  148. // Gibt die Größe der Zeichnung in Pixeln zurück. x für Breite und y für Höhe
  149. __declspec( dllexport ) const Punkt &getGröße() const;
  150. // Gibt die Breite der Zeichnung in Pixeln zurück
  151. __declspec( dllexport ) int getBreite() const;
  152. // Gibt die Höhe der Zeichnung in Pixeln zurück
  153. __declspec( dllexport ) int getHöhe() const;
  154. // Gibt die X Position der Zeichnung in Pixeln zurück
  155. __declspec( dllexport ) int getX() const;
  156. // Gibt die Y Position der Zeichnung in Pixeln zurück
  157. __declspec( dllexport ) int getY() const;
  158. // Gibt einen Zeiger auf das Tooltip Objekt zurück, walls es verwendet wird
  159. __declspec( dllexport ) ToolTip *getToolTip() const;
  160. // Gibt einen Zeiger auf das Tooltip Objekt ohne erhöhten Reference Counter zurück, walls es verwendet wird
  161. __declspec( dllexport ) ToolTip *zToolTip() const;
  162. // Gibt zurück, ob bestimmte Styles gesetzt wurden
  163. // style: Die Styles, die überprüft werden sollen
  164. // return: 1, falls alle Styles in style gesetzt wurden
  165. __declspec( dllexport ) inline bool hatStyle( __int64 style ) const;
  166. // Gibt zurück, ob bestimmte Styles nicht gesetzt wurden
  167. // style: Die Styles, die geprüft werden sollen
  168. // return: 1, falls alle Styles in style nicht gesetzt wurden
  169. __declspec( dllexport ) inline bool hatStyleNicht( __int64 style ) const;
  170. // Kopiert die Komplette Zeichnung, so dass sie ohne Effekt auf das Original verändert werden kann
  171. __declspec( dllexport ) virtual Zeichnung *dublizieren() const;
  172. };
  173. // Ein Array von Zeichnungen, der von den Bildschirm Klassen verwendet wird, um die Objekte der GUI zu speichern
  174. class ZeichnungArray// Array von Zeichnungen
  175. {
  176. private:
  177. Zeichnung *This;
  178. ZeichnungArray *next;
  179. int index;
  180. public:
  181. // Konstruktor
  182. __declspec( dllexport ) ZeichnungArray();
  183. // Destruktor
  184. __declspec( dllexport ) ~ZeichnungArray();
  185. // Fügt dem Array eine Zeichnung hinzu. Es kann jede Zeichnung nur einmal hinzugefügt werden
  186. // obj: Die neue Zeichnung
  187. // return: 1, falls die Zeichnung erfolgreich hinzugefügt wurde.
  188. __declspec( dllexport ) bool addZeichnung( Zeichnung *obj );
  189. // Entfernt eine Zeichnung
  190. // obj: Die Zeichnung, die entfernt werden soll
  191. // return 1, falls die Zeichnung erfolgreich entfernt wurde
  192. __declspec( dllexport ) bool removeZeichnung( Zeichnung *obj );
  193. // Entfernt eine Zeichnung
  194. // i: Der Index der Zeichnung, die entfernt werden soll
  195. // return 1, falls die Zeichnung erfolgreich entfernt wurde
  196. __declspec( dllexport ) bool removeZeichnung( int i );
  197. // Setzt den Zeiger auf das Nächste Array Element auf 0
  198. __declspec( dllexport ) void setNext0();
  199. // Aktualisiert die Array indizes.
  200. // i: Der Index des ersten Elements
  201. __declspec( dllexport ) void updateIndex( int i );
  202. // Gibt den Zeiger auf das nchste Array Element zurück
  203. __declspec( dllexport ) ZeichnungArray *getNext() const;
  204. // Gibt eine Zeichnung zurück
  205. // i: Der Index der Zeichnung
  206. __declspec( dllexport ) Zeichnung *getZeichnung( int i ) const;
  207. // Gibt die Zeichnung dieses Array Elements zurück
  208. __declspec( dllexport ) Zeichnung *getZeichnung() const;
  209. // Gibt den Index dieses Array Elements zurück
  210. __declspec( dllexport ) int getIndex() const;
  211. // Sendet an alle Zeichnungen ein Maus Ereignis. Die zuletzt hinzugefügte Zeichnung bekommt das Ereignis als Erste
  212. // me: Das Ereignis
  213. __declspec( dllexport ) void sendMausAll( MausEreignis &me ) const;
  214. // Sendet an alle Zeichnungen ein Tastatur Ereignis. Die zuletzt hinzugefügte Zeichnung bekommt das Ereignis als Erste
  215. // te: Das Ereignis
  216. __declspec( dllexport ) void sendTastaturAll( TastaturEreignis &te ) const;
  217. // Zeichnet alle Zeichnungen. Die zuletzt hinzugefügte Zeichnung ist oben
  218. // zRObj: Das Bild, in das alle Zeichnungen gezeichnet werden sollen
  219. __declspec( dllexport ) void render( Bild &zRObj );
  220. // Verarbeitet bei allen Zeichnungen die Vergangene Zeit seit dem letzten Aufruf der Funktion
  221. // tickVal: Die vergangene Zeit in Sekunden
  222. __declspec( dllexport ) bool tick( double tickval );
  223. };
  224. // Eine Zeichnung für das 2D GUI Framework mit Hintergrund, Rahmen und Scroll Balken
  225. class ZeichnungHintergrund : public Zeichnung
  226. {
  227. public:
  228. class Style : public Zeichnung::Style
  229. {
  230. public:
  231. const static __int64 Rahmen = 0x00010; // Wenn dieser Flag gesetzt wird, bekommt die Zeichnugn einen Rahmen
  232. const static __int64 Hintergrund = 0x00020; // Wenn dieser Flag gesetzt wird, bekommt die Zeichnung einen Hintergrund
  233. const static __int64 HAlpha = 0x00040; // Wenn dieser Flag gesetzt wird, wird der Hintergrund durchsichtig. Benötigt Flag Hintergrund
  234. const static __int64 HBild = 0x00080; // Wenn dieser Flag gesetzt wird, wird ein Bild als hintergrund verwendet. Benötigt Flag Hintergrund
  235. const static __int64 Buffered = 0x00100; // Wenn dieser Flag gesetzt wird, Erscheint ein Farbübergang als Rahmen
  236. const static __int64 VScroll = 0x00200; // Wenn dieser Flag gesetzt wird, erscheint eine Scrollbar am rechten Rand
  237. const static __int64 HScroll = 0x00400; // Wenn dieser Flag gesetzt wird, erscheint eine Scrollbar am unteren Rand
  238. };
  239. protected:
  240. int hintergrundFarbe;
  241. LRahmen *rahmen;
  242. Bild *hintergrundBild;
  243. AlphaFeld *hintergrundFeld;
  244. VScrollBar *vertikalScrollBar;
  245. HScrollBar *horizontalScrollBar;
  246. Punkt innenPosition;
  247. Punkt innenGröße;
  248. public:
  249. // Konstruktor
  250. __declspec( dllexport ) ZeichnungHintergrund();
  251. // Destruktor
  252. __declspec( dllexport ) ~ZeichnungHintergrund();
  253. // Setzt das Hintergrund Bild (benötigt Flag zum Zeichnen: Hintergrund, HBild)
  254. // bild: Das Bild wird kopiert und als Hintergrundbild verwendet
  255. __declspec( dllexport ) void setHintergrundBild( Bild *bild );
  256. // Setzt einen Zeiger auf das Hintergrund Bild (benötigt Flag zum Zeichnen: Hintergrund)
  257. // bild: Das Bild wid ohne es zu kopieren verwendet
  258. __declspec( dllexport ) void setHintergrundBildZ( Bild *bild );
  259. // Setzt die Hintergrund Farbe (benötigt Flag zum Zeichnen: Hintergrund)
  260. // fc: Die Hintergrundfarbe im A8R8G8B8 Format
  261. __declspec( dllexport ) void setHintergrundFarbe( int fc );
  262. // Setzt einen Zeiger auf das AlphaFeld (benötigt Flag zum Zeichnen: Buffered)
  263. // buff: Das AlphaFeld, das über den Hintergrund gezeichnet werden soll
  264. __declspec( dllexport ) void setAlphaFeldZ( AlphaFeld *buff );
  265. // Setzt die Stärke des AlphaFeldes (benötigt Flag zum Zeichnen: Buffered)
  266. // st: Die Stärke des AlphaFeldes, welches über dem Hintergrund gezeichnet werden soll
  267. __declspec( dllexport ) void setAlphaFeldStärke( int st );
  268. // Setzt die Farbe des AlphaFeldes (benötigt Flag zum Zeichnen: Buffered)
  269. // fc: Die Farbe des AlphaFeldes, welches über dem Hintergrund gezeichnet werden soll
  270. __declspec( dllexport ) void setAlphaFeldFarbe( int fc );
  271. // Setzt einen Zeiger zu dem Linien Rahmen, der um das TextFeld gezeichnet werden soll (benötigt Flag zum Zeichnen: Rahmen)
  272. // ram: Der Rahmen
  273. __declspec( dllexport ) void setLinienRahmenZ( LRahmen *ram );
  274. // Setzt die Breite des Linien Rahmens (benötigt Flag zum Zeichnen: Rahmen)
  275. // br: Die Breite in Pixeln
  276. __declspec( dllexport ) void setLinienRahmenBreite( int br );
  277. // Setzt die Farbe des Linien Rahmens (benötigt Flag zum Zeichnen: Rahmen)
  278. // fc: Die Farbe im A8R8G8B8 Format
  279. __declspec( dllexport ) void setLinienRahmenFarbe( int fc );
  280. // Setzt die Scrollgeschwindigkeit der vertikalen ScrollBar (benötigt Flag zum Zeichnen: VScroll)
  281. // ks: Die Scrollgeschwindigkeit in Pixeln für jeden Maus Klick
  282. __declspec( dllexport ) void setVertikalKlickScroll( int ks );
  283. // Scrollt an eine Bestimmte Stelle bei der vertikalen ScrollBar (benötigt Flag zum Zeichnen: VScroll)
  284. // pos: Das Scroll Offset in Pixeln.
  285. __declspec( dllexport ) void setVertikalScrollPos( int pos );
  286. // Setzt die Farbe der vertikalen ScrollBar (benötigt Flag zum Zeichnen: VScroll)
  287. // f: Die Fordergrundfarbe der ScrollBar im A8R8G8B8 Format
  288. // bgF: Die Hintergrundfarbe der ScrollBar im A8R8G8B8 Format
  289. __declspec( dllexport ) void setVertikalScrollFarbe( int f, int bgF );
  290. // Setzt die Scrollgeschwindigkeit der horizontalen ScrollBar (benötigt Flag zum Zeichnen: HScroll)
  291. // ks: Die Scrollgeschwindigkeit in Pixeln für jeden Maus Klick
  292. __declspec( dllexport ) void setHorizontalKlickScroll( int ks );
  293. // Scrollt an eine Bestimmte Stelle bei der horizontalen ScrollBar (benötigt Flag zum Zeichnen: HScroll)
  294. // pos: Das Scroll Offset in Pixeln.
  295. __declspec( dllexport ) void setHorizontalScrollPos( int pos );
  296. // Setzt die Farbe der horizontalen ScrollBar (benötigt Flag zum Zeichnen: HScroll)
  297. // f: Die Fordergrundfarbe der ScrollBar im A8R8G8B8 Format
  298. // bgF: Die Hintergrundfarbe der ScrollBar im A8R8G8B8 Format
  299. __declspec( dllexport ) void setHorizontalScrollFarbe( int f, int bgF );
  300. // Updated den Zeichenhintergrund
  301. // tickVal: Die vergangene Zeit in Sekunden, die seit dem Letzten Aufruf dieser Funktion verstrichen ist
  302. // return: 1, wenn das Bild neu gezeichnet werden muss. 0 sonnst
  303. __declspec( dllexport ) bool tick( double tickVal ) override;
  304. // Zeichnet den Hintergrund eines Zeichnunges nach rObj
  305. __declspec( dllexport ) void render( Bild &rObj ) override;
  306. // Gibt das Hintergrundbild zurück.
  307. // return: 0, falls kein Hintergrundbild verwendet wird
  308. __declspec( dllexport ) Bild *getHintergrundBild() const;
  309. // Gibt das Hintergrundbild ohne erhöhten reference Counter zurück.
  310. // return: 0, falls kein Hintergrundbild verwendet wird
  311. __declspec( dllexport ) Bild *zHintergrundBild() const;
  312. // Gibt die Hintergrundfarbe im A8R8G8B8 Format zurück
  313. __declspec( dllexport ) int getHintergrundFarbe() const;
  314. // Gibt das AlphaFeld zurück, das über den Hintergrund gezeichnet wird.
  315. // return: 0, falls das AlphaFeld nicht definiert wurde
  316. __declspec( dllexport ) AlphaFeld *getAlphaFeld() const;
  317. // Gibt das AlphaFeld ohne erhöhten Reference Counter zurück, das über den Hintergrund gezeichnet wird.
  318. // return: 0, falls das AlphaFeld nicht definiert wurde
  319. __declspec( dllexport ) AlphaFeld *zAlphaFeld() const;
  320. // Git die Stärke des Alphafeldes zurück
  321. __declspec( dllexport ) int getAlphaFeldStärke() const;
  322. // Gibt die Farbe des Alphafedes im A8R8G8B8 Format zurück
  323. __declspec( dllexport ) int getAlphaFeldFarbe() const;
  324. // Gibt den Rahmen zurück
  325. // return: 0, falls kein Rahmen definiert wurde
  326. __declspec( dllexport ) LRahmen *getLinienRahmen() const;
  327. // Gibt den Rahmen ohne erhöhten Reference Counter zurück
  328. // return: 0, falls kein Rahmen definiert wurde
  329. __declspec( dllexport ) LRahmen *zLinienRahmen() const;
  330. // Gibt die Breite des Rahmens in Pixeln zurück
  331. __declspec( dllexport ) int getLinienRahmenBreite() const;
  332. // Gibt die Farbe des Rahmens im A8R8G8B8 Format zurück
  333. __declspec( dllexport ) int getLinienRahmenFarbe() const;
  334. // Gibt die Scroll geschwindigkeit der vertikalen Scroll Bar zurück
  335. __declspec( dllexport ) int getVertikalKlickScroll() const;
  336. // Gibt die Scroll Position der vertikalen Scroll Bar zurück
  337. __declspec( dllexport ) int getVertikalScrollPos() const;
  338. // Gibt die Farbe der vertikalen Scroll Bar im A8R8G8B8 Format zurück
  339. __declspec( dllexport ) int getVertikalScrollFarbe() const;
  340. // Gibt die Hintergrundfarbe der vertikalen Scroll Bar im A8R8G8B8 Format zurück
  341. __declspec( dllexport ) int getVertikalScrollHintergrund() const;
  342. // Gibt die Scroll geschwindigkeit der horizontalen Scroll Bar zurück
  343. __declspec( dllexport ) int getHorizontalKlickScroll() const;
  344. // Gibt die Scroll Position der horizontalen Scroll Bar zurück
  345. __declspec( dllexport ) int getHorizontalScrollPos() const;
  346. // Gibt die Farbe der horizontalen Scroll Bar im A8R8G8B8 Format zurück
  347. __declspec( dllexport ) int getHorizontalScrollFarbe() const;
  348. // Gibt die Hintergrundfarbe der horizontalen Scroll Bar im A8R8G8B8 Format zurück
  349. __declspec( dllexport ) int getHorizontalScrollHintergrund() const;
  350. // Erzeugt eine Kopie der Zeichnung, die ohne Auswirkungen auf das Original verändert werden kann
  351. __declspec( dllexport ) virtual Zeichnung *dublizieren() const;
  352. };
  353. }
  354. #endif