author  alfadur 
Sat, 11 Jul 2020 20:33:23 +0300  
changeset 15719  08e556cad305 
parent 11046  47a8c19ecb60 
permissions  rwrr 
184  1 
/* 
1066  2 
* Hedgewars, a free turn based strategy game 
11046  3 
* Copyright (c) 20042015 Andrey Korotaev <unC0Rr@gmail.com> 
184  4 
* 
5 
* This program is free software; you can redistribute it and/or modify 

6 
* it under the terms of the GNU General Public License as published by 

7 
* the Free Software Foundation; version 2 of the License 

8 
* 

9 
* This program is distributed in the hope that it will be useful, 

10 
* but WITHOUT ANY WARRANTY; without even the implied warranty of 

11 
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 

12 
* GNU General Public License for more details. 

13 
* 

14 
* You should have received a copy of the GNU General Public License 

15 
* along with this program; if not, write to the Free Software 

10108
c68cf030eded
update FSF address. note: two sdl include files (by Sam Lantinga) still have the old FSF address in their copyright  but I ain't gonna touch their copyright headers
sheepluva
parents:
9998
diff
changeset

16 
* Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 021101301 USA 
184  17 
*/ 
18 

19 
#include <QVBoxLayout> 

20 
#include <QGridLayout> 

471  21 
#include <QMainWindow> 
22 
#include <QStackedLayout> 

23 

184  24 
#include "ui_hwform.h" 
2515
51d3f4b6293a
revert audio to use SDL_mixer  also frontend uses it, so it needs sdlmixer sources
koda
parents:
1950
diff
changeset

25 
#include "hwform.h" 
5204  26 
#include "pagenet.h" 
27 
#include "pagetraining.h" 

28 
#include "pagenetserver.h" 

29 
#include "pageoptions.h" 

30 
#include "pageingame.h" 

31 
#include "pagescheme.h" 

32 
#include "pageroomslist.h" 

33 
#include "pageinfo.h" 

34 
#include "pagenetgame.h" 

35 
#include "pageeditteam.h" 

36 
#include "pagedrawmap.h" 

37 
#include "pageadmin.h" 

38 
#include "pageconnecting.h" 

39 
#include "pagemultiplayer.h" 

40 
#include "pagesingleplayer.h" 

41 
#include "pageselectweapon.h" 

42 
#include "pagecampaign.h" 

43 
#include "pagemain.h" 

5205
78138ae93820
some headers cleanup and rename of stats and playrecord pages for consistency
koda
parents:
5204
diff
changeset

44 
#include "pagegamestats.h" 
78138ae93820
some headers cleanup and rename of stats and playrecord pages for consistency
koda
parents:
5204
diff
changeset

45 
#include "pageplayrecord.h" 
5567
44c9a577b082
Tiny bit of progress on download page  hooked it up to "Info" button for now.
nemo
parents:
5205
diff
changeset

46 
#include "pagedata.h" 
7235
baa69bd025d9
1. Implement new page in frontend with options for video recording.
Stepan777 <stepik777@mail.ru>
parents:
6952
diff
changeset

47 
#include "pagevideos.h" 
1542  48 
#include "hwconsts.h" 
184  49 

2515
51d3f4b6293a
revert audio to use SDL_mixer  also frontend uses it, so it needs sdlmixer sources
koda
parents:
1950
diff
changeset

50 
void Ui_HWForm::setupUi(HWForm *HWForm) 
184  51 
{ 
2948
3f21a9dc93d0
Replace tabs with spaces using 'expand t 4' command
unc0rr
parents:
2773
diff
changeset

52 
SetupFonts(); 
184  53 

2948
3f21a9dc93d0
Replace tabs with spaces using 'expand t 4' command
unc0rr
parents:
2773
diff
changeset

54 
HWForm>setObjectName(QString::fromUtf8("HWForm")); 
3f21a9dc93d0
Replace tabs with spaces using 'expand t 4' command
unc0rr
parents:
2773
diff
changeset

55 
HWForm>resize(QSize(640, 480).expandedTo(HWForm>minimumSizeHint())); 
3f21a9dc93d0
Replace tabs with spaces using 'expand t 4' command
unc0rr
parents:
2773
diff
changeset

56 
HWForm>setMinimumSize(QSize(720, 450)); 
8635  57 
QString title = QMainWindow::tr("Hedgewars %1").arg(*cVersionString); 
9212  58 
#ifdef QT_DEBUG 
9122  59 
title += QString("r%1 (%2)").arg(*cRevisionString, *cHashString); 
8635  60 
#endif 
8613
82c649dfc7c3
split cVersionString into its three separate components (version, revision, hash) and apply the new values sensibly on the frontend (esp. title, info and feedback)
koda
parents:
8385
diff
changeset

61 
HWForm>setWindowTitle(title); 
2948
3f21a9dc93d0
Replace tabs with spaces using 'expand t 4' command
unc0rr
parents:
2773
diff
changeset

62 
centralWidget = new QWidget(HWForm); 
3f21a9dc93d0
Replace tabs with spaces using 'expand t 4' command
unc0rr
parents:
2773
diff
changeset

63 
centralWidget>setObjectName(QString::fromUtf8("centralWidget")); 
184  64 

8179
a1ffcb559f99
Refactor: get rid of excessive QSettings instances on the same poor hedgewars.ini file
unc0rr
parents:
7235
diff
changeset

65 
SetupPages(centralWidget); 
184  66 

2948
3f21a9dc93d0
Replace tabs with spaces using 'expand t 4' command
unc0rr
parents:
2773
diff
changeset

67 
HWForm>setCentralWidget(centralWidget); 
184  68 

2948
3f21a9dc93d0
Replace tabs with spaces using 'expand t 4' command
unc0rr
parents:
2773
diff
changeset

69 
Pages>setCurrentIndex(0); 
184  70 

2948
3f21a9dc93d0
Replace tabs with spaces using 'expand t 4' command
unc0rr
parents:
2773
diff
changeset

71 
QMetaObject::connectSlotsByName(HWForm); 
184  72 
} 
73 

74 
void Ui_HWForm::SetupFonts() 

75 
{ 

2948
3f21a9dc93d0
Replace tabs with spaces using 'expand t 4' command
unc0rr
parents:
2773
diff
changeset

76 
font14 = new QFont("MS Shell Dlg", 14); 
184  77 
} 
78 

8179
a1ffcb559f99
Refactor: get rid of excessive QSettings instances on the same poor hedgewars.ini file
unc0rr
parents:
7235
diff
changeset

79 
void Ui_HWForm::SetupPages(QWidget *Parent) 
184  80 
{ 
2948
3f21a9dc93d0
Replace tabs with spaces using 'expand t 4' command
unc0rr
parents:
2773
diff
changeset

81 
Pages = new QStackedLayout(Parent); 
184  82 

6165
6fe3e922246e
moving and renaming SDLs.*, making it a singleton; cleaning up class responsibilties wrt SDLInteraction; some comments
sheepluva
parents:
5567
diff
changeset

83 
pageEditTeam = new PageEditTeam(Parent); 
2948
3f21a9dc93d0
Replace tabs with spaces using 'expand t 4' command
unc0rr
parents:
2773
diff
changeset

84 
Pages>addWidget(pageEditTeam); 
184  85 

2948
3f21a9dc93d0
Replace tabs with spaces using 'expand t 4' command
unc0rr
parents:
2773
diff
changeset

86 
pageOptions = new PageOptions(); 
3f21a9dc93d0
Replace tabs with spaces using 'expand t 4' command
unc0rr
parents:
2773
diff
changeset

87 
Pages>addWidget(pageOptions); 
184  88 

2948
3f21a9dc93d0
Replace tabs with spaces using 'expand t 4' command
unc0rr
parents:
2773
diff
changeset

89 
pageMultiplayer = new PageMultiplayer(); 
3f21a9dc93d0
Replace tabs with spaces using 'expand t 4' command
unc0rr
parents:
2773
diff
changeset

90 
Pages>addWidget(pageMultiplayer); 
184  91 

2948
3f21a9dc93d0
Replace tabs with spaces using 'expand t 4' command
unc0rr
parents:
2773
diff
changeset

92 
pagePlayDemo = new PagePlayDemo(); 
3f21a9dc93d0
Replace tabs with spaces using 'expand t 4' command
unc0rr
parents:
2773
diff
changeset

93 
Pages>addWidget(pagePlayDemo); 
184  94 

2948
3f21a9dc93d0
Replace tabs with spaces using 'expand t 4' command
unc0rr
parents:
2773
diff
changeset

95 
pageNet = new PageNet(); 
3f21a9dc93d0
Replace tabs with spaces using 'expand t 4' command
unc0rr
parents:
2773
diff
changeset

96 
Pages>addWidget(pageNet); 
184  97 

8179
a1ffcb559f99
Refactor: get rid of excessive QSettings instances on the same poor hedgewars.ini file
unc0rr
parents:
7235
diff
changeset

98 
pageNetGame = new PageNetGame(Parent); 
2948
3f21a9dc93d0
Replace tabs with spaces using 'expand t 4' command
unc0rr
parents:
2773
diff
changeset

99 
Pages>addWidget(pageNetGame); 
184  100 

2948
3f21a9dc93d0
Replace tabs with spaces using 'expand t 4' command
unc0rr
parents:
2773
diff
changeset

101 
pageInfo = new PageInfo(); 
3f21a9dc93d0
Replace tabs with spaces using 'expand t 4' command
unc0rr
parents:
2773
diff
changeset

102 
Pages>addWidget(pageInfo); 
187  103 

2948
3f21a9dc93d0
Replace tabs with spaces using 'expand t 4' command
unc0rr
parents:
2773
diff
changeset

104 
pageMain = new PageMain(); 
3f21a9dc93d0
Replace tabs with spaces using 'expand t 4' command
unc0rr
parents:
2773
diff
changeset

105 
Pages>addWidget(pageMain); 
306  106 

2948
3f21a9dc93d0
Replace tabs with spaces using 'expand t 4' command
unc0rr
parents:
2773
diff
changeset

107 
pageGameStats = new PageGameStats(); 
3f21a9dc93d0
Replace tabs with spaces using 'expand t 4' command
unc0rr
parents:
2773
diff
changeset

108 
Pages>addWidget(pageGameStats); 
586  109 

2948
3f21a9dc93d0
Replace tabs with spaces using 'expand t 4' command
unc0rr
parents:
2773
diff
changeset

110 
pageSinglePlayer = new PageSinglePlayer(); 
3f21a9dc93d0
Replace tabs with spaces using 'expand t 4' command
unc0rr
parents:
2773
diff
changeset

111 
Pages>addWidget(pageSinglePlayer); 
587  112 

2948
3f21a9dc93d0
Replace tabs with spaces using 'expand t 4' command
unc0rr
parents:
2773
diff
changeset

113 
pageTraining = new PageTraining(); 
3f21a9dc93d0
Replace tabs with spaces using 'expand t 4' command
unc0rr
parents:
2773
diff
changeset

114 
Pages>addWidget(pageTraining); 
600  115 

2948
3f21a9dc93d0
Replace tabs with spaces using 'expand t 4' command
unc0rr
parents:
2773
diff
changeset

116 
pageSelectWeapon = new PageSelectWeapon(); 
3f21a9dc93d0
Replace tabs with spaces using 'expand t 4' command
unc0rr
parents:
2773
diff
changeset

117 
Pages>addWidget(pageSelectWeapon); 
646  118 

2948
3f21a9dc93d0
Replace tabs with spaces using 'expand t 4' command
unc0rr
parents:
2773
diff
changeset

119 
pageNetServer = new PageNetServer(); 
3f21a9dc93d0
Replace tabs with spaces using 'expand t 4' command
unc0rr
parents:
2773
diff
changeset

120 
Pages>addWidget(pageNetServer); 
686  121 

2948
3f21a9dc93d0
Replace tabs with spaces using 'expand t 4' command
unc0rr
parents:
2773
diff
changeset

122 
pageInGame = new PageInGame(); 
3f21a9dc93d0
Replace tabs with spaces using 'expand t 4' command
unc0rr
parents:
2773
diff
changeset

123 
Pages>addWidget(pageInGame); 
1311  124 

8179
a1ffcb559f99
Refactor: get rid of excessive QSettings instances on the same poor hedgewars.ini file
unc0rr
parents:
7235
diff
changeset

125 
pageRoomsList = new PageRoomsList(Parent); 
2948
3f21a9dc93d0
Replace tabs with spaces using 'expand t 4' command
unc0rr
parents:
2773
diff
changeset

126 
Pages>addWidget(pageRoomsList); 
1800  127 

2948
3f21a9dc93d0
Replace tabs with spaces using 'expand t 4' command
unc0rr
parents:
2773
diff
changeset

128 
pageConnecting = new PageConnecting(); 
3f21a9dc93d0
Replace tabs with spaces using 'expand t 4' command
unc0rr
parents:
2773
diff
changeset

129 
Pages>addWidget(pageConnecting); 
1884  130 

2948
3f21a9dc93d0
Replace tabs with spaces using 'expand t 4' command
unc0rr
parents:
2773
diff
changeset

131 
pageScheme = new PageScheme(); 
3f21a9dc93d0
Replace tabs with spaces using 'expand t 4' command
unc0rr
parents:
2773
diff
changeset

132 
Pages>addWidget(pageScheme); 
1905  133 

2948
3f21a9dc93d0
Replace tabs with spaces using 'expand t 4' command
unc0rr
parents:
2773
diff
changeset

134 
pageAdmin = new PageAdmin(); 
3f21a9dc93d0
Replace tabs with spaces using 'expand t 4' command
unc0rr
parents:
2773
diff
changeset

135 
Pages>addWidget(pageAdmin); 
1950  136 

3760  137 
pageCampaign = new PageCampaign(); 
138 
Pages>addWidget(pageCampaign); 

4500  139 

140 
pageDrawMap = new PageDrawMap(); 

141 
Pages>addWidget(pageDrawMap); 

5567
44c9a577b082
Tiny bit of progress on download page  hooked it up to "Info" button for now.
nemo
parents:
5205
diff
changeset

142 

44c9a577b082
Tiny bit of progress on download page  hooked it up to "Info" button for now.
nemo
parents:
5205
diff
changeset

143 
pageDataDownload = new PageDataDownload(); 
44c9a577b082
Tiny bit of progress on download page  hooked it up to "Info" button for now.
nemo
parents:
5205
diff
changeset

144 
Pages>addWidget(pageDataDownload); 
6561  145 

7235
baa69bd025d9
1. Implement new page in frontend with options for video recording.
Stepan777 <stepik777@mail.ru>
parents:
6952
diff
changeset

146 
pageVideos = new PageVideos(); 
baa69bd025d9
1. Implement new page in frontend with options for video recording.
Stepan777 <stepik777@mail.ru>
parents:
6952
diff
changeset

147 
Pages>addWidget(pageVideos); 
184  148 
} 