New create server layout

This commit is contained in:
Paul Chote
2011-05-08 13:04:04 +12:00
parent 99eb6ab774
commit 09526ee2dd
2 changed files with 95 additions and 57 deletions

View File

@@ -19,6 +19,7 @@ namespace OpenRA.Mods.Cnc.Widgets
{
Widget panel;
Action onCreate;
Map map;
[ObjectCreator.UseCtor]
public CncServerCreationLogic([ObjectCreator.Param] Widget widget,
[ObjectCreator.Param] Action onExit,
@@ -31,9 +32,13 @@ namespace OpenRA.Mods.Cnc.Widgets
panel.GetWidget<CncMenuButtonWidget>("BACK_BUTTON").OnClick = onExit;
panel.GetWidget<CncMenuButtonWidget>("CREATE_BUTTON").OnClick = CreateAndJoin;
panel.GetWidget<CncMenuButtonWidget>("MAP_BUTTON").IsDisabled = () => true;
panel.GetWidget<TextFieldWidget>("GAME_TITLE").Text = settings.Server.Name ?? "";
//panel.GetWidget<CncMenuButtonWidget>("MAP_BUTTON").IsDisabled = () => true;
map = Game.modData.AvailableMaps.FirstOrDefault(m => m.Value.Selectable).Value;
panel.GetWidget<MapPreviewWidget>("MAP_PREVIEW").Map = () => map;
panel.GetWidget<TextFieldWidget>("SERVER_NAME").Text = settings.Server.Name ?? "";
panel.GetWidget<TextFieldWidget>("LISTEN_PORT").Text = settings.Server.ListenPort.ToString();
panel.GetWidget<TextFieldWidget>("EXTERNAL_PORT").Text = settings.Server.ExternalPort.ToString();
panel.GetWidget<CheckboxWidget>("CHECKBOX_ONLINE").Bind(settings.Server, "AdvertiseOnline");

View File

@@ -2,94 +2,127 @@ Container@CREATESERVER_PANEL:
Id:CREATESERVER_PANEL
Delegate:CncServerCreationLogic
X:(WINDOW_RIGHT - WIDTH)/2
Y:(WINDOW_BOTTOM - 500)/2
Width:740
Height:535
Y:(WINDOW_BOTTOM - 224)/2
Width:604
Height:254
Children:
Label@TITLE:
Text:Create Server
Width:740
Width:604
Y:0-25
Font:BigBold
Contrast:true
Align:Center
Background@bg:
Width:740
Height:500
Width:604
Height:224
Background:panel-black
Children:
Label@GAME_TITLE_LABEL:
Id:GAME_TITLE_LABEL
X:50
Y:59
Width:95
Background@MAP_BG:
X:PARENT_RIGHT-WIDTH-15
Y:15
Width:194
Height:194
Background:panel-gray
Children:
MapPreview@MAP_PREVIEW:
Id:MAP_PREVIEW
X:1
Y:1
Width:192
Height:192
Label@SERVER_NAME_LABEL:
X:15
Y:14
Width:90
Height:25
Align: Right
Text:Game Title:
TextField@GAME_TITLE:
Id:GAME_TITLE
X:150
Y:60
Width:210
Align:Right
Text:Server Name:
TextField@SERVER_NAME:
Id:SERVER_NAME
X:110
Y:15
Width:275
MaxLength:50
Height:25
Text:OpenRA Game
Label@EXTERNAL_PORT_LABEL:
Id:EXTERNAL_PORT_LABEL
X:50
Y:94
Width:95
Text:My OpenRA Server
Label@SERVER_DESC_LABEL:
X:15
Y:49
Width:90
Height:25
Align:Right
Text:Description:
TextField@SERVER_DESC:
Id:SERVER_DESC
X:110
Y:50
Width:275
MaxLength:50
Height:25
Text:Describe your server here
Label@LISTEN_PORT_LABEL:
X:15
Y:84
Width:90
Height:25
Align: Right
Text:Port:
TextField@LISTEN_PORT:
Id:LISTEN_PORT
X:110
Y:85
Width:50
MaxLength:5
Height:25
Text:1234
Checkbox@CHECKBOX_ONLINE:
Id:CHECKBOX_ONLINE
X:110
Y:120
Width:275
Height:20
Text:Advertise Online*
Label@PORT_FORWARDING:
X:140
Y:145
Width:220
WordWrap:true
Font:Tiny
Text:*You must forward an external port from your router to your computer before other players will be able to join your server.
Label@EXTERNAL_PORT_LABEL:
X:15
Y:183
Width:90
Height:25
Align:Right
Text:External Port:
TextField@EXTERNAL_PORT:
Id:EXTERNAL_PORT
X:150
Y:95
X:110
Y:184
Width:50
MaxLength:5
Height:25
Text:OpenRA Game
Label@LISTEN_PORT_LABEL:
Id:LISTEN_PORT_LABEL
X:210
Y:94
Width:95
Height:25
Align: Right
Text:Listen Port:
TextField@LISTEN_PORT:
Id:LISTEN_PORT
X:310
Y:95
Width:50
MaxLength:5
Height:25
Checkbox@CHECKBOX_ONLINE:
Id:CHECKBOX_ONLINE
X:165
Y:130
Width:300
Height:20
Text:Advertise game Online
Text:1234
CncMenuButton@BACK_BUTTON:
Id:BACK_BUTTON
X:0
Y:499
Y:223
Width:140
Height:35
Text:Back
CncMenuButton@MAP_BUTTON:
Id:MAP_BUTTON
X:450
Y:499
X:314
Y:223
Width:140
Height:35
Text:Change Map
CncMenuButton@CREATE_BUTTON:
Id:CREATE_BUTTON
X:600
Y:499
X:464
Y:223
Width:140
Height:35
Text:Create