#ifndef AccountAnsehen_H
#define AccountAnsehen_H

#include <Klient.h>
#include <Fenster.h>
#include <Animation.h>
#include <Knopf.h>
#include "Aktivität/AccountAktivität.h"
#include "Historie/AccountHistorie.h"
#include "Spiele_Karten/AccountSpieleUndKarten.h"
#include "SpielPartner/AccountSpielPartner.h"
#include "Statistik/AccountStatistik.h"
#include "Suchen/AccountSuchen.h"

using namespace Framework;

class AccountAnsehen : public Zeichnung
{
private:
	Animation2D *laden;
	Punkt begPos;
	Punkt begGröße;
	Punkt pos1;
	Punkt größe1;
	Punkt pos2;
	Punkt größe2;
	Punkt bildschirmGröße;
	LRahmen *rahmen;
	Knopf *aktivitätK;
	Knopf *historieK;
	Knopf *spieleUndKartenK;
	Knopf *spielPartnerK;
	Knopf *statistikK;
	Knopf *suchenK;
	AccountSuchen *suche;
	AccountAktivität *aktivität;
	AccountSpieleUndKarten *spieleUndKarten;
	AccountSpielPartner *partner;
	AccountStatistik *statistik;
	AccountHistorie *historie;
	int account;
	int alpha;
	int alpha2;
	bool sichtbar;
	int jetzt;
	int nachher;
	int prozent1;
	int prozent2;
	double tickVal;
	int animation;
	int knopfX;
	bool rend;
	int ref;

public:
	// Konstruktor
	AccountAnsehen( Schrift *zSchrift, Fenster *zNachLoginFenster, int x );
	// Destruktor
	~AccountAnsehen();
	// nicht constant
	void setSichtbar( bool sicht );
	bool setSpielerDetails( int account, int nachher );
	bool tick( double tickVal ) override;
	void doMausEreignis( MausEreignis &me ) override;
	void doTastaturEreignis( TastaturEreignis &te ) override;
	void render( Bild &zRObj ) override;
	// constant
	bool istAnimiert() const;
	bool istSichtbar() const;
	// Reference Counting
	AccountAnsehen *getThis();
	AccountAnsehen *release();
};

#endif