#ifndef AccountSpielPartner_H #define AccountSpielPartner_H #include #include #include #include #include using namespace Framework; namespace ASPLEDStyle { const int SpielArt = 1; const int Karte = 2; const int Spieler = 4; const int Ausklappbar = 8; } struct AccountSPListeEintragDaten { int style; int id; Text *name; int anzahl; int prozent; }; class AccountSPListeEintrag { private: LRahmen *ram; RCArray< AccountSPListeEintrag > *members; TextFeld *name; TextFeld *anzahl; FBalken *prozent; Knopf *details; Bild *ausklappen; Bild *einklappen; AccountSPListeEintragDaten *daten; Text *sortSpalte; bool sortAbsteigend; double tickVal; bool rend; int ref; // privat int getReihenfolge( int *arr ); public: // Konstruktor AccountSPListeEintrag( AccountSPListeEintragDaten *daten, Schrift *zSchrift ); // Destruktor ~AccountSPListeEintrag(); // nicht constant void addMember( AccountSPListeEintrag *e ); void setSortSpalte( char *sp ); void setSortRichtung( bool absteigend ); bool tick( double tickVal ); void doMausEreignis( MausEreignis &me ); void render( int xOff, int yOff, int breite, Bild &zRObj ); // constant int getHeight() const; AccountSPListeEintragDaten *zDaten() const; // Reference Counting AccountSPListeEintrag *getThis(); AccountSPListeEintrag *release(); }; class AccountSPListe : public Zeichnung { private: Schrift *schrift; LRahmen *ram; VScrollBar *scroll; RCArray< AccountSPListeEintrag > *skp; RCArray< AccountSPListeEintrag > *spk; RCArray< AccountSPListeEintrag > *psk; Text *gruppierung; Text *sortSpalte; bool sortAbsteigend; bool rend; int ref; // privat int getReihenfolge( int *arr ); public: // Konstruktor AccountSPListe( Schrift *zSchrift ); // Destruktor ~AccountSPListe(); // nicht constant void reset(); void ladeDaten( int accId ); void setGruppierung( char *gp ); void setSortSpalte( char *sp ); void setSortRichtung( bool absteigend ); bool tick( double tickVal ) override; void doMausEreignis( MausEreignis &me ) override; void render( Bild &zRObj ) override; // constant // Reference Counting AccountSPListe *getThis(); AccountSPListe *release(); }; class AccountSpielPartner : public Thread { private: Fenster *spielPartnerF; AuswahlBox *gruppAusw; AuswahlBox *sortSpalte; AuswahlBox *sortRichtung; AccountSPListe *liste; int status; int accId; int animation; unsigned char alpha; double tickVal; bool rend; int ref; public: // Konstruktor AccountSpielPartner( Schrift *zSchrift ); // Destruktor ~AccountSpielPartner(); // nicht constant void reset(); void ladeStatistik( int accId ); virtual void thread(); void setSichtbar( bool sichtbar, bool nachRechts ); bool tick( double zeit ); void doMausEreignis( MausEreignis &me ); void render( Bild &zRObj ); // constant int getStatus() const; // Reference Counting AccountSpielPartner *getThis(); AccountSpielPartner *release(); }; #endif;