QTfrontend/pages.cpp
changeset 1932 f586d75c8b6a
parent 1924 8f8fe856ce9d
child 1933 7b8b0a9032d3
equal deleted inserted replaced
1931:ffe420e9e61a 1932:f586d75c8b6a
    57 #include "playrecordpage.h"
    57 #include "playrecordpage.h"
    58 #include "selectWeapon.h"
    58 #include "selectWeapon.h"
    59 #include "igbox.h"
    59 #include "igbox.h"
    60 #include "hats.h"
    60 #include "hats.h"
    61 #include "misc.h"
    61 #include "misc.h"
       
    62 #include "togglebutton.h"
    62 
    63 
    63 PageMain::PageMain(QWidget* parent) : 
    64 PageMain::PageMain(QWidget* parent) : 
    64   AbstractPage(parent)
    65   AbstractPage(parent)
    65 {
    66 {
    66 	QGridLayout * pageLayout = new QGridLayout(this);
    67 	QGridLayout * pageLayout = new QGridLayout(this);
   465 	BtnNetSvrStart->setText(QPushButton::tr("Start server"));
   466 	BtnNetSvrStart->setText(QPushButton::tr("Start server"));
   466 	BtnNetSvrStart->setVisible(haveServer);
   467 	BtnNetSvrStart->setVisible(haveServer);
   467 	pageLayout->addWidget(BtnNetSvrStart, 4, 2);
   468 	pageLayout->addWidget(BtnNetSvrStart, 4, 2);
   468 
   469 
   469 	BtnBack = addButton(":/res/Exit.png", pageLayout, 4, 0, true);
   470 	BtnBack = addButton(":/res/Exit.png", pageLayout, 4, 0, true);
   470 
   471 	
   471 	ConnGroupBox = new QGroupBox(this);
   472 	ConnGroupBox = new QGroupBox(this);
   472 	ConnGroupBox->setTitle(QGroupBox::tr("Net game"));
   473 	ConnGroupBox->setTitle(QGroupBox::tr("Net game"));
   473 	pageLayout->addWidget(ConnGroupBox, 2, 0, 1, 3);
   474 	pageLayout->addWidget(ConnGroupBox, 2, 0, 1, 3);
   474 	GBClayout = new QGridLayout(ConnGroupBox);
   475 	GBClayout = new QGridLayout(ConnGroupBox);
   475 	GBClayout->setColumnStretch(0, 1);
   476 	GBClayout->setColumnStretch(0, 1);
   856 
   857 
   857 PageScheme::PageScheme(QWidget* parent) :
   858 PageScheme::PageScheme(QWidget* parent) :
   858 	AbstractPage(parent)
   859 	AbstractPage(parent)
   859 {
   860 {
   860 	QGridLayout * pageLayout = new QGridLayout(this);
   861 	QGridLayout * pageLayout = new QGridLayout(this);
   861 
   862 	QGroupBox * gb = new QGroupBox(QGroupBox::tr("Scheme options"), this);
   862 	CB_mode_Forts = new QCheckBox(this);
   863 	
   863 	CB_mode_Forts->setText(QCheckBox::tr("Forts mode"));
   864 	QGridLayout * gl = new QGridLayout();
   864 	pageLayout->addWidget(CB_mode_Forts, 0, 0, 1, 2);
   865 	gb->setLayout(gl);
   865 
   866 
   866 	CB_teamsDivide = new QCheckBox(this);
   867 	pageLayout->addWidget(gb, 1,0,13,4);
   867 	CB_teamsDivide->setText(QCheckBox::tr("Divide teams"));
   868 	
   868 	pageLayout->addWidget(CB_teamsDivide, 1, 0, 1, 2);
   869 	QGroupBox * gbGameModes = new QGroupBox(QGroupBox::tr("Game Modifiers"), gb);
   869 
   870 	QGroupBox * gbBasicSettings = new QGroupBox(QGroupBox::tr("Basic Settings"), gb);
   870 	CB_solid = new QCheckBox(this);
   871 	
   871 	CB_solid->setText(QCheckBox::tr("Solid land"));
   872 	gl->addWidget(gbGameModes,0,0,1,1);
   872 	pageLayout->addWidget(CB_solid, 2, 0, 1, 2);
   873 	gl->addWidget(gbBasicSettings,0,1,1,1);
   873 
   874 	
   874 	CB_border = new QCheckBox(this);
   875 	QGridLayout * glGMLayout = new QGridLayout(gbGameModes);
   875 	CB_border->setText(QCheckBox::tr("Add Border"));
   876 	QGridLayout * glBSLayout = new QGridLayout(gbBasicSettings);
   876 	pageLayout->addWidget(CB_border, 3, 0, 1, 2);
   877 	gbGameModes->setLayout(glGMLayout);
   877 
   878 	gbBasicSettings->setLayout(glBSLayout);
   878 	CB_lowGravity = new QCheckBox(this);
   879 	// Left
   879 	CB_lowGravity->setText(QCheckBox::tr("Low Gravity"));
   880 	
   880 	pageLayout->addWidget(CB_lowGravity, 4, 0, 1, 2);
   881 	TBW_mode_Forts = new ToggleButtonWidget(gbGameModes, ":/res/btnForts.png");
   881 
   882 	TBW_mode_Forts->setText(ToggleButtonWidget::tr("Fort Mode"));
   882 	CB_laserSight = new QCheckBox(this);
   883 	glGMLayout->addWidget(TBW_mode_Forts,0,0,1,1);
   883 	CB_laserSight->setText(QCheckBox::tr("Laser Sight"));
   884 
   884 	pageLayout->addWidget(CB_laserSight, 5, 0, 1, 2);
   885 	TBW_teamsDivide = new ToggleButtonWidget(gbGameModes, ":/res/btnTeamsDivide.png");
   885 
   886 	TBW_teamsDivide->setText(ToggleButtonWidget::tr("Divide Teams"));
   886 	CB_invulnerable = new QCheckBox(this);
   887 	glGMLayout->addWidget(TBW_teamsDivide,0,1,1,1);
   887 	CB_invulnerable->setText(QCheckBox::tr("Invulnerable"));
   888 	//pageLayout->addWidget(TBW_teamsDivide, 1, 0, 1, 2);
   888 	pageLayout->addWidget(CB_invulnerable, 6, 0, 1, 2);
   889 
   889 
   890 	TBW_solid = new ToggleButtonWidget(gbGameModes, ":/res/btnSolid.png");
   890 	CB_mines = new QCheckBox(this);
   891 	TBW_solid->setText(ToggleButtonWidget::tr("Solid Land"));
   891 	CB_mines->setText(QCheckBox::tr("Add Mines"));
   892 	glGMLayout->addWidget(TBW_solid,0,2,1,1);
   892 	pageLayout->addWidget(CB_mines, 7, 0, 1, 2);
   893 	//pageLayout->addWidget(TBW_solid, 2, 0, 1, 2);
   893 
   894 
   894 	SB_DamageModifier = new QSpinBox(this);
   895 	TBW_border = new ToggleButtonWidget(gbGameModes, ":/res/btnBorder.png");
       
   896 	TBW_border->setText(ToggleButtonWidget::tr("Add Border"));
       
   897 	glGMLayout->addWidget(TBW_border,0,3,1,1);
       
   898 	//pageLayout->addWidget(TBW_border, 3, 0, 1, 2);
       
   899 
       
   900 	TBW_lowGravity = new ToggleButtonWidget(gbGameModes, ":/res/btnLowGravity.png");
       
   901 	TBW_lowGravity->setText(ToggleButtonWidget::tr("Low Gravity"));
       
   902 	glGMLayout->addWidget(TBW_lowGravity,1,0,1,1);
       
   903 	//pageLayout->addWidget(TBW_lowGravity, 4, 0, 1, 2);
       
   904 
       
   905 	TBW_laserSight = new ToggleButtonWidget(gbGameModes, ":/res/btnLaserSight.png");
       
   906 	TBW_laserSight->setText(ToggleButtonWidget::tr("Laser Sight"));
       
   907 	glGMLayout->addWidget(TBW_laserSight,1,1,1,1);
       
   908 	//pageLayout->addWidget(TBW_laserSight, 5, 0, 1, 2);
       
   909 
       
   910 	TBW_invulnerable = new ToggleButtonWidget(gbGameModes, ":/res/btnInvurnable.png");
       
   911 	TBW_invulnerable->setText(ToggleButtonWidget::tr("Invulnerable"));
       
   912 	glGMLayout->addWidget(TBW_invulnerable,1,2,1,1);
       
   913 	//pageLayout->addWidget(TBW_invulnerable, 6, 0, 1, 2);
       
   914 
       
   915 	TBW_mines = new ToggleButtonWidget(gbGameModes, ":/res/btnMines.png");
       
   916 	TBW_mines->setText(ToggleButtonWidget::tr("Add Mines"));
       
   917 	glGMLayout->addWidget(TBW_mines,1,3,1,1);
       
   918 	//pageLayout->addWidget(TBW_mines, 7, 0, 1, 2);
       
   919 
       
   920 	// Right
       
   921 	QLabel * l;
       
   922 	
       
   923 	l = new QLabel(gbBasicSettings);
       
   924 	l->setText(QLabel::tr("Damage Modifier"));
       
   925 	glBSLayout->addWidget(l,0,0,1,1);
       
   926 	l = new QLabel(gbBasicSettings);
       
   927 	l->setFixedSize(32,32);
       
   928 	l->setPixmap(QPixmap(":/res/iconDamage.png"));
       
   929 	glBSLayout->addWidget(l,0,2,1,1);
       
   930 	
       
   931 	SB_DamageModifier = new QSpinBox(gbBasicSettings);
   895 	SB_DamageModifier->setRange(10, 300);
   932 	SB_DamageModifier->setRange(10, 300);
   896 	SB_DamageModifier->setValue(100);
   933 	SB_DamageModifier->setValue(100);
   897 	SB_DamageModifier->setSingleStep(25);
   934 	SB_DamageModifier->setSingleStep(25);
   898 	
   935 	glBSLayout->addWidget(SB_DamageModifier,0,1,1,1);
   899 	SB_TurnTime = new QSpinBox(this);
   936 
       
   937 	l = new QLabel(gbBasicSettings);
       
   938 	l->setText(QLabel::tr("Turn Time"));
       
   939 	glBSLayout->addWidget(l,1,0,1,1);
       
   940 	l = new QLabel(gbBasicSettings);
       
   941 	l->setFixedSize(32,32);
       
   942 	l->setPixmap(QPixmap(":/res/iconTime.png"));
       
   943 	glBSLayout->addWidget(l,1,2,1,1);
       
   944 	
       
   945 	SB_TurnTime = new QSpinBox(gbBasicSettings);
   900 	SB_TurnTime->setRange(1, 99);
   946 	SB_TurnTime->setRange(1, 99);
   901 	SB_TurnTime->setValue(45);
   947 	SB_TurnTime->setValue(45);
   902 	SB_TurnTime->setSingleStep(15);
   948 	SB_TurnTime->setSingleStep(15);
   903 	
   949 	glBSLayout->addWidget(SB_TurnTime,1,1,1,1);
   904 	SB_InitHealth = new QSpinBox(this);
   950 	
       
   951 	l = new QLabel(gbBasicSettings);
       
   952 	l->setText(QLabel::tr("Initial Health"));
       
   953 	glBSLayout->addWidget(l,2,0,1,1);
       
   954 	l = new QLabel(gbBasicSettings);
       
   955 	l->setFixedSize(32,32);
       
   956 	l->setPixmap(QPixmap(":/res/iconHealth.png"));
       
   957 	glBSLayout->addWidget(l,2,2,1,1);
       
   958 	
       
   959 	SB_InitHealth = new QSpinBox(gbBasicSettings);
   905 	SB_InitHealth->setRange(50, 200);
   960 	SB_InitHealth->setRange(50, 200);
   906 	SB_InitHealth->setValue(100);
   961 	SB_InitHealth->setValue(100);
   907 	SB_InitHealth->setSingleStep(25);
   962 	SB_InitHealth->setSingleStep(25);
   908 	
   963 	glBSLayout->addWidget(SB_InitHealth,2,1,1,1);
   909 	SB_SuddenDeath = new QSpinBox(this);
   964 	
       
   965 	l = new QLabel(gbBasicSettings);
       
   966 	l->setText(QLabel::tr("Sudden Death Timeout"));
       
   967 	glBSLayout->addWidget(l,3,0,1,1);
       
   968 	l = new QLabel(gbBasicSettings);
       
   969 	l->setFixedSize(32,32);
       
   970 	l->setPixmap(QPixmap(":/res/iconSuddenDeath.png"));
       
   971 	glBSLayout->addWidget(l,3,2,1,1);
       
   972 
       
   973 	SB_SuddenDeath = new QSpinBox(gbBasicSettings);
   910 	SB_SuddenDeath->setRange(0, 50);
   974 	SB_SuddenDeath->setRange(0, 50);
   911 	SB_SuddenDeath->setValue(15);
   975 	SB_SuddenDeath->setValue(15);
   912 	SB_SuddenDeath->setSingleStep(3);
   976 	SB_SuddenDeath->setSingleStep(3);
   913 	
   977 	glBSLayout->addWidget(SB_SuddenDeath,3,1,1,1);
   914 	SB_CaseProb = new FreqSpinBox(this);
   978 	
       
   979 	l = new QLabel(gbBasicSettings);
       
   980 	l->setText(QLabel::tr("Case Probability"));
       
   981 	glBSLayout->addWidget(l,4,0,1,1);
       
   982 	l = new QLabel(gbBasicSettings);
       
   983 	l->setFixedSize(32,32);
       
   984 	l->setPixmap(QPixmap(":/res/iconBox.png"));
       
   985 	glBSLayout->addWidget(l,4,2,1,1);
       
   986 
       
   987 	SB_CaseProb = new FreqSpinBox(gbBasicSettings);
   915 	SB_CaseProb->setRange(0, 9);
   988 	SB_CaseProb->setRange(0, 9);
   916 	SB_CaseProb->setValue(5);
   989 	SB_CaseProb->setValue(5);
       
   990 	glBSLayout->addWidget(SB_CaseProb,4,1,1,1);
       
   991 
       
   992 
       
   993 	l = new QLabel(gbBasicSettings);
       
   994 	l->setText(QLabel::tr("Scheme Name:"));
   917 
   995 
   918 	LE_name = new QLineEdit(this);
   996 	LE_name = new QLineEdit(this);
   919 
   997 	
   920 	pageLayout->addWidget(SB_DamageModifier, 8, 1);
   998 	gl->addWidget(LE_name,14,1,1,1);
   921 	pageLayout->addWidget(SB_TurnTime, 9, 1);
   999 	gl->addWidget(l,14,0,1,1);
   922 	pageLayout->addWidget(SB_InitHealth, 10, 1);
       
   923 	pageLayout->addWidget(SB_SuddenDeath, 11, 1);
       
   924 	pageLayout->addWidget(SB_CaseProb, 12, 1);
       
   925 	pageLayout->addWidget(LE_name, 13, 1);
       
   926 
  1000 
   927 	mapper = new QDataWidgetMapper(this);
  1001 	mapper = new QDataWidgetMapper(this);
   928 
  1002 
   929 	BtnBack = addButton(":/res/Exit.png", pageLayout, 15, 0, true);
  1003 	BtnBack = addButton(":/res/Exit.png", pageLayout, 15, 0, true);
   930 	BtnNew = addButton(tr("New"), pageLayout, 15, 2);
  1004 	BtnNew = addButton(tr("New"), pageLayout, 15, 2);
   942 {
  1016 {
   943 	mapper->setModel(model);
  1017 	mapper->setModel(model);
   944 	selectScheme->setModel(model);
  1018 	selectScheme->setModel(model);
   945 	
  1019 	
   946 	mapper->addMapping(LE_name, 0);
  1020 	mapper->addMapping(LE_name, 0);
   947 	mapper->addMapping(CB_mode_Forts, 1);
  1021 	mapper->addMapping(TBW_mode_Forts->button(), 1);
   948 	mapper->addMapping(CB_teamsDivide, 2);
  1022 	mapper->addMapping(TBW_teamsDivide->button(), 2);
   949 	mapper->addMapping(CB_solid, 3);
  1023 	mapper->addMapping(TBW_solid->button(), 3);
   950 	mapper->addMapping(CB_border, 4);
  1024 	mapper->addMapping(TBW_border->button(), 4);
   951 	mapper->addMapping(CB_lowGravity, 5);
  1025 	mapper->addMapping(TBW_lowGravity->button(), 5);
   952 	mapper->addMapping(CB_laserSight, 6);
  1026 	mapper->addMapping(TBW_laserSight->button(), 6);
   953 	mapper->addMapping(CB_invulnerable, 7);
  1027 	mapper->addMapping(TBW_invulnerable->button(), 7);
   954 	mapper->addMapping(CB_mines, 8);
  1028 	mapper->addMapping(TBW_mines->button(), 8);
   955 	mapper->addMapping(SB_DamageModifier, 9);
  1029 	mapper->addMapping(SB_DamageModifier, 9);
   956 	mapper->addMapping(SB_TurnTime, 10);
  1030 	mapper->addMapping(SB_TurnTime, 10);
   957 	mapper->addMapping(SB_InitHealth, 11);
  1031 	mapper->addMapping(SB_InitHealth, 11);
   958 	mapper->addMapping(SB_SuddenDeath, 12);
  1032 	mapper->addMapping(SB_SuddenDeath, 12);
   959 	mapper->addMapping(SB_CaseProb, 13);
  1033 	mapper->addMapping(SB_CaseProb, 13);