⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 gamestable.cpp

📁 qgo-1.5.4-r3.tar.gz linux下一个很好玩的游戏
💻 CPP
字号:
/* *  gamestable.cpp */#include "gamestable.h"#include "misc.h"#include "setting.h"#include <qheader.h>#include <qlistview.h>#include <qpushbutton.h>#include <qlayout.h>#include <qvariant.h>#include <qtooltip.h>#include <qwhatsthis.h>#include <qwidget.h>GamesTable::GamesTable( QWidget *parent, const char *name, bool /*modal*/, WFlags fl)	: QListView(parent, name, fl){	addColumn(QObject::tr("Id", "GamesTable Id number"));	addColumn(QObject::tr("White", "GamesTable White name"));	addColumn(QObject::tr("WR", "GamesTable White Rank"));	addColumn(QObject::tr("Black", "GamesTable Black name"));	addColumn(QObject::tr("BR", "GamesTable Black Rank"));	addColumn(QObject::tr("Mv", "GamesTable Move"));	addColumn(QObject::tr("Sz", "GamesTable Size"));	addColumn(QObject::tr("H", "GamesTable Handicap"));	addColumn(QObject::tr("K", "GamesTable Komi"));	addColumn(QObject::tr("By", "GamesTable Byoyomi time"));	addColumn(QObject::tr("FR", "GamesTable Free/Rated type of game"));	addColumn(QObject::tr("Ob", "GamesTable number of Observers"));	setColumnAlignment(0, AlignRight);	setColumnAlignment(1, AlignLeft);	setColumnAlignment(3, AlignLeft);	setColumnAlignment(5, AlignRight);	setColumnAlignment(6, AlignRight);	setColumnAlignment(7, AlignRight);	setColumnAlignment(8, AlignRight);	setColumnAlignment(9, AlignRight);	setColumnAlignment(10, AlignRight);	setColumnAlignment(11, AlignRight);	setProperty("focusPolicy", (int)QListView::NoFocus );	setProperty("resizePolicy", (int)QListView::AutoOneFit );	// set sorting order for games by wrank	setSorting(2);	setAllColumnsShowFocus(true);	//setItemMargin(2);}GamesTable::~GamesTable(){}/* *   GamesTableItem */GamesTableItem::GamesTableItem(GamesTable *parent, const char* name)	: QListViewItem(parent, name)  {}GamesTableItem::GamesTableItem(GamesTableItem *parent, const char* name)	: QListViewItem(parent, name)  {}GamesTableItem::GamesTableItem(GamesTable *parent, QString label1, QString label2,                QString label3, QString label4, QString label5,                QString label6, QString label7, QString label8,				QString label9, QString label10, QString label11, QString label12, QString label13)	: QListViewItem(parent, label1, label2, label3, label4, label5, label6, label7, label8){		// set name for watch/mark and ";" for correct recognition	if (label13)	{		int len = label13.length() - 1;		watched = label13[len] == 'W';		its_me = label13[0] == 'A';	}	else	{		watched = false;		its_me = false;	}	// QListViewItem only supports up to 8 labels, check for the rest	if (label9)	{		setText(8, label9);		if (label10)		{			setText(9, label10);			if (label11)			{				setText(10, label11);				if (label12)				{					setText(11, label12);					if (label13)					{						setText(12, label13);					}				}			}		}	}}GamesTableItem::~GamesTableItem(){}void GamesTableItem::paintCell( QPainter *p, const QColorGroup &cg,				 int column, int width, int alignment ){	QColorGroup _cg( cg );//	QColor c = _cg.text();  if (itemPos() % (2*height()))    _cg.setColor(QColorGroup::Base, setting->colorAltBackground);//QColor::QColor(242,242,242,QColor::Rgb));//cg.color(QColorGroup::Midlight));//QColor::QColor("AliceBlue")); 	if (its_me)		_cg.setColor(QColorGroup::Text, Qt::blue);	else if (watched)		_cg.setColor(QColorGroup::Text, Qt::red);	_cg.setColor(QColorGroup::Background, setting->colorBackground);	QListViewItem::paintCell(p, _cg, column, width, alignment);//	_cg.setColor(QColorGroup::Text, c);}void GamesTableItem::ownRepaint(){	if (text(12))	{		its_me = text(12).at(0) == 'A';		watched = text(12).at(text(7).length()-1) == 'W';	}	else	{		watched = false;		its_me = false;	}}// for correct sorting by rk and optionally txtQString GamesTableItem::key(int column, bool /*ascending*/) const{	switch (column)	{		// rank, however, considered to be most used...		case 2:			// return invisible column's text			return text(12);		// rank w/b		// case 2 is original here, but it's slow//		case 2:		case 4:			return rkToKey(text(column)) + text(column - 1).lower();			break;		// id, move, observe, Ob		case 0:		case 5:		case 11:			return text(column).stripWhiteSpace().rightJustify(3, '0') + text(12);			break;		// Sz, By		case 6:		case 9:			return text(column).stripWhiteSpace().rightJustify(2, '0') + text(12);			break;		// K		case 7:			return text(column).stripWhiteSpace().rightJustify(5, '0') + text(12);			break;					default:			return text(column).lower() + text(12);			break;	}}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -