summaryrefslogtreecommitdiffstats
path: root/kwin4/kwin4/kwin4player.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'kwin4/kwin4/kwin4player.cpp')
-rw-r--r--kwin4/kwin4/kwin4player.cpp160
1 files changed, 160 insertions, 0 deletions
diff --git a/kwin4/kwin4/kwin4player.cpp b/kwin4/kwin4/kwin4player.cpp
new file mode 100644
index 00000000..65a7947c
--- /dev/null
+++ b/kwin4/kwin4/kwin4player.cpp
@@ -0,0 +1,160 @@
+/***************************************************************************
+ KWin4Player
+ -------------------
+ begin : August 2001
+ copyright : (C) |1995-2001 by Martin Heni
+ email : martin@heni-online.de
+ ***************************************************************************/
+
+/***************************************************************************
+ * *
+ * This program is free software; you can redistribute it and/or modify *
+ * it under the terms of the GNU General Public License as published by *
+ * the Free Software Foundation; either version 2 of the License, or *
+ * (at your option) any later version. *
+ * *
+ ***************************************************************************/
+
+
+// include files for KDE
+#include <kdebug.h>
+#include <kconfig.h>
+#include <kgamepropertyhandler.h>
+
+#include "kwin4player.h"
+#include "statuswidget.h"
+
+Kwin4Player::Kwin4Player() : KPlayer(), sWidget(0)
+{
+ int id;
+ id=mWin.registerData(dataHandler(),KGamePropertyBase::PolicyDirty,QString("mWin"));
+ id=mRemis.registerData(dataHandler(),KGamePropertyBase::PolicyDirty,QString("mRemis"));
+ id=mLost.registerData(dataHandler(),KGamePropertyBase::PolicyDirty,QString("mLost"));
+ id=mBrk.registerData(dataHandler(),KGamePropertyBase::PolicyDirty,QString("mBrk"));
+ id=mAllWin.registerData(dataHandler(),KGamePropertyBase::PolicyDirty,QString("mAllWin"));
+ id=mAllRemis.registerData(dataHandler(),KGamePropertyBase::PolicyDirty,QString("mAllRemis"));
+ id=mAllLost.registerData(dataHandler(),KGamePropertyBase::PolicyDirty,QString("mAllLost"));
+ id=mAllBrk.registerData(dataHandler(),KGamePropertyBase::PolicyDirty,QString("mAllBrk"));
+
+ dataHandler()->setPolicy(KGamePropertyBase::PolicyDirty,false);
+
+ resetStats();
+ connect(this,SIGNAL(signalPropertyChanged(KGamePropertyBase *,KPlayer *)),
+ this,SLOT(slotPlayerPropertyChanged(KGamePropertyBase *,KPlayer *)));
+}
+
+#include <qlabel.h>
+#include <qlcdnumber.h>
+
+void Kwin4Player::slotPlayerPropertyChanged(KGamePropertyBase *prop, KPlayer * /*player*/)
+{
+ if (!sWidget) return ;
+ if (!isActive()) return ;
+ if (prop->id()==KGamePropertyBase::IdName)
+ {
+ if(userId())
+ sWidget->p1_name->setText(name());
+ else
+ sWidget->p2_name->setText(name());
+ }
+ else if (prop->id()==mWin.id())
+ {
+ if(userId()){
+ sWidget->p1_w->display(mWin);
+ sWidget->p1_n->display(mWin+mRemis+mLost);
+ }
+ else{
+ sWidget->p2_w->display(mWin);
+ sWidget->p2_n->display(mWin+mRemis+mLost);
+ }
+ }
+ else if (prop->id()==mRemis.id())
+ {
+ if(userId()){
+ sWidget->p1_d->display(mRemis);
+ sWidget->p1_n->display(mWin+mRemis+mLost);
+ }
+ else{
+ sWidget->p2_d->display(mRemis);
+ sWidget->p2_n->display(mWin+mRemis+mLost);
+ }
+ }
+ else if (prop->id()==mLost.id())
+ {
+ if(userId()){
+ sWidget->p1_l->display(mLost);
+ sWidget->p1_n->display(mWin+mRemis+mLost);
+ }
+ else{
+ sWidget->p2_l->display(mLost);
+ sWidget->p2_n->display(mWin+mRemis+mLost);
+ }
+ }
+ else if (prop->id()==mBrk.id())
+ {
+ if(userId())
+ sWidget->p1_b->display(mBrk);
+ else
+ sWidget->p2_b->display(mBrk);
+ }
+}
+
+void Kwin4Player::readConfig(KConfig *config)
+{
+ mAllWin.setValue(config->readNumEntry("win",0));
+ mAllRemis.setValue(config->readNumEntry("remis",0));
+ mAllLost.setValue(config->readNumEntry("lost",0));
+ mAllBrk.setValue(config->readNumEntry("brk",0));
+}
+
+void Kwin4Player::writeConfig(KConfig *config)
+{
+ config->writeEntry("win",mAllWin.value());
+ config->writeEntry("remis",mAllRemis.value());
+ config->writeEntry("lost",mAllLost.value());
+ config->writeEntry("brk",mAllBrk.value());
+}
+
+void Kwin4Player::incWin()
+{
+ mWin.setValue(mWin.value()+1);
+ mAllWin.setValue(mAllWin.value()+1);
+}
+
+void Kwin4Player::incLost()
+{
+ mLost.setValue(mLost.value()+1);
+ mAllLost.setValue(mAllLost.value()+1);
+}
+
+void Kwin4Player::incRemis()
+{
+ mRemis.setValue(mRemis.value()+1);
+ mAllRemis.setValue(mAllRemis.value()+1);
+}
+
+void Kwin4Player::incBrk()
+{
+ mBrk.setValue(mBrk.value()+1);
+ mAllBrk.setValue(mAllBrk.value()+1);
+}
+
+void Kwin4Player::resetStats(bool all)
+{
+ mWin=0;
+ mLost=0;
+ mBrk=0;
+ mRemis=0;
+ if (all)
+ {
+ mAllWin=0;
+ mAllLost=0;
+ mAllBrk=0;
+ mAllRemis=0;
+ }
+}
+
+#include "kwin4player.moc"
+
+
+