[client] update to haxework
This commit is contained in:
@@ -1,11 +1,15 @@
|
||||
package ru.m.tankz;
|
||||
|
||||
import haxework.view.core.Geometry;
|
||||
import haxework.view.core.HAlign;
|
||||
import haxework.view.core.VAlign;
|
||||
import haxework.view.geometry.Geometry;
|
||||
import haxework.view.geometry.HAlign;
|
||||
import haxework.view.geometry.VAlign;
|
||||
import haxework.view.layout.Layout;
|
||||
import haxework.view.skin.Skin;
|
||||
import haxework.view.skin.SpriteSkin;
|
||||
import haxework.view.theme.GeometryStyle;
|
||||
import haxework.view.theme.ITheme;
|
||||
import haxework.view.theme.LayoutStyle;
|
||||
import haxework.view.theme.SkinStyle;
|
||||
import haxework.view.theme.Theme;
|
||||
import openfl.Assets;
|
||||
import ru.m.skin.ButtonSVGSkin;
|
||||
@@ -27,85 +31,52 @@ class AppTheme extends Theme {
|
||||
|
||||
override private function reload():Void {
|
||||
super.reload();
|
||||
data.put("light", [
|
||||
Skin.color(colors.light),
|
||||
styles.put("light", [
|
||||
new SkinStyle(Skin.color(colors.light)),
|
||||
]);
|
||||
data.put("dark", [
|
||||
Skin.color(colors.dark),
|
||||
]);
|
||||
data.put("font", [
|
||||
Skin.text(colors.text, 0, font.name, font.embed),
|
||||
]);
|
||||
data.put("text", [
|
||||
Skin.text(colors.text, baseFontSize, font.name, font.embed),
|
||||
]);
|
||||
data.put("scroll.vertical", [
|
||||
Skin.scrollVertical(colors.light, colors.dark),
|
||||
]);
|
||||
data.put("text.header", [
|
||||
Skin.color(0x000000, 0.1),
|
||||
Skin.border(colors.light, 1, 2),
|
||||
Skin.text(colors.text, bigFontSize, font.name, font.embed),
|
||||
Skin.geometry(new Geometry().setPadding([50, 8]).setMargin([0, 0, 0, 30])),
|
||||
]);
|
||||
data.put("button.menu", [
|
||||
Skin.buttonColor(colors.light),
|
||||
Skin.text(colors.text, bigFontSize, font.name, font.embed),
|
||||
Skin.size(250, 50),
|
||||
]);
|
||||
data.put("text.box", [
|
||||
Skin.color(0x000000, 0.1),
|
||||
Skin.border(colors.light, 1, 2),
|
||||
Skin.text(colors.text, baseFontSize, font.name, font.embed),
|
||||
]);
|
||||
data.put("text.box.active", [
|
||||
Skin.color(0x55aa55),
|
||||
Skin.border(0x88dd88, 1, 2),
|
||||
Skin.text(colors.text, baseFontSize, font.name, font.embed),
|
||||
]);
|
||||
data.put("button.active", [
|
||||
Skin.buttonColor(colors.light, colors.active),
|
||||
Skin.text(colors.active, baseFontSize, font.name, font.embed),
|
||||
Skin.geometry(new Geometry().setPadding([25, 8])),
|
||||
]);
|
||||
data.put("button.tab", [
|
||||
Skin.tabColor(colors.light),
|
||||
Skin.text(colors.text, baseFontSize, font.name, font.embed),
|
||||
Skin.geometry(new Geometry().setPadding([25, 8])),
|
||||
]);
|
||||
data.put("border", [
|
||||
Skin.border(colors.border, 1, 2),
|
||||
]);
|
||||
data.put("scroll", [
|
||||
Skin.scrollVertical(colors.light, colors.light.diff(128)),
|
||||
]);
|
||||
data.put("button.level", [
|
||||
Skin.buttonColor(colors.light),
|
||||
Skin.text(colors.text, veryBigFontSize, font.name, font.embed),
|
||||
Skin.size(64, 64),
|
||||
styles.put("dark", [
|
||||
new SkinStyle(Skin.color(colors.dark)),
|
||||
]);
|
||||
styles.put("font", text());
|
||||
styles.put("text.header", text(null, bigFontSize).concat([
|
||||
new SkinStyle(new SpriteSkin({color: 0x000000, alpha: 0.1}, {color: colors.light})),
|
||||
new GeometryStyle(new Geometry().setPadding([50, 8]).setMargin([0, 0, 0, 30]))
|
||||
]));
|
||||
styles.put("button.menu", text(null, bigFontSize).concat([
|
||||
new SkinStyle(Skin.buttonColor(colors.light)),
|
||||
new GeometryStyle(new Geometry().setSize(250, 50)),
|
||||
]));
|
||||
styles.put("text.box", text().concat([
|
||||
new SkinStyle(new SpriteSkin({color: 0x000000, alpha: 0.1}, {color: colors.light})),
|
||||
]));
|
||||
styles.put("text.box.active", text().concat([
|
||||
new SkinStyle(new SpriteSkin({color: 0x55aa55}, {color: 0x88dd88})),
|
||||
]));
|
||||
styles.put("button.level", text(null, veryBigFontSize).concat([
|
||||
new SkinStyle(Skin.buttonColor(colors.light)),
|
||||
new GeometryStyle(new Geometry().setSize(64, 64)),
|
||||
]));
|
||||
|
||||
data.put("container", [
|
||||
Skin.geometry(new Geometry().setSize("100%", "100%")),
|
||||
Skin.layout(new Layout().setAlign(CENTER, MIDDLE)),
|
||||
Skin.color(colors.dark),
|
||||
styles.put("container", [
|
||||
new GeometryStyle(new Geometry().setSize("100%", "100%")),
|
||||
new LayoutStyle(new Layout().setAlign(CENTER, MIDDLE)),
|
||||
new SkinStyle(Skin.color(colors.dark)),
|
||||
]);
|
||||
data.put("panel", [
|
||||
Skin.geometry(new Geometry().setSize("100%", -1).setPadding([10, 5])),
|
||||
Skin.layout(new Layout().setAlign(NONE, MIDDLE)),
|
||||
Skin.color(colors.light),
|
||||
styles.put("panel", [
|
||||
new GeometryStyle(new Geometry().setSize("100%", -1).setPadding([10, 5])),
|
||||
new LayoutStyle(new Layout().setAlign(NONE, MIDDLE)),
|
||||
new SkinStyle(Skin.color(colors.light)),
|
||||
]);
|
||||
data.put("window", [
|
||||
Skin.color(colors.dark),
|
||||
Skin.border(colors.border, 1, 2),
|
||||
Skin.geometry(new Geometry().setPadding(2)),
|
||||
styles.put("window", [
|
||||
new SkinStyle(new SpriteSkin({color: colors.dark}, {color: colors.border})),
|
||||
new GeometryStyle(new Geometry().setPadding(2)),
|
||||
]);
|
||||
data.put("line", [
|
||||
Skin.color(colors.border),
|
||||
styles.put("line", [
|
||||
new SkinStyle(Skin.color(colors.border)),
|
||||
]);
|
||||
data.put("window.close", [
|
||||
Skin.size(36, 36),
|
||||
new ButtonSVGSkin(Assets.getText("resources/image/icon/window-close-solid.svg"), colors.light),
|
||||
styles.put("window.close", [
|
||||
new GeometryStyle(new Geometry().setSize(36, 36)),
|
||||
new SkinStyle(new ButtonSVGSkin(Assets.getText("resources/image/icon/window-close-solid.svg"), colors.light)),
|
||||
]);
|
||||
registerButton("settings", "cog-solid.svg");
|
||||
registerButton("close", "times-circle-solid.svg");
|
||||
@@ -116,13 +87,13 @@ class AppTheme extends Theme {
|
||||
}
|
||||
|
||||
private function registerButton(name:String, resource:String):Void {
|
||||
data.put('button.$name', [
|
||||
Skin.size(42, 42),
|
||||
new ButtonSVGSkin(Assets.getText('resources/image/icon/$resource'), colors.light),
|
||||
styles.put('button.$name', [
|
||||
new GeometryStyle(new Geometry().setSize(42, 42)),
|
||||
new SkinStyle(new ButtonSVGSkin(Assets.getText('resources/image/icon/$resource'), colors.light)),
|
||||
]);
|
||||
data.put('button.$name.small', [
|
||||
Skin.size(32, 32),
|
||||
new ButtonSVGSkin(Assets.getText('resources/image/icon/$resource'), colors.light),
|
||||
styles.put('button.$name.small', [
|
||||
new GeometryStyle(new Geometry().setSize(32, 32)),
|
||||
new SkinStyle(new ButtonSVGSkin(Assets.getText('resources/image/icon/$resource'), colors.light)),
|
||||
]);
|
||||
}
|
||||
|
||||
|
||||
@@ -5,7 +5,7 @@ import flash.display.Sprite;
|
||||
import flash.events.Event;
|
||||
import flash.events.ProgressEvent;
|
||||
import flash.Lib;
|
||||
import haxework.view.core.Size;
|
||||
import haxework.view.geometry.Size;
|
||||
import ru.m.tankz.AppTheme;
|
||||
|
||||
class Progress extends Sprite {
|
||||
|
||||
@@ -65,14 +65,14 @@ class Render extends SpriteView implements IRender {
|
||||
|
||||
private function set_config(value:Config):Config {
|
||||
config = value;
|
||||
setContentSize(mapWidth, mapHeight, "render");
|
||||
setSize(mapWidth, mapHeight, "render");
|
||||
drawBackground();
|
||||
return config;
|
||||
}
|
||||
|
||||
private function set_gridSize(value:GridSize):GridSize {
|
||||
gridSize = value;
|
||||
setContentSize(mapWidth, mapHeight, "render");
|
||||
setSize(mapWidth, mapHeight, "render");
|
||||
drawBackground();
|
||||
return gridSize;
|
||||
}
|
||||
@@ -263,7 +263,7 @@ class Render extends SpriteView implements IRender {
|
||||
private function showScore(point:Point, score:Null<Int>):Void {
|
||||
if (score != null && score != 0) {
|
||||
var view:LabelView = new LabelView();
|
||||
view.skinId = "text";
|
||||
view.style = "text";
|
||||
view.text = Std.string(score);
|
||||
view.update();
|
||||
view.redraw();
|
||||
|
||||
@@ -2,8 +2,8 @@
|
||||
views:
|
||||
- $type: haxework.view.frame.FrameSwitcher
|
||||
id: switcher
|
||||
geometry.size.stretch: true
|
||||
skinId: dark
|
||||
geometry.stretch: true
|
||||
style: dark
|
||||
factory:
|
||||
_start_: {$class: ru.m.tankz.view.StartFrame}
|
||||
_level_: {$class: ru.m.tankz.view.LevelFrame}
|
||||
@@ -14,30 +14,30 @@ views:
|
||||
_room_list_: {$class: ru.m.tankz.view.network.RoomListFrame}
|
||||
_room_: {$class: ru.m.tankz.view.network.RoomFrame}
|
||||
- $type: haxework.view.group.HGroupView
|
||||
skinId: panel
|
||||
style: panel
|
||||
layout.margin: 10
|
||||
views:
|
||||
- id: settings
|
||||
$type: haxework.view.form.ButtonView
|
||||
skinId: button.settings
|
||||
style: button.settings
|
||||
+onPress: ~switcher.change('settings')
|
||||
- $type: haxework.view.SpriteView
|
||||
geometry.size.width: 50%
|
||||
geometry.width: 50%
|
||||
- id: username
|
||||
$type: haxework.view.form.LabelView
|
||||
skinId: text
|
||||
style: text
|
||||
- id: login
|
||||
$type: haxework.view.form.ButtonView
|
||||
skinId: button.login
|
||||
style: button.login
|
||||
+onPress: ~login()
|
||||
- id: logout
|
||||
$type: haxework.view.form.ButtonView
|
||||
skinId: button.logout
|
||||
style: button.logout
|
||||
+onPress: ~logout()
|
||||
visible: false
|
||||
- $type: haxework.view.SpriteView
|
||||
geometry.size.width: 50%
|
||||
geometry.width: 50%
|
||||
- id: close
|
||||
$type: haxework.view.form.ButtonView
|
||||
skinId: button.close
|
||||
style: button.close
|
||||
+onPress: ~close()
|
||||
|
||||
@@ -1,10 +1,10 @@
|
||||
---
|
||||
geometry.size.stretch: true
|
||||
geometry.stretch: true
|
||||
layout:
|
||||
$type: haxework.view.layout.VerticalLayout
|
||||
views:
|
||||
- $type: haxework.view.group.VGroupView
|
||||
skinId: container
|
||||
style: container
|
||||
layout.overflow: true
|
||||
views:
|
||||
- id: game
|
||||
@@ -12,5 +12,5 @@ views:
|
||||
- id: gamepad
|
||||
$type: ru.m.tankz.view.GamepadView
|
||||
geometry.position: absolute
|
||||
geometry.size.stretch: true
|
||||
geometry.stretch: true
|
||||
visible: false
|
||||
|
||||
@@ -59,7 +59,7 @@ class GamepadView extends SpriteView implements IControlDevice {
|
||||
signal = new Signal2();
|
||||
areas = [];
|
||||
currentAreas = new Map();
|
||||
skin = [new GamepadSkin(0x00ff00)];
|
||||
skin = new GamepadSkin(0x00ff00);
|
||||
content.addEventListener(MouseEvent.MOUSE_DOWN, onMouseDown);
|
||||
content.addEventListener(TouchEvent.TOUCH_BEGIN, onTouchBegin);
|
||||
}
|
||||
|
||||
@@ -54,7 +54,7 @@ import ru.m.tankz.view.popup.LevelPopup;
|
||||
private function levelViewFactory(index:Int, level:LevelConfig):ButtonView {
|
||||
var progress = storage.get(pack.id);
|
||||
var result = new ButtonView();
|
||||
result.skinId = "button.level";
|
||||
result.style = "button.level";
|
||||
var presetsLine = [for (p in config.presets) progress.isPresetCompleted(level.id, p.id) ? '*' : '_'].join('');
|
||||
result.text = '${level.id}\n${presetsLine}';
|
||||
result.disabled = !progress.isLevelAvailable(level.id);
|
||||
|
||||
@@ -1,19 +1,18 @@
|
||||
---
|
||||
views:
|
||||
- $type: haxework.view.group.VGroupView
|
||||
skinId: container
|
||||
style: container
|
||||
geometry.padding: 20
|
||||
views:
|
||||
- id: header
|
||||
$type: haxework.view.form.LabelView
|
||||
skinId: text.header
|
||||
style: text.header
|
||||
- $type: haxework.view.ScrollView
|
||||
geometry.size.stretch: true
|
||||
scroll.skinId: scroll.vertical
|
||||
geometry.stretch: true
|
||||
view:
|
||||
id: levels
|
||||
$type: haxework.view.data.DataView
|
||||
geometry.size.width: 100%
|
||||
geometry.width: 100%
|
||||
layout:
|
||||
$type: haxework.view.layout.TailLayout
|
||||
rowSize: 10
|
||||
|
||||
@@ -1,17 +1,16 @@
|
||||
---
|
||||
views:
|
||||
- $type: haxework.view.group.VGroupView
|
||||
skinId: container
|
||||
style: container
|
||||
geometry.padding: 20
|
||||
views:
|
||||
- $type: haxework.view.form.LabelView
|
||||
skinId: text.header
|
||||
style: text.header
|
||||
text: Records
|
||||
- id: data
|
||||
$type: haxework.view.list.VListView
|
||||
factory: ~function() return new ru.m.tankz.view.common.RecordView()
|
||||
geometry.margin.top: 20
|
||||
geometry.size.stretch: true
|
||||
geometry.stretch: true
|
||||
scroll:
|
||||
$type: haxework.view.list.VScrollBarView
|
||||
skinId: scroll
|
||||
|
||||
@@ -1,12 +1,12 @@
|
||||
---
|
||||
views:
|
||||
- $type: haxework.view.group.VGroupView
|
||||
skinId: container
|
||||
style: container
|
||||
views:
|
||||
- id: level
|
||||
$type: haxework.view.form.LabelView
|
||||
skinId: text.header
|
||||
align: center
|
||||
style: text.header
|
||||
font.align: center
|
||||
- id: result
|
||||
$type: haxework.view.data.DataView
|
||||
factory: ~playerViewFactory
|
||||
|
||||
@@ -1,18 +1,17 @@
|
||||
---
|
||||
views:
|
||||
- $type: haxework.view.group.VGroupView
|
||||
skinId: container
|
||||
style: container
|
||||
geometry.padding: 20
|
||||
views:
|
||||
- $type: haxework.view.form.LabelView
|
||||
skinId: text.header
|
||||
style: text.header
|
||||
text: Settings
|
||||
- $type: haxework.view.ScrollView
|
||||
geometry.size.stretch: true
|
||||
scroll.skinId: scroll.vertical
|
||||
geometry.stretch: true
|
||||
view:
|
||||
$type: haxework.view.group.GroupView
|
||||
geometry.size.stretch: true
|
||||
geometry.stretch: true
|
||||
layout:
|
||||
$type: haxework.view.layout.TailLayout
|
||||
vAlign: top
|
||||
|
||||
@@ -1,33 +1,33 @@
|
||||
---
|
||||
views:
|
||||
- $type: haxework.view.group.VGroupView
|
||||
skinId: container
|
||||
style: container
|
||||
layout.margin: 10
|
||||
views:
|
||||
- $type: haxework.view.form.LabelView
|
||||
text: Tank'z
|
||||
skinId: font
|
||||
fontSize: 100
|
||||
style: font
|
||||
font.size: 100
|
||||
geometry.margin.bottom: 30
|
||||
- $type: haxework.view.form.ButtonView
|
||||
skinId: button.menu
|
||||
style: button.menu
|
||||
+onPress: ~startGame('classic')
|
||||
text: Classic
|
||||
- $type: haxework.view.form.ButtonView
|
||||
skinId: button.menu
|
||||
style: button.menu
|
||||
+onPress: ~startGame('dota')
|
||||
text: DotA
|
||||
- $type: haxework.view.form.ButtonView
|
||||
skinId: button.menu
|
||||
style: button.menu
|
||||
+onPress: ~startGame('death')
|
||||
text: DeathMatch
|
||||
- $type: haxework.view.form.ButtonView
|
||||
skinId: button.menu
|
||||
style: button.menu
|
||||
+onPress: ~switcher.change('record')
|
||||
text: Records
|
||||
- id: network
|
||||
$type: haxework.view.form.ButtonView
|
||||
skinId: button.menu
|
||||
style: button.menu
|
||||
+onPress: ~startNetwork()
|
||||
text: Network
|
||||
- $type: haxework.view.form.LabelView
|
||||
@@ -36,5 +36,5 @@ views:
|
||||
geometry.padding: [20, 5]
|
||||
geometry.position: absolute
|
||||
geometry.margin: [0, 20, 20, 0]
|
||||
skinId: text.box
|
||||
style: text.box
|
||||
text: $r:text:version
|
||||
|
||||
@@ -5,9 +5,11 @@ views:
|
||||
$type: haxework.view.ImageView
|
||||
- id: life
|
||||
$type: haxework.view.form.LabelView
|
||||
skinId: text.box
|
||||
geometry.size.fixed: [50, 38]
|
||||
style: text.box
|
||||
geometry.width: 50
|
||||
geometry.height: 38
|
||||
- id: score
|
||||
$type: haxework.view.form.LabelView
|
||||
skinId: text.box
|
||||
geometry.size.fixed: [100, 38]
|
||||
style: text.box
|
||||
geometry.width: 100
|
||||
geometry.height: 38
|
||||
|
||||
@@ -1,29 +1,33 @@
|
||||
---
|
||||
geometry.size.height: 38
|
||||
geometry.height: 38
|
||||
layout.margin: 5
|
||||
layout.vAlign: middle
|
||||
views:
|
||||
- id: play
|
||||
$type: haxework.view.form.ButtonView
|
||||
skinId: button.start.small
|
||||
style: button.start.small
|
||||
+onPress: ~play()
|
||||
- id: date
|
||||
$type: haxework.view.form.LabelView
|
||||
skinId: text.box
|
||||
geometry.size.fixed: [250, 38]
|
||||
style: text.box
|
||||
geometry.width: 250
|
||||
geometry.height: 38
|
||||
- id: type
|
||||
$type: haxework.view.form.LabelView
|
||||
skinId: text.box
|
||||
geometry.size.fixed: [250, 38]
|
||||
style: text.box
|
||||
geometry.width: 250
|
||||
geometry.height: 38
|
||||
- id: level
|
||||
$type: haxework.view.form.LabelView
|
||||
skinId: text.box
|
||||
geometry.size.fixed: [50, 38]
|
||||
style: text.box
|
||||
geometry.width: 250
|
||||
geometry.height: 38
|
||||
- id: preset
|
||||
$type: haxework.view.form.LabelView
|
||||
skinId: text.box
|
||||
geometry.size.fixed: [50, 38]
|
||||
style: text.box
|
||||
geometry.width: 250
|
||||
geometry.height: 38
|
||||
- id: delete
|
||||
$type: haxework.view.form.ButtonView
|
||||
skinId: button.close.small
|
||||
style: button.close.small
|
||||
+onPress: ~delete()
|
||||
|
||||
@@ -16,7 +16,8 @@ import ru.m.tankz.control.PlayerControl;
|
||||
private function set_control(value:PlayerControl):PlayerControl {
|
||||
control = value;
|
||||
slotLabel.text = '${control.playerId.team}(${control.playerId.index})';
|
||||
slotLabel.skin = theme.textBox(value.color != null ? value.color : theme.colors.text);
|
||||
// ToDo: style
|
||||
//slotLabel.skin = theme.textBox(value.color != null ? value.color : theme.colors.text);
|
||||
select.selected = control.controller;
|
||||
return control;
|
||||
}
|
||||
|
||||
@@ -1,13 +1,13 @@
|
||||
---
|
||||
geometry.size.height: 48
|
||||
geometry.height: 48
|
||||
geometry.padding: 2
|
||||
layout.margin: 10
|
||||
views:
|
||||
- id: slot
|
||||
$type: haxework.view.form.LabelView
|
||||
skinId: text.box
|
||||
geometry.size.height: 100%
|
||||
geometry.size.width: 150
|
||||
style: text.box
|
||||
geometry.height: 100%
|
||||
geometry.width: 150
|
||||
- id: select
|
||||
$type: haxework.view.form.SelectView<ru.m.tankz.control.Controller>
|
||||
labelBuilder: |
|
||||
|
||||
@@ -1,16 +1,16 @@
|
||||
---
|
||||
geometry.padding: 5
|
||||
geometry.size.height: 100%
|
||||
geometry.height: 100%
|
||||
layout.margin: 5
|
||||
layout.hAlign: left
|
||||
views:
|
||||
- id: level
|
||||
$type: haxework.view.form.LabelView
|
||||
skinId: text.box
|
||||
geometry.size.height: 38
|
||||
geometry.size.width: 100%
|
||||
style: text.box
|
||||
geometry.height: 38
|
||||
geometry.width: 100%
|
||||
- $type: haxework.view.SpriteView
|
||||
geometry.size.height: 50%
|
||||
geometry.height: 50%
|
||||
- id: bot
|
||||
$type: ru.m.tankz.view.common.LifeView
|
||||
tank: ba
|
||||
|
||||
@@ -1,16 +1,16 @@
|
||||
---
|
||||
geometry.padding: 5
|
||||
geometry.size.height: 100%
|
||||
geometry.height: 100%
|
||||
layout.margin: 5
|
||||
layout.hAlign: right
|
||||
views:
|
||||
- id: level
|
||||
$type: haxework.view.form.LabelView
|
||||
skinId: text.box
|
||||
geometry.size.height: 38
|
||||
geometry.size.width: 100%
|
||||
style: text.box
|
||||
geometry.height: 38
|
||||
geometry.width: 100%
|
||||
- $type: haxework.view.SpriteView
|
||||
geometry.size.height: 50%
|
||||
geometry.height: 50%
|
||||
- id: players
|
||||
$type: haxework.view.data.DataView
|
||||
layout:
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
---
|
||||
geometry.size.width: 100%
|
||||
geometry.width: 100%
|
||||
layout.margin: 20
|
||||
views:
|
||||
- id: radiant
|
||||
@@ -7,14 +7,14 @@ views:
|
||||
tank: bc
|
||||
color: 0xff4422
|
||||
- $type: haxework.view.SpriteView
|
||||
geometry.size.width: 25%
|
||||
geometry.width: 25%
|
||||
- id: level
|
||||
$type: haxework.view.form.LabelView
|
||||
skinId: text.box
|
||||
geometry.size.height: 38
|
||||
geometry.size.width: 50%
|
||||
style: text.box
|
||||
geometry.height: 38
|
||||
geometry.width: 50%
|
||||
- $type: haxework.view.SpriteView
|
||||
geometry.size.width: 25%
|
||||
geometry.width: 25%
|
||||
- id: dire
|
||||
$type: ru.m.tankz.view.common.LifeView
|
||||
tank: bc
|
||||
|
||||
@@ -3,20 +3,20 @@ views:
|
||||
- id: top
|
||||
$type: haxework.view.group.GroupView
|
||||
layout.hAlign: center
|
||||
geometry.size.width: 100%
|
||||
geometry.width: 100%
|
||||
- $type: haxework.view.group.HGroupView
|
||||
views:
|
||||
- id: left
|
||||
$type: haxework.view.group.GroupView
|
||||
layout.vAlign: middle
|
||||
geometry.size.height: 100%
|
||||
geometry.height: 100%
|
||||
- id: render
|
||||
$type: ru.m.tankz.render.Render
|
||||
- id: right
|
||||
$type: haxework.view.group.GroupView
|
||||
layout.vAlign: middle
|
||||
geometry.size.height: 100%
|
||||
geometry.height: 100%
|
||||
- id: bottom
|
||||
$type: haxework.view.group.GroupView
|
||||
layout.hAlign: center
|
||||
geometry.size.width: 100%
|
||||
geometry.width: 100%
|
||||
|
||||
@@ -1,17 +1,17 @@
|
||||
---
|
||||
geometry.size.stretch: true
|
||||
geometry.stretch: true
|
||||
layout:
|
||||
$type: haxework.view.layout.VerticalLayout
|
||||
views:
|
||||
- $type: haxework.view.group.VGroupView
|
||||
skinId: container
|
||||
style: container
|
||||
geometry.padding: 20
|
||||
layout.margin: 10
|
||||
views:
|
||||
- id: header
|
||||
$type: haxework.view.form.LabelView
|
||||
geometry.margin.bottom: 20
|
||||
skinId: text.header
|
||||
style: text.header
|
||||
text: Game Room
|
||||
- $type: haxework.view.group.HGroupView
|
||||
layout.margin: 10
|
||||
@@ -19,7 +19,7 @@ views:
|
||||
- id: info
|
||||
$type: haxework.view.form.LabelView
|
||||
geometry.padding: [30, 10]
|
||||
skinId: text.box
|
||||
style: text.box
|
||||
- id: start
|
||||
$type: haxework.view.form.ButtonView
|
||||
text: Start
|
||||
@@ -30,10 +30,10 @@ views:
|
||||
text: Leave
|
||||
+onPress: ~network.leaveGame()
|
||||
- $type: haxework.view.SpriteView
|
||||
geometry.size.width: 100%
|
||||
geometry.size.height: 3
|
||||
skinId: line
|
||||
geometry.width: 100%
|
||||
geometry.height: 3
|
||||
style: line
|
||||
- id: slots
|
||||
$type: haxework.view.list.VListView
|
||||
geometry.size.stretch: true
|
||||
geometry.stretch: true
|
||||
factory: ~ru.m.tankz.view.network.SlotItemView.factory
|
||||
|
||||
@@ -22,7 +22,7 @@ import ru.m.tankz.proto.room.RoomProto;
|
||||
|
||||
private function set_data(value:RoomProto):RoomProto {
|
||||
data = value;
|
||||
creatorView.skinId = value.creator.uuid == network.user.uuid ? "text.box.active" : "text.box";
|
||||
creatorView.style = value.creator.uuid == network.user.uuid ? "text.box.active" : "text.box";
|
||||
creatorView.text = value.creator.name;
|
||||
typeView.text = '${value.game.type} #${value.game.level}';
|
||||
var used = value.slots.filter(function(slot:RoomSlotProto) return slot.hasUser()).length;
|
||||
|
||||
@@ -1,26 +1,26 @@
|
||||
---
|
||||
# geometry.size.width: 100%
|
||||
geometry.size.height: 48
|
||||
# geometry.width: 100%
|
||||
geometry.height: 48
|
||||
layout.margin: 10
|
||||
layout.hAlign: center
|
||||
views:
|
||||
- id: creator
|
||||
$type: haxework.view.form.LabelView
|
||||
geometry.size.height: 100%
|
||||
geometry.size.width: 200
|
||||
skinId: text.box
|
||||
geometry.height: 100%
|
||||
geometry.width: 200
|
||||
style: text.box
|
||||
- id: type
|
||||
$type: haxework.view.form.LabelView
|
||||
geometry.size.height: 100%
|
||||
geometry.size.width: 200
|
||||
skinId: text.box
|
||||
geometry.height: 100%
|
||||
geometry.width: 200
|
||||
style: text.box
|
||||
- id: users
|
||||
$type: haxework.view.form.LabelView
|
||||
geometry.size.height: 100%
|
||||
geometry.size.width: 150
|
||||
skinId: text.box
|
||||
geometry.height: 100%
|
||||
geometry.width: 150
|
||||
style: text.box
|
||||
- id: join
|
||||
$type: haxework.view.form.ButtonView
|
||||
geometry.size.height: 100%
|
||||
geometry.height: 100%
|
||||
text: Join
|
||||
+onPress: ~join()
|
||||
|
||||
@@ -1,22 +1,22 @@
|
||||
---
|
||||
geometry.size.stretch: true
|
||||
geometry.stretch: true
|
||||
layout:
|
||||
$type: haxework.view.layout.VerticalLayout
|
||||
views:
|
||||
- $type: haxework.view.group.VGroupView
|
||||
skinId: container
|
||||
style: container
|
||||
geometry.padding: 20
|
||||
views:
|
||||
- id: header
|
||||
$type: haxework.view.form.LabelView
|
||||
geometry.margin.bottom: 20
|
||||
skinId: text.header
|
||||
style: text.header
|
||||
text: Games List
|
||||
- $type: haxework.view.form.ButtonView
|
||||
text: Create
|
||||
+onPress: ~create()
|
||||
- id: games
|
||||
$type: haxework.view.list.VListView
|
||||
geometry.size.stretch: true
|
||||
geometry.stretch: true
|
||||
factory: ~ru.m.tankz.view.network.RoomItemView.factory
|
||||
geometry.margin: 10
|
||||
|
||||
@@ -26,11 +26,12 @@ import ru.m.tankz.proto.room.RoomSlotProto;
|
||||
userView.text = value.hasUser() ? value.user.name : "(NONE)";
|
||||
userView.visible = value.hasUser();
|
||||
selectButton.visible = !value.hasUser();
|
||||
userView.skinId = (value.hasUser() && value.user.uuid == network.user.uuid) ? "text.box.active" : "text.box";
|
||||
userView.style = (value.hasUser() && value.user.uuid == network.user.uuid) ? "text.box.active" : "text.box";
|
||||
var config = configBundle.get(network.room.game.type);
|
||||
var color = config.getColor([value.slot.team, value.slot.index]);
|
||||
if (color != null) {
|
||||
typeView.skin = theme.textBox(color);
|
||||
// ToDo: style
|
||||
//typeView.skin = theme.textBox(color);
|
||||
}
|
||||
return data;
|
||||
}
|
||||
|
||||
@@ -1,23 +1,23 @@
|
||||
---
|
||||
geometry.size.height: 48
|
||||
geometry.height: 48
|
||||
geometry.padding: 2
|
||||
layout.margin: 10
|
||||
views:
|
||||
- id: type
|
||||
$type: haxework.view.form.LabelView
|
||||
skinId: text.box
|
||||
geometry.size.height: 100%
|
||||
geometry.size.width: 150
|
||||
style: text.box
|
||||
geometry.height: 100%
|
||||
geometry.width: 150
|
||||
- $type: haxework.view.group.HGroupView
|
||||
layout.hAlign: center
|
||||
layout.vAlign: middle
|
||||
geometry.size.height: 100%
|
||||
geometry.size.width: 300
|
||||
geometry.height: 100%
|
||||
geometry.width: 300
|
||||
views:
|
||||
- id: user
|
||||
$type: haxework.view.form.LabelView
|
||||
geometry.size.stretch: true
|
||||
skinId: text.box
|
||||
geometry.stretch: true
|
||||
style: text.box
|
||||
- id: select
|
||||
$type: haxework.view.form.ButtonView
|
||||
text: Select
|
||||
|
||||
@@ -51,7 +51,7 @@ private typedef Result = {
|
||||
|
||||
private function levelViewFactory(index:Int, value:LevelConfig):ToggleButtonView {
|
||||
var result = new ToggleButtonView();
|
||||
result.skinId = "button.level";
|
||||
result.style = "button.level";
|
||||
result.text = Std.string(value.id);
|
||||
return result;
|
||||
}
|
||||
|
||||
@@ -4,38 +4,38 @@ layout.vAlign: middle
|
||||
view:
|
||||
$type: haxework.view.group.VGroupView
|
||||
layout.hAlign: center
|
||||
geometry.size.stretch: true
|
||||
geometry.stretch: true
|
||||
geometry.margin: 10
|
||||
skinId: window
|
||||
style: window
|
||||
views:
|
||||
- $type: haxework.view.group.HGroupView
|
||||
geometry.size.width: 100%
|
||||
geometry.width: 100%
|
||||
geometry.padding: 10
|
||||
layout.vAlign: middle
|
||||
views:
|
||||
- id: name
|
||||
$type: haxework.view.form.LabelView
|
||||
geometry.size.width: 100%
|
||||
geometry.width: 100%
|
||||
geometry.margin.left: 10
|
||||
layout.hAlign: left
|
||||
skinId: text
|
||||
style: text
|
||||
text: New game
|
||||
- $type: haxework.view.form.ButtonView
|
||||
skinId: window.close
|
||||
style: window.close
|
||||
+onPress: ~reject('close')
|
||||
- $type: haxework.view.group.VGroupView
|
||||
geometry.size.stretch: true
|
||||
geometry.stretch: true
|
||||
geometry.padding: [5, 20]
|
||||
layout.margin: 5
|
||||
layout.hAlign: center
|
||||
views:
|
||||
- $type: haxework.view.form.LabelView
|
||||
geometry.size.width: 100%
|
||||
skinId: text
|
||||
geometry.width: 100%
|
||||
style: text
|
||||
text: Type
|
||||
- id: type
|
||||
$type: haxework.view.data.DataView
|
||||
geometry.size.width: 100%
|
||||
geometry.width: 100%
|
||||
layout:
|
||||
$type: haxework.view.layout.TailLayout
|
||||
margin: 10
|
||||
@@ -46,16 +46,15 @@ view:
|
||||
- "dota"
|
||||
- "death"
|
||||
- $type: haxework.view.form.LabelView
|
||||
geometry.size.width: 100%
|
||||
skinId: text
|
||||
geometry.width: 100%
|
||||
style: text
|
||||
text: Level
|
||||
- $type: haxework.view.ScrollView
|
||||
geometry.size.stretch: true
|
||||
scroll.skinId: scroll.vertical
|
||||
geometry.stretch: true
|
||||
view:
|
||||
id: level
|
||||
$type: haxework.view.data.DataView
|
||||
geometry.size.width: 100%
|
||||
geometry.width: 100%
|
||||
layout:
|
||||
$type: haxework.view.layout.TailLayout
|
||||
rowSize: 10
|
||||
@@ -66,7 +65,7 @@ view:
|
||||
- $type: haxework.view.group.HGroupView
|
||||
layout.hAlign: center
|
||||
layout.margin: 5
|
||||
skinId: panel
|
||||
style: panel
|
||||
views:
|
||||
- $type: haxework.view.form.ButtonView
|
||||
text: Create
|
||||
|
||||
@@ -62,7 +62,7 @@ private typedef Result = {
|
||||
|
||||
private function presetViewFactory(index:Int, value:GamePreset):ButtonView {
|
||||
var result = new ButtonView();
|
||||
result.skinId = 'button${!progress.isPresetCompleted(level.id, value.id) ? ".active" : ""}';
|
||||
result.style = 'button${!progress.isPresetCompleted(level.id, value.id) ? ".active" : ""}';
|
||||
result.text = value.name;
|
||||
result.disabled = !progress.isPresetAvailable(level.id, value.id);
|
||||
return result;
|
||||
|
||||
@@ -4,29 +4,28 @@ layout.vAlign: middle
|
||||
view:
|
||||
$type: haxework.view.group.VGroupView
|
||||
layout.hAlign: center
|
||||
geometry.size.width: 400
|
||||
geometry.size.height: 400
|
||||
geometry.width: 400
|
||||
geometry.height: 400
|
||||
geometry.margin: 10
|
||||
skinId: window
|
||||
style: window
|
||||
views:
|
||||
- $type: haxework.view.group.HGroupView
|
||||
geometry.size.width: 100%
|
||||
geometry.width: 100%
|
||||
geometry.padding: 10
|
||||
layout.vAlign: middle
|
||||
views:
|
||||
- id: name
|
||||
$type: haxework.view.form.LabelView
|
||||
geometry.size.width: 100%
|
||||
geometry.width: 100%
|
||||
geometry.margin.left: 10
|
||||
layout.hAlign: left
|
||||
skinId: text
|
||||
style: text
|
||||
- $type: haxework.view.form.ButtonView
|
||||
skinId: window.close
|
||||
style: window.close
|
||||
+onPress: ~reject('close')
|
||||
- $type: haxework.view.ScrollView
|
||||
geometry.size.stretch: true
|
||||
geometry.stretch: true
|
||||
layout.hAlign: center
|
||||
scroll.skinId: scroll.vertical
|
||||
view:
|
||||
id: slots
|
||||
$type: haxework.view.data.DataView
|
||||
@@ -44,4 +43,4 @@ view:
|
||||
$type: haxework.view.layout.HorizontalLayout
|
||||
hAlign: center
|
||||
margin: 5
|
||||
skinId: panel
|
||||
style: panel
|
||||
|
||||
@@ -4,61 +4,61 @@ layout.vAlign: middle
|
||||
view:
|
||||
$type: haxework.view.group.VGroupView
|
||||
layout.hAlign: center
|
||||
geometry.size.width: 400
|
||||
# geometry.size.height: 400
|
||||
skinId: window
|
||||
geometry.width: 400
|
||||
# geometry.height: 400
|
||||
style: window
|
||||
views:
|
||||
- $type: haxework.view.group.HGroupView
|
||||
geometry.size.width: 100%
|
||||
geometry.width: 100%
|
||||
geometry.padding: 10
|
||||
layout.vAlign: middle
|
||||
views:
|
||||
- id: name
|
||||
$type: haxework.view.form.LabelView
|
||||
geometry.size.width: 100%
|
||||
geometry.width: 100%
|
||||
geometry.margin.left: 10
|
||||
layout.hAlign: left
|
||||
skinId: text
|
||||
style: text
|
||||
text: Login
|
||||
- $type: haxework.view.form.ButtonView
|
||||
skinId: window.close
|
||||
style: window.close
|
||||
+onPress: ~reject('close')
|
||||
- $type: haxework.view.group.VGroupView
|
||||
geometry.size.width: 100%
|
||||
# geometry.size.stretch: true
|
||||
geometry.width: 100%
|
||||
# geometry.stretch: true
|
||||
geometry.padding: 20
|
||||
layout.margin: 5
|
||||
views:
|
||||
- $type: haxework.view.form.LabelView
|
||||
geometry.size.width: 100%
|
||||
skinId: text
|
||||
geometry.width: 100%
|
||||
style: text
|
||||
text: Username
|
||||
- id: username
|
||||
$type: haxework.view.form.InputView
|
||||
geometry.size.width: 100%
|
||||
geometry.size.height: 28
|
||||
skinId: text.box
|
||||
geometry.width: 100%
|
||||
geometry.height: 28
|
||||
style: text.box
|
||||
- $type: haxework.view.form.LabelView
|
||||
geometry.size.width: 100%
|
||||
skinId: text
|
||||
geometry.width: 100%
|
||||
style: text
|
||||
text: Password
|
||||
visible: false
|
||||
- id: password
|
||||
$type: haxework.view.form.InputView
|
||||
textField.displayAsPassword: true
|
||||
geometry.size.width: 100%
|
||||
geometry.size.height: 28
|
||||
skinId: text.box
|
||||
geometry.width: 100%
|
||||
geometry.height: 28
|
||||
style: text.box
|
||||
visible: false
|
||||
- id: error
|
||||
$type: haxework.view.text.TextView
|
||||
geometry.size.width: 100%
|
||||
skinId: text
|
||||
geometry.width: 100%
|
||||
style: text
|
||||
fill: false
|
||||
- $type: haxework.view.group.HGroupView
|
||||
layout.hAlign: center
|
||||
layout.margin: 5
|
||||
skinId: panel
|
||||
style: panel
|
||||
views:
|
||||
- $type: haxework.view.form.ButtonView
|
||||
text: Submit
|
||||
|
||||
@@ -72,7 +72,7 @@ class KeyboardMap {
|
||||
private function set_edit(value:Bool):Bool {
|
||||
if (edit != value) {
|
||||
edit = value;
|
||||
action.skinId = key.skinId = edit ? "text.box.active" : "text.box";
|
||||
action.style = key.style = edit ? "text.box.active" : "text.box";
|
||||
}
|
||||
return edit;
|
||||
}
|
||||
|
||||
@@ -4,9 +4,11 @@ layout.margin: 5
|
||||
views:
|
||||
- id: action
|
||||
$type: haxework.view.form.LabelView
|
||||
geometry.size.fixed: [180, 38]
|
||||
skinId: text.box
|
||||
geometry.width: 180
|
||||
geometry.height: 38
|
||||
style: text.box
|
||||
- id: key
|
||||
$type: haxework.view.form.LabelView
|
||||
geometry.size.fixed: [250, 38]
|
||||
skinId: text.box
|
||||
geometry.width: 250
|
||||
geometry.height: 38
|
||||
style: text.box
|
||||
|
||||
@@ -1,17 +1,17 @@
|
||||
layout.margin: 10
|
||||
layout.hAlign: center
|
||||
geometry.size.width: 400
|
||||
geometry.width: 400
|
||||
views:
|
||||
- id: label
|
||||
$type: haxework.view.form.LabelView
|
||||
skinId: text
|
||||
style: text
|
||||
- id: panel
|
||||
$type: haxework.view.group.GroupView
|
||||
layout:
|
||||
$type: haxework.view.layout.TailLayout
|
||||
rowSize: 2
|
||||
margin: 10
|
||||
geometry.size.width: 100%
|
||||
geometry.width: 100%
|
||||
views:
|
||||
- $type: haxework.view.form.ButtonView
|
||||
+onPress: ~screen()
|
||||
|
||||
Reference in New Issue
Block a user