123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590 |
- #ifndef Fenster_H
- #define Fenster_H
- #include "Zeichnung.h"
- namespace Framework
- {
- class VScrollBar;
- class HScrollBar;
- class TextFeld;
- class LRahmen;
- class Bildschirm;
- class AlphaFeld;
- class Schrift;
- class Text;
- class Bild;
- class WFenster;
- class WFensterArray;
- class Fenster;
- #ifdef WIN32
-
-
- __declspec( dllexport ) WNDCLASS F_Normal( HINSTANCE hInst );
-
-
- __declspec( dllexport ) WNDCLASSEX F_NormalEx( HINSTANCE hInst );
-
- __declspec( dllexport ) LRESULT CALLBACK WindowProc( HWND hwnd, UINT message, WPARAM wparam, LPARAM lparam );
-
- __declspec( dllexport ) void StartNachrichtenSchleife();
-
-
- __declspec( dllexport ) void StopNachrichtenSchleife( HWND hwnd );
-
- __declspec( dllexport ) unsigned char VirtualZuChar( int Virtual );
-
- class WFenster
- {
- private:
- HWND hWnd;
- int style;
- void *makParam;
- void *sakParam;
- void *takParam;
- bool( *MausAktion )( void *, void *, MausEreignis );
- void( *VSchließAktion )( void *, void * );
- void( *NSchließAktion )( void *, void * );
- bool( *TastaturAktion )( void *, void *, TastaturEreignis );
- Bildschirm *screen;
- int mx, my;
- bool verschiebbar;
- int ref;
- HWND rahmen;
- HBITMAP bitmap;
- HDC hdc;
- public:
-
- __declspec( dllexport ) WFenster();
-
-
- __declspec( dllexport ) WFenster( HWND hWnd );
-
- __declspec( dllexport ) ~WFenster();
-
-
-
- __declspec( dllexport ) void erstellen( int style, WNDCLASS wc );
-
-
-
-
- __declspec( dllexport ) void erstellenEx( int exStyle, int style, WNDCLASSEX wc );
-
-
- __declspec( dllexport ) void setAnzeigeModus( int mod );
-
- __declspec( dllexport ) bool setFokus();
-
-
- __declspec( dllexport ) void setPosition( Punkt &pos );
-
-
- __declspec( dllexport ) void setSize( Punkt &größe );
-
-
-
- __declspec( dllexport ) void setSize( int breite, int höhe );
-
-
-
- __declspec( dllexport ) void setBounds( Punkt &pos, Punkt &größe );
-
-
- __declspec( dllexport ) void setBildschirm( Bildschirm *screen );
-
- __declspec( dllexport ) void zerstören();
-
-
- __declspec( dllexport ) void doMausAktion( MausEreignis &me );
-
- __declspec( dllexport ) void doVSchließAktion();
-
- __declspec( dllexport ) void doNSchließAktion();
-
-
- __declspec( dllexport ) void doTastaturAktion( TastaturEreignis &et );
-
- __declspec( dllexport ) void doRestoreMessage();
-
-
- __declspec( dllexport ) void setMausEreignisParameter( void *p );
-
-
- __declspec( dllexport ) void setSchließEreignisParameter( void *p );
-
-
- __declspec( dllexport ) void setTastaturEreignisParameter( void *p );
-
-
-
-
- __declspec( dllexport ) void setMausAktion( bool( *MausAk )( void *, void *, MausEreignis ) );
-
-
- __declspec( dllexport ) void setVSchließAktion( void( *vSchließAk )( void *, void * ) );
-
-
- __declspec( dllexport ) void setNSchließAktion( void( *nSchließAk )( void *, void * ) );
-
-
-
-
-
- __declspec( dllexport ) void setTastaturAktion( bool( *TastaturAk )( void *, void *, TastaturEreignis ) );
-
-
- __declspec( dllexport ) void setFensterHandle( HWND hWnd );
-
-
- __declspec( dllexport ) void setVerschiebbar( bool verschiebbar );
-
-
-
- __declspec( dllexport ) void ladeRahmenFenster( Bild *zBild, HINSTANCE hinst );
-
- __declspec( dllexport ) HWND getFensterHandle() const;
-
- __declspec( dllexport ) Punkt getPosition() const;
-
- __declspec( dllexport ) Punkt getGröße() const;
-
- __declspec( dllexport ) Punkt getKörperGröße() const;
-
- __declspec( dllexport ) int getKörperBreite() const;
-
- __declspec( dllexport ) int getKörperHöhe() const;
-
- __declspec( dllexport ) bool hatMausAktion() const;
-
- __declspec( dllexport ) bool hatVSchließAktion() const;
-
- __declspec( dllexport ) bool hatNSchließAktion() const;
-
- __declspec( dllexport ) bool hatTastaturAktion() const;
-
- __declspec( dllexport ) Bildschirm *getBildschirm() const;
-
- __declspec( dllexport ) Bildschirm *zBildschirm() const;
-
- __declspec( dllexport ) bool istVerschiebbar() const;
-
-
- __declspec( dllexport ) WFenster *getThis();
-
-
- __declspec( dllexport ) WFenster *release();
- };
-
- class WFensterArray
- {
- private:
- WFensterArray *next;
- WFenster *This;
- public:
-
- __declspec( dllexport ) WFensterArray();
-
- __declspec( dllexport ) ~WFensterArray();
-
-
- __declspec( dllexport ) bool addFenster( WFenster *fenster );
-
-
- __declspec( dllexport ) bool removeFenster( WFenster *fenster );
-
- __declspec( dllexport ) WFensterArray* getNext();
-
- __declspec( dllexport ) void setNext0();
-
- __declspec( dllexport ) void del();
-
-
- __declspec( dllexport ) bool sendVSchließMessage( HWND hWnd );
-
-
- __declspec( dllexport ) bool sendNSchließMessage( HWND hwnd );
-
-
-
- __declspec( dllexport ) bool sendMausMessage( HWND hWnd, MausEreignis &me );
-
-
-
- __declspec( dllexport ) bool sendTastaturMessage( HWND hwnd, TastaturEreignis &te );
-
-
- __declspec( dllexport ) bool sendRestoreMessage( HWND hwnd );
-
- __declspec( dllexport ) WFenster *getThis();
- };
-
-
-
-
-
- __declspec( dllexport ) void WMessageBox( HWND hWnd, Text *titel, Text *meldung, UINT style );
- #endif
-
- class Fenster : public Zeichnung
- {
- public:
- class Style : public Zeichnung::Style
- {
- public:
- const static __int64 BodyHintergrund = 0x000000008;
- const static __int64 BodyHAlpha = 0x000000010;
- const static __int64 BodyHBild = 0x000000020;
- const static __int64 BodyBuffered = 0x000000040;
- const static __int64 Titel = 0x000000080;
- const static __int64 TitelHintergrund = 0x000000100;
- const static __int64 TitelHAlpha = 0x000000200;
- const static __int64 TitelHBild = 0x000000400;
- const static __int64 TitelBuffered = 0x000000800;
- const static __int64 Closable = 0x000001000;
- const static __int64 ClosingHintergrund = 0x000002000;
- const static __int64 ClosingHAlpha = 0x000004000;
- const static __int64 ClosingHBild = 0x000008000;
- const static __int64 ClosingBuffer = 0x000010000;
- const static __int64 ClosingKlickBuffer = 0x000020000;
- const static __int64 Beweglich = 0x000040000;
- const static __int64 BreiteChangeable = 0x000080000;
- const static __int64 HeightChangeable = 0x000100000;
- const static __int64 TitelHeightChangeable = 0x000200000;
- const static __int64 MinBr = 0x000400000;
- const static __int64 MaxBr = 0x000800000;
- const static __int64 MinHi = 0x001000000;
- const static __int64 MaxHi = 0x002000000;
- const static __int64 BodyMinBr = 0x004000000;
- const static __int64 BodyMaxBr = 0x008000000;
- const static __int64 BodyMinHi = 0x010000000;
- const static __int64 BodyMaxHi = 0x020000000;
- const static __int64 VScroll = 0x040000000;
- const static __int64 HScroll = 0x080000000;
- const static __int64 METransparenz = 0x100000000;
- const static __int64 Rahmen = 0x200000000;
- const static __int64 min_max = MinHi | MaxHi | MaxBr | MaxHi;
- const static __int64 body_min_max = BodyMinBr | BodyMaxBr | BodyMinHi | BodyMaxBr;
- const static __int64 scroll = VScroll | HScroll;
- const static __int64 nichtfixiert = TitelHeightChangeable | HeightChangeable | BreiteChangeable | Beweglich;
- const static __int64 normal = Sichtbar | Erlaubt | Rahmen | Titel | TitelBuffered | Closable | ClosingHBild | ClosingKlickBuffer | Beweglich;
- };
- private:
- bool( *closingMe )( void *, void *, MausEreignis );
- void *closingMeParam;
- LRahmen *rahmen;
- TextFeld *titel;
- ZeichnungArray *members;
- int bgBodyColor;
- Bild *bgBodyPicture;
- AlphaFeld *bodyBuffer;
- int bgClosingFarbe;
- Bild *bgClosingBild;
- AlphaFeld *closeBuffer;
- AlphaFeld *closeKlickBuffer;
- VScrollBar *vScroll;
- HScrollBar *hScroll;
- Punkt min, max;
- Punkt kMin, kMax;
- bool closeKlick, klick;
- int mx, my;
- int ref;
- public:
-
- __declspec( dllexport ) Fenster();
-
- __declspec( dllexport ) virtual ~Fenster();
-
-
- __declspec( dllexport ) void setRahmenZ( LRahmen *ram );
-
-
- __declspec( dllexport ) void setRFarbe( int f );
-
-
- __declspec( dllexport ) void setRBreite( int br );
-
-
- __declspec( dllexport ) void setTitel( Text *txt );
-
-
- __declspec( dllexport ) void setTitelZ( Text *txt );
-
-
- __declspec( dllexport ) void setTitel( const char *txt );
-
-
- __declspec( dllexport ) void setTTextFeldZ( TextFeld *tf );
-
-
- __declspec( dllexport ) void setTSchriftZ( Schrift *schrift );
-
-
- __declspec( dllexport ) void setTSFarbe( int f );
-
-
- __declspec( dllexport ) void setTSSize( int gr );
-
-
- __declspec( dllexport ) void setTBgFarbe( int f );
-
-
- __declspec( dllexport ) void setTAlphaFeldZ( AlphaFeld *af );
-
-
- __declspec( dllexport ) void setTAfFarbe( int f );
-
-
- __declspec( dllexport ) void setTAfStrength( int st );
-
-
- __declspec( dllexport ) void setTBgBild( Bild *b );
-
-
- __declspec( dllexport ) void setTBgBildZ( Bild *b );
-
-
- __declspec( dllexport ) void setTRahmenZ( LRahmen *ram );
-
-
- __declspec( dllexport ) void setTRFarbe( int f );
-
-
- __declspec( dllexport ) void setTRBreite( int br );
-
-
- __declspec( dllexport ) void setKBgFarbe( int f );
-
-
- __declspec( dllexport ) void setKBgBild( Bild *b );
-
-
- __declspec( dllexport ) void setKBgBildZ( Bild *b );
-
-
- __declspec( dllexport ) void setKAlphaFeldZ( AlphaFeld *af );
-
-
- __declspec( dllexport ) void setKAfFarbe( int f );
-
-
- __declspec( dllexport ) void setKAfStrength( int st );
-
-
- __declspec( dllexport ) void setClosingMeParam( void *param );
-
-
-
-
- __declspec( dllexport ) void setClosingMe( bool( *closingMe )( void *, void *, MausEreignis ) );
-
-
- __declspec( dllexport ) void setSBgFarbe( int f );
-
-
- __declspec( dllexport ) void setSBgBild( Bild *b );
-
-
- __declspec( dllexport ) void setSBgBildZ( Bild *b );
-
-
- __declspec( dllexport ) void setSAlphaFeldZ( AlphaFeld *af );
-
-
- __declspec( dllexport ) void setSAfFarbe( int f );
-
-
- __declspec( dllexport ) void setSAfStrength( int st );
-
-
- __declspec( dllexport ) void setSKAlphaFeldZ( AlphaFeld *af );
-
-
- __declspec( dllexport ) void setSKAfFarbe( int f );
-
-
- __declspec( dllexport ) void setSKAfStrength( int st );
-
-
-
- __declspec( dllexport ) void setMin( int mx, int my );
-
-
- __declspec( dllexport ) void setMin( const Punkt &min );
-
-
-
- __declspec( dllexport ) void setMax( int mx, int my );
-
-
- __declspec( dllexport ) void setMax( const Punkt &max );
-
-
-
- __declspec( dllexport ) void setKMin( int mx, int my );
-
-
- __declspec( dllexport ) void setKMin( const Punkt &min );
-
-
-
- __declspec( dllexport ) void setKMax( int mx, int my );
-
-
- __declspec( dllexport ) void setKMax( const Punkt &max );
-
-
- __declspec( dllexport ) void setHScrollBarZ( HScrollBar *hScroll );
-
-
- __declspec( dllexport ) void setVScrollBarZ( VScrollBar *vScroll );
-
-
- __declspec( dllexport ) void setHSBMax( int max );
-
-
- __declspec( dllexport ) void setVSBMax( int max );
-
-
- __declspec( dllexport ) void setHSBScroll( int scroll );
-
-
- __declspec( dllexport ) void setVSBScroll( int scroll );
-
-
- __declspec( dllexport ) void addMember( Zeichnung *zObj );
-
-
- __declspec( dllexport ) void removeMember( Zeichnung *zObj );
-
-
-
- __declspec( dllexport ) bool tick( double tickval ) override;
-
-
- __declspec( dllexport ) void doMausEreignis( MausEreignis &me ) override;
-
-
- __declspec( dllexport ) void doTastaturEreignis( TastaturEreignis &te ) override;
-
-
- __declspec( dllexport ) void render( Bild &zRObj ) override;
-
- __declspec( dllexport ) LRahmen *getRahmen() const;
-
- __declspec( dllexport ) LRahmen *zRahmen() const;
-
- __declspec( dllexport ) int getRFarbe() const;
-
- __declspec( dllexport ) int getRBreite() const;
-
- __declspec( dllexport ) Text *getTitel() const;
-
- __declspec( dllexport ) Text *zTitel() const;
-
- __declspec( dllexport ) TextFeld *getTTextFeld() const;
-
- __declspec( dllexport ) TextFeld *zTTextFeld() const;
-
- __declspec( dllexport ) Schrift *getTSchrift() const;
-
- __declspec( dllexport ) Schrift *zTSchrift() const;
-
- __declspec( dllexport ) int getTSFarbe() const;
-
- __declspec( dllexport ) int getTSSize() const;
-
- __declspec( dllexport ) int getTBgFarbe() const;
-
- __declspec( dllexport ) AlphaFeld *getTAlphaFeld() const;
-
- __declspec( dllexport ) AlphaFeld *zTAlphaFeld() const;
-
- __declspec( dllexport ) int getTAfFarbe() const;
-
- __declspec( dllexport ) int getTAfStrength() const;
-
- __declspec( dllexport ) Bild *getTBgBild() const;
-
- __declspec( dllexport ) Bild *zTBgBild() const;
-
- __declspec( dllexport ) LRahmen *getTRahmen() const;
-
- __declspec( dllexport ) LRahmen *zTRahmen() const;
-
- __declspec( dllexport ) int getTRFarbe() const;
-
- __declspec( dllexport ) int getTRBreite() const;
-
- __declspec( dllexport ) int getKBgFarbe() const;
-
- __declspec( dllexport ) Bild *getKBgBild() const;
-
- __declspec( dllexport ) Bild *zKBgBild() const;
-
- __declspec( dllexport ) AlphaFeld *getKAlphaFeld() const;
-
- __declspec( dllexport ) AlphaFeld *zKAlphaFeld() const;
-
- __declspec( dllexport ) int getKAfFarbe() const;
-
- __declspec( dllexport ) int getKAfStrength() const;
-
- __declspec( dllexport ) int getSBgFarbe() const;
-
- __declspec( dllexport ) Bild *getSBgBild() const;
-
- __declspec( dllexport ) Bild *zSBgBild() const;
-
- __declspec( dllexport ) AlphaFeld *getSAlphaFeld() const;
-
- __declspec( dllexport ) AlphaFeld *zSAlphaFeld() const;
-
- __declspec( dllexport ) int getSAfFarbe() const;
-
- __declspec( dllexport ) int getSAfStrength() const;
-
- __declspec( dllexport ) AlphaFeld *getSKAlphaFeld() const;
-
- __declspec( dllexport ) AlphaFeld *zSKAlphaFeld() const;
-
- __declspec( dllexport ) int getSKAfFarbe() const;
-
- __declspec( dllexport ) int getSKAfStrength() const;
-
- __declspec( dllexport ) const Punkt &getMin() const;
-
- __declspec( dllexport ) const Punkt &getMax() const;
-
- __declspec( dllexport ) const Punkt &getKMin() const;
-
- __declspec( dllexport ) const Punkt &getKMax() const;
-
- __declspec( dllexport ) VScrollBar *getVScrollBar() const;
-
- __declspec( dllexport ) VScrollBar *zVScrollBar() const;
-
- __declspec( dllexport ) HScrollBar *getHScrollBar() const;
-
- __declspec( dllexport ) HScrollBar *zHScrollBar() const;
-
- __declspec( dllexport ) ZeichnungArray *getMembers() const;
-
- __declspec( dllexport ) Zeichnung *dublizieren() const override;
-
-
- __declspec( dllexport ) Fenster *getThis();
-
-
- __declspec( dllexport ) Fenster *release();
- };
- }
- #endif
|