#ifndef _TABLE_INCLUDED_
#define _TABLE_INCLUDED_
#include <qwidget.h>
#include <qlist.h>
#include <qscrbar.h>
#include "hand.h"
#include "card.h"
#define TEXT_H 15
#define TEXT_W 200
#define BET_Y 130
#define VALUE_Y (BET_Y + TEXT_H)
#define STATUS_Y (VALUE_Y + TEXT_H)
class CardTable : public QWidget {
Q_OBJECT
private:
int _max_hands;
QPixmap *_pixmap_p;
int _pixmap_dirty;
Hand _dealer_hand;
QList <Hand> _player_hands;
QScrollBar *_scroll_p;
void adjustScrollBar(void);
public:
CardTable(int max_hands, QWidget *parent=0, const char *name=0 );
~CardTable() { _player_hands.clear(); delete (_pixmap_p);}
int numHands(void) { return(_player_hands.count()); }
Hand *getDealerHand(void) { return (&_dealer_hand); }
void addPlayerHand(Hand *hp);
Hand *getPlayerHand(int hand_num) {
return (_player_hands.at(hand_num - 1));
}
void addCard(Hand *hp, Card *cp);
Card *removeCard(Hand *hp); // needed for a Split
void drawHand(Hand *hp);
void drawHands(void);
void drawPlayerHands(void);
void updatePlayerHands(void);
void clear(void);
void betText(Hand *hp);
void statusText(Hand *hp, QString text);
private:
void valueText(Hand *hp);
protected:
void resizeEvent(QResizeEvent *re_p) { adjustScrollBar(); }
void paintEvent(QPaintEvent *pe_p) { drawHands(); }
private slots:
void displayPlayerHands(int x_offset);
};
#endif
Documentation generated by root@berlinux on Fre Nov 27 17:29:32 CET 1998