update haxework. ep3
This commit is contained in:
@@ -1,26 +0,0 @@
|
|||||||
package ru.m.skin;
|
|
||||||
|
|
||||||
import flash.display.Graphics;
|
|
||||||
import haxework.gui.ButtonView;
|
|
||||||
import haxework.gui.skin.ButtonColorSkin;
|
|
||||||
|
|
||||||
class SimpleButtonSkin extends ButtonColorSkin {
|
|
||||||
|
|
||||||
public var borderColor(default, default):Int;
|
|
||||||
|
|
||||||
public function new(color:Int = 0xffffff, borderColor:Int = 0xffffff) {
|
|
||||||
super(color, 0.6);
|
|
||||||
this.borderColor = borderColor;
|
|
||||||
}
|
|
||||||
|
|
||||||
override public function draw(view:ButtonView):Void {
|
|
||||||
var color:Int = selectColor(view);
|
|
||||||
var graphics:Graphics = view.content.graphics;
|
|
||||||
graphics.clear();
|
|
||||||
graphics.beginFill(color, alpha);
|
|
||||||
graphics.lineStyle(2, borderColor);
|
|
||||||
//graphics.drawRoundRect(0, 0, view.width, view.height, 10, 10);
|
|
||||||
graphics.drawRect(0, 0, view.width, view.height);
|
|
||||||
graphics.endFill();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@@ -33,6 +33,7 @@ class Client {
|
|||||||
var view:ClientView = new ClientView();
|
var view:ClientView = new ClientView();
|
||||||
Root.bind(view);
|
Root.bind(view);
|
||||||
view.launch();
|
view.launch();
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -1,13 +1,14 @@
|
|||||||
---
|
---
|
||||||
$type: haxework.gui.VGroupView
|
$type: haxework.gui.VGroupView
|
||||||
pWidth: 100
|
geometry.size.stretch: true
|
||||||
pHeight: 100
|
layout.hAlign: center
|
||||||
|
layout.vAlign: middle
|
||||||
skin: $r:skin:light
|
skin: $r:skin:light
|
||||||
views:
|
views:
|
||||||
- id: switcher
|
- id: switcher
|
||||||
$type: haxework.gui.frame.FrameSwitcher
|
$type: haxework.gui.frame.FrameSwitcher
|
||||||
width: 960
|
geometry.size.width: 960
|
||||||
height: 720
|
geometry.size.height: 720
|
||||||
skin: $r:skin:dark
|
skin: $r:skin:dark
|
||||||
views:
|
views:
|
||||||
- id: start
|
- id: start
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
package ru.m.tankz;
|
package ru.m.tankz;
|
||||||
|
|
||||||
import ru.m.skin.SimpleButtonSkin;
|
import haxework.gui.utils.ColorUtils;
|
||||||
import haxework.gui.skin.Skin;
|
import haxework.gui.skin.Skin;
|
||||||
import haxework.gui.skin.ButtonBitmapSkin;
|
import haxework.gui.skin.ButtonBitmapSkin;
|
||||||
import haxework.gui.utils.DrawUtil;
|
import haxework.gui.utils.DrawUtil;
|
||||||
@@ -26,14 +26,26 @@ class Style {
|
|||||||
resources.skin.put("light", [Skin.color(lightColor)]);
|
resources.skin.put("light", [Skin.color(lightColor)]);
|
||||||
resources.skin.put("dark", [Skin.color(darkColor)]);
|
resources.skin.put("dark", [Skin.color(darkColor)]);
|
||||||
resources.skin.put("text", [Skin.text(textColor, 16, fontFamily)]);
|
resources.skin.put("text", [Skin.text(textColor, 16, fontFamily)]);
|
||||||
resources.skin.put("button", [button, Skin.text(textColor, 18, fontFamily), Skin.size(250, 60)]);
|
resources.skin.put("button", [
|
||||||
|
button,
|
||||||
|
Skin.text(textColor, 18, fontFamily),
|
||||||
|
Skin.size(250, 60)
|
||||||
|
]);
|
||||||
resources.skin.put("button.simple", [
|
resources.skin.put("button.simple", [
|
||||||
new SimpleButtonSkin(lightColor, textColor),
|
Skin.buttonColor(lightColor),
|
||||||
Skin.text(textColor, 16, fontFamily),
|
Skin.text(textColor, 16, fontFamily),
|
||||||
Skin.size(100, 36),
|
Skin.size(100, 36),
|
||||||
]);
|
]);
|
||||||
|
resources.skin.put("button.toggle", [
|
||||||
|
Skin.tabColor(lightColor),
|
||||||
|
Skin.text(textColor, 16, fontFamily),
|
||||||
|
Skin.size(200, 36),
|
||||||
|
]);
|
||||||
resources.skin.put("button.close", [
|
resources.skin.put("button.close", [
|
||||||
new ButtonBitmapSkin(Assets.getBitmapData("resources/image/ui/close.png"))
|
new ButtonBitmapSkin(Assets.getBitmapData("resources/image/ui/close.png"))
|
||||||
]);
|
]);
|
||||||
|
resources.skin.put("border", [
|
||||||
|
Skin.border(ColorUtils.multiply(lightColor, 1.5), 1, 2),
|
||||||
|
]);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,40 +0,0 @@
|
|||||||
---
|
|
||||||
button:
|
|
||||||
width: 250
|
|
||||||
height: 60
|
|
||||||
skin:
|
|
||||||
$type: haxework.gui.skin.ButtonBitmapSkin
|
|
||||||
upImage: "@asset:image:resources/image/ui/button/normal.png"
|
|
||||||
downImage: "@asset:image:resources/image/ui/button/down.png"
|
|
||||||
overImage: "@asset:image:resources/image/ui/button/over.png"
|
|
||||||
fillType: NINEPATH
|
|
||||||
fontFamily: Courirer New
|
|
||||||
fontColor: 0xE7E0BB
|
|
||||||
fontSize: 18
|
|
||||||
|
|
||||||
button_simple:
|
|
||||||
width: 100
|
|
||||||
height: 36
|
|
||||||
skin:
|
|
||||||
$type: ru.m.skin.SimpleButtonSkin
|
|
||||||
fontFamily: Courirer New
|
|
||||||
fontColor: 0xffffff
|
|
||||||
fontSize: 18
|
|
||||||
shadowColor: 0x000000
|
|
||||||
|
|
||||||
label:
|
|
||||||
fontColor: 0xffffff
|
|
||||||
fontFamily: Courirer New
|
|
||||||
fontSize: 16
|
|
||||||
shadowColor: 0x000000
|
|
||||||
|
|
||||||
close:
|
|
||||||
inLayout: false
|
|
||||||
hAlign: LEFT
|
|
||||||
vAlign: BOTTOM
|
|
||||||
leftMargin: 10
|
|
||||||
bottomMargin: 10
|
|
||||||
contentSize: true
|
|
||||||
skin:
|
|
||||||
$type: haxework.gui.skin.ButtonBitmapSkin
|
|
||||||
image: "@asset:image:resources/image/ui/close.png"
|
|
||||||
@@ -1,5 +1,6 @@
|
|||||||
package ru.m.tankz.frame;
|
package ru.m.tankz.frame;
|
||||||
|
|
||||||
|
import haxework.gui.core.Geometry.Position;
|
||||||
import flash.events.Event;
|
import flash.events.Event;
|
||||||
import haxe.ds.Option;
|
import haxe.ds.Option;
|
||||||
import haxe.Timer;
|
import haxe.Timer;
|
||||||
@@ -19,7 +20,6 @@ import ru.m.tankz.sound.SoundManager;
|
|||||||
import ru.m.tankz.storage.SaveStorage;
|
import ru.m.tankz.storage.SaveStorage;
|
||||||
import ru.m.tankz.Type.GameType;
|
import ru.m.tankz.Type.GameType;
|
||||||
|
|
||||||
|
|
||||||
@:template class GameFrame extends VGroupView {
|
@:template class GameFrame extends VGroupView {
|
||||||
|
|
||||||
private static inline var TAG = "GameFrame";
|
private static inline var TAG = "GameFrame";
|
||||||
@@ -60,7 +60,7 @@ import ru.m.tankz.Type.GameType;
|
|||||||
private function start(state:GameState):Void {
|
private function start(state:GameState):Void {
|
||||||
for (type in panels.keys()) {
|
for (type in panels.keys()) {
|
||||||
panels.get(type).visible = type == state.type;
|
panels.get(type).visible = type == state.type;
|
||||||
panels.get(type).inLayout = type == state.type;
|
panels.get(type).geometry.position = type == state.type ? LAYOUT : ABSOLUTE;
|
||||||
}
|
}
|
||||||
// ToDo: local / network game
|
// ToDo: local / network game
|
||||||
switch (1) {
|
switch (1) {
|
||||||
@@ -76,7 +76,7 @@ import ru.m.tankz.Type.GameType;
|
|||||||
network.game = cast game;
|
network.game = cast game;
|
||||||
}
|
}
|
||||||
panels.get(state.type).game = game;
|
panels.get(state.type).game = game;
|
||||||
content.addEventListener(Event.ENTER_FRAME, redraw);
|
content.addEventListener(Event.ENTER_FRAME, _redraw);
|
||||||
render.draw(game.engine);
|
render.draw(game.engine);
|
||||||
sound.play('start');
|
sound.play('start');
|
||||||
}
|
}
|
||||||
@@ -86,7 +86,7 @@ import ru.m.tankz.Type.GameType;
|
|||||||
timer.stop();
|
timer.stop();
|
||||||
timer = null;
|
timer = null;
|
||||||
}
|
}
|
||||||
content.removeEventListener(Event.ENTER_FRAME, redraw);
|
content.removeEventListener(Event.ENTER_FRAME, _redraw);
|
||||||
if (game != null) {
|
if (game != null) {
|
||||||
game.dispose();
|
game.dispose();
|
||||||
game = null;
|
game = null;
|
||||||
@@ -95,14 +95,14 @@ import ru.m.tankz.Type.GameType;
|
|||||||
}
|
}
|
||||||
|
|
||||||
private function onGameStateChange(s:GameState):GameState {
|
private function onGameStateChange(s:GameState):GameState {
|
||||||
panels.get(s.type).invalidate();
|
panels.get(s.type).toUpdate();
|
||||||
return s;
|
return s;
|
||||||
}
|
}
|
||||||
|
|
||||||
private function onGameComplete(result:Option<GameState>):Void {
|
private function onGameComplete(result:Option<GameState>):Void {
|
||||||
switch (result) {
|
switch (result) {
|
||||||
case Option.Some(s):
|
case Option.Some(s):
|
||||||
panels.get(s.type).invalidate();
|
panels.get(s.type).toUpdate();
|
||||||
case Option.None:
|
case Option.None:
|
||||||
}
|
}
|
||||||
switch (game.next()) {
|
switch (game.next()) {
|
||||||
@@ -125,7 +125,7 @@ import ru.m.tankz.Type.GameType;
|
|||||||
game.engine.update();
|
game.engine.update();
|
||||||
}
|
}
|
||||||
|
|
||||||
private function redraw(_):Void {
|
private function _redraw(_):Void {
|
||||||
render.draw(game.engine);
|
render.draw(game.engine);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,24 +1,24 @@
|
|||||||
---
|
---
|
||||||
pWidth: 100
|
geometry.size.stretch: true
|
||||||
pHeight: 100
|
layout.hAlign: center
|
||||||
|
layout.vAlign: middle
|
||||||
views:
|
views:
|
||||||
- id: dotaPanel
|
- id: dotaPanel
|
||||||
$type: ru.m.tankz.frame.game.DotaGamePanel
|
$type: ru.m.tankz.frame.game.DotaGamePanel
|
||||||
pWidth: 100
|
geometry.size.width: 100%
|
||||||
height: 20
|
geometry.size.height: 20
|
||||||
|
geometry.position: absolute
|
||||||
visible: false
|
visible: false
|
||||||
inLayout: false
|
|
||||||
- $type: haxework.gui.HGroupView
|
- $type: haxework.gui.HGroupView
|
||||||
pWidth: 100
|
geometry.size.stretch: true
|
||||||
pHeight: 100
|
layout.hAlign: center
|
||||||
|
layout.vAlign: middle
|
||||||
views:
|
views:
|
||||||
- id: render
|
- id: render
|
||||||
$type: ru.m.tankz.render.Render
|
$type: ru.m.tankz.render.Render
|
||||||
contentSize: true
|
|
||||||
- id: classicPanel
|
- id: classicPanel
|
||||||
$type: ru.m.tankz.frame.game.ClassicGamePanel
|
$type: ru.m.tankz.frame.game.ClassicGamePanel
|
||||||
width: 200
|
geometry.size.width: 200
|
||||||
pHeight: 100
|
geometry.size.height: 100%
|
||||||
|
geometry.position: absolute
|
||||||
visible: false
|
visible: false
|
||||||
inLayout: false
|
|
||||||
|
|
||||||
|
|||||||
@@ -1,31 +1,28 @@
|
|||||||
---
|
---
|
||||||
pWidth: 100
|
geometry.size.stretch: true
|
||||||
pHeight: 100
|
|
||||||
views:
|
views:
|
||||||
- $type: haxework.gui.LabelView
|
- $type: haxework.gui.LabelView
|
||||||
skin: $r:skin:text
|
skin: $r:skin:text
|
||||||
pWidth: 100
|
geometry.size.percent.width: 100
|
||||||
height: 20
|
geometry.size.fixed.height: 20
|
||||||
text: Settings
|
text: Settings
|
||||||
- $type: haxework.gui.HGroupView
|
- $type: haxework.gui.HGroupView
|
||||||
pWidth: 100
|
geometry.size.stretch: true
|
||||||
pHeight: 100
|
|
||||||
views:
|
views:
|
||||||
- $type: ru.m.tankz.frame.settings.SettingsEditor
|
- $type: ru.m.tankz.frame.settings.SettingsEditor
|
||||||
pWidth: 50
|
geometry.size.percent.width: 50
|
||||||
pHeight: 100
|
geometry.size.percent.height: 100
|
||||||
controlIndex: 0
|
controlIndex: 0
|
||||||
- $type: ru.m.tankz.frame.settings.SettingsEditor
|
- $type: ru.m.tankz.frame.settings.SettingsEditor
|
||||||
pWidth: 50
|
geometry.size.percent.width: 50
|
||||||
pHeight: 100
|
geometry.size.percent.height: 100
|
||||||
controlIndex: 1
|
controlIndex: 1
|
||||||
- id: close
|
- id: close
|
||||||
$type: haxework.gui.ButtonView
|
$type: haxework.gui.ButtonView
|
||||||
skin: $r:skin:button.close
|
skin: $r:skin:button.close
|
||||||
+onPress: $this:onPress
|
+onPress: $this:onPress
|
||||||
inLayout: false
|
geometry.position: absolute
|
||||||
hAlign: LEFT
|
geometry.margin.left: 10
|
||||||
vAlign: BOTTOM
|
geometry.margin.bottom: 10
|
||||||
leftMargin: 10
|
geometry.vAlign: bottom
|
||||||
bottomMargin: 10
|
geometry.hAlign: left
|
||||||
contentSize: true
|
|
||||||
|
|||||||
@@ -1,13 +1,12 @@
|
|||||||
---
|
---
|
||||||
pWidth: 100
|
geometry.size.stretch: true
|
||||||
pHeight: 100
|
layout.hAlign: center
|
||||||
|
layout.vAlign: middle
|
||||||
views:
|
views:
|
||||||
- $type: haxework.gui.ImageView
|
- $type: haxework.gui.ImageView
|
||||||
image: $asset:image:resources/image/ui/logo.png
|
image: $asset:image:resources/image/ui/logo.png
|
||||||
contentSize: true
|
geometry.margin.bottom: 15
|
||||||
bottomMargin: 15
|
|
||||||
- $type: haxework.gui.VGroupView
|
- $type: haxework.gui.VGroupView
|
||||||
contentSize: true
|
|
||||||
views:
|
views:
|
||||||
- id: classic
|
- id: classic
|
||||||
$type: haxework.gui.ButtonView
|
$type: haxework.gui.ButtonView
|
||||||
@@ -28,21 +27,19 @@ views:
|
|||||||
visible: false
|
visible: false
|
||||||
- $type: haxework.gui.LabelView
|
- $type: haxework.gui.LabelView
|
||||||
skin: $r:skin:text
|
skin: $r:skin:text
|
||||||
inLayout: false
|
geometry.position: absolute
|
||||||
contentSize: true
|
geometry.margin.right: 10
|
||||||
vAlign: BOTTOM
|
geometry.margin.bottom: 10
|
||||||
hAlign: RIGHT
|
geometry.vAlign: bottom
|
||||||
rightMargin: 10
|
geometry.hAlign: right
|
||||||
bottomMargin: 10
|
|
||||||
text: $r:text:version
|
text: $r:text:version
|
||||||
- id: settings
|
- id: settings
|
||||||
$type: haxework.gui.ButtonView
|
$type: haxework.gui.ButtonView
|
||||||
inLayout: false
|
geometry.position: absolute
|
||||||
hAlign: LEFT
|
geometry.margin.left: 10
|
||||||
vAlign: BOTTOM
|
geometry.margin.bottom: 10
|
||||||
leftMargin: 10
|
geometry.vAlign: bottom
|
||||||
bottomMargin: 10
|
geometry.hAlign: left
|
||||||
contentSize: true
|
|
||||||
skin:
|
skin:
|
||||||
- $type: haxework.gui.skin.ButtonBitmapSkin
|
- $type: haxework.gui.skin.ButtonBitmapSkin
|
||||||
image: $asset:image:resources/image/ui/settings.png
|
image: $asset:image:resources/image/ui/settings.png
|
||||||
|
|||||||
@@ -70,6 +70,7 @@ import ru.m.tankz.Type;
|
|||||||
this.players.data = [];
|
this.players.data = [];
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
toUpdate();
|
||||||
return presetId;
|
return presetId;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -1,37 +1,35 @@
|
|||||||
---
|
---
|
||||||
pWidth: 100
|
geometry.size.stretch: true
|
||||||
pHeight: 100
|
|
||||||
views:
|
views:
|
||||||
- id: presets
|
- id: presets
|
||||||
$type: ru.m.tankz.frame.start.PresetsView
|
$type: ru.m.tankz.frame.start.PresetsView
|
||||||
contentSize: true
|
geometry.size.width: 100%
|
||||||
topMargin: 10
|
geometry.margin.top: 10
|
||||||
|
layout.hAlign: center
|
||||||
- $type: haxework.gui.HGroupView
|
- $type: haxework.gui.HGroupView
|
||||||
pWidth: 100
|
skin: $r:skin:border
|
||||||
pHeight: 100
|
geometry.size.stretch: true
|
||||||
views:
|
views:
|
||||||
- id: players
|
- id: players
|
||||||
$type: haxework.gui.list.VListView<PlayerId>
|
$type: haxework.gui.list.VListView<PlayerId>
|
||||||
factory: { $class: ru.m.tankz.frame.start.PlayerView }
|
factory: { $class: ru.m.tankz.frame.start.PlayerView }
|
||||||
pWidth: 50
|
geometry.size.percent: [50, 100]
|
||||||
pHeight: 100
|
geometry.padding: 10
|
||||||
paddings: 10
|
|
||||||
scroll:
|
scroll:
|
||||||
$type: haxework.gui.list.VScrollBarView
|
$type: haxework.gui.list.VScrollBarView
|
||||||
width: 10
|
geometry.size.width: 10
|
||||||
pHeight: 100
|
geometry.size.height: 100%
|
||||||
skin:
|
skin:
|
||||||
- $type: [haxework.gui.list.ScrollBarSkin.vertical]
|
- $type: [haxework.gui.list.ScrollBarSkin.vertical]
|
||||||
- id: levels
|
- id: levels
|
||||||
$type: haxework.gui.list.VListView<Int>
|
$type: haxework.gui.list.VListView<Int>
|
||||||
factory: { $class: ru.m.tankz.frame.start.LevelView }
|
factory: { $class: ru.m.tankz.frame.start.LevelView }
|
||||||
+onItemSelect: $this:onListItemClick
|
+onItemSelect: $this:onListItemClick
|
||||||
pWidth: 50
|
geometry.size.percent: [50, 100]
|
||||||
pHeight: 100
|
geometry.padding: 10
|
||||||
paddings: 10
|
|
||||||
scroll:
|
scroll:
|
||||||
$type: haxework.gui.list.VScrollBarView
|
$type: haxework.gui.list.VScrollBarView
|
||||||
width: 10
|
geometry.size.width: 10
|
||||||
pHeight: 100
|
geometry.size.height: 100%
|
||||||
skin:
|
skin:
|
||||||
- $type: [haxework.gui.list.ScrollBarSkin.vertical]
|
- $type: [haxework.gui.list.ScrollBarSkin.vertical]
|
||||||
|
|||||||
@@ -1,16 +1,18 @@
|
|||||||
|
---
|
||||||
|
layout.vAlign: middle
|
||||||
views:
|
views:
|
||||||
- id: botstate
|
- id: botstate
|
||||||
$type: haxework.gui.LabelView
|
$type: haxework.gui.LabelView
|
||||||
$style: label
|
skin: $r:skin:text
|
||||||
pWidth: 100
|
geometry.size.width: 100%
|
||||||
height: 20
|
geometry.size.height: 20
|
||||||
- id: player1state
|
- id: player1state
|
||||||
$type: haxework.gui.LabelView
|
$type: haxework.gui.LabelView
|
||||||
$style: label
|
skin: $r:skin:text
|
||||||
pWidth: 100
|
geometry.size.width: 100%
|
||||||
height: 20
|
geometry.size.height: 20
|
||||||
- id: player2state
|
- id: player2state
|
||||||
$type: haxework.gui.LabelView
|
$type: haxework.gui.LabelView
|
||||||
$style: label
|
skin: $r:skin:text
|
||||||
pWidth: 100
|
geometry.size.width: 100%
|
||||||
height: 20
|
geometry.size.height: 20
|
||||||
|
|||||||
@@ -1,6 +1,7 @@
|
|||||||
|
---
|
||||||
views:
|
views:
|
||||||
- id: state
|
- id: state
|
||||||
$type: haxework.gui.LabelView
|
$type: haxework.gui.LabelView
|
||||||
$style: label
|
skin: $r:skin:text
|
||||||
pWidth: 100
|
geometry.size.width: 100%
|
||||||
height: 20
|
geometry.size.height: 20
|
||||||
|
|||||||
@@ -64,7 +64,7 @@ class KeyboardMap {
|
|||||||
|
|
||||||
public function edit():Promise<Int> {
|
public function edit():Promise<Int> {
|
||||||
cast(this.skin[0], ColorSkin).color = 0x00ff00;
|
cast(this.skin[0], ColorSkin).color = 0x00ff00;
|
||||||
invalidate();
|
toRedraw();
|
||||||
editDeferred = new Deferred();
|
editDeferred = new Deferred();
|
||||||
content.stage.addEventListener(KeyboardEvent.KEY_DOWN, onKeyDown);
|
content.stage.addEventListener(KeyboardEvent.KEY_DOWN, onKeyDown);
|
||||||
return editDeferred.promise();
|
return editDeferred.promise();
|
||||||
@@ -73,7 +73,7 @@ class KeyboardMap {
|
|||||||
private function onKeyDown(event: KeyboardEvent):Void {
|
private function onKeyDown(event: KeyboardEvent):Void {
|
||||||
content.stage.removeEventListener(KeyboardEvent.KEY_DOWN, onKeyDown);
|
content.stage.removeEventListener(KeyboardEvent.KEY_DOWN, onKeyDown);
|
||||||
cast(this.skin[0], ColorSkin).color = 0x000000;
|
cast(this.skin[0], ColorSkin).color = 0x000000;
|
||||||
invalidate();
|
toRedraw();
|
||||||
|
|
||||||
data.key = event.keyCode;
|
data.key = event.keyCode;
|
||||||
key.text = keyLabel(data.key);
|
key.text = keyLabel(data.key);
|
||||||
|
|||||||
@@ -1,19 +1,19 @@
|
|||||||
---
|
---
|
||||||
pWidth: 100
|
geometry.size.width: 100%
|
||||||
height: 44
|
geometry.size.height: 44
|
||||||
margins: 5
|
geometry.margin: 5
|
||||||
views:
|
views:
|
||||||
- id: action
|
- id: action
|
||||||
$type: haxework.gui.LabelView
|
$type: haxework.gui.LabelView
|
||||||
skin: $r:skin:text
|
skin: $r:skin:text
|
||||||
pWidth: 50
|
geometry.size.width: 50%
|
||||||
pHeight: 100
|
geometry.size.height: 100%
|
||||||
text: ""
|
text: ""
|
||||||
- id: key
|
- id: key
|
||||||
$type: haxework.gui.LabelView
|
$type: haxework.gui.LabelView
|
||||||
skin: $r:skin:text
|
skin: $r:skin:text
|
||||||
pWidth: 50
|
geometry.size.width: 50%
|
||||||
pHeight: 100
|
geometry.size.height: 100%
|
||||||
text: ""
|
text: ""
|
||||||
skin:
|
skin:
|
||||||
- $type: haxework.gui.skin.ColorSkin
|
- $type: haxework.gui.skin.ColorSkin
|
||||||
|
|||||||
@@ -51,13 +51,13 @@ import ru.m.tankz.storage.SettingsStorage;
|
|||||||
for (item in list.data) {
|
for (item in list.data) {
|
||||||
item.key = -1;
|
item.key = -1;
|
||||||
}
|
}
|
||||||
list.invalidate();
|
list.toUpdate();
|
||||||
_save();
|
_save();
|
||||||
}
|
}
|
||||||
|
|
||||||
private function _reset():Void {
|
private function _reset():Void {
|
||||||
list.data = SettingsStorage.getDefault(controlIndex).data;
|
list.data = SettingsStorage.getDefault(controlIndex).data;
|
||||||
list.invalidate();
|
list.toUpdate();
|
||||||
_save();
|
_save();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -1,11 +1,11 @@
|
|||||||
layoutMargin: 10
|
layout.margin: 10
|
||||||
|
layout.hAlign: center
|
||||||
views:
|
views:
|
||||||
- id: label
|
- id: label
|
||||||
$type: haxework.gui.LabelView
|
$type: haxework.gui.LabelView
|
||||||
skin: $r:skin:text
|
skin: $r:skin:text
|
||||||
- $type: haxework.gui.HGroupView
|
- $type: haxework.gui.HGroupView
|
||||||
contentSize: true
|
layout.margin: 10
|
||||||
layoutMargin: 10
|
|
||||||
views:
|
views:
|
||||||
- id: change
|
- id: change
|
||||||
$type: haxework.gui.ButtonView
|
$type: haxework.gui.ButtonView
|
||||||
@@ -25,9 +25,8 @@ views:
|
|||||||
- id: list
|
- id: list
|
||||||
$type: haxework.gui.list.VListView<ru.m.tankz.control.ActionItem>
|
$type: haxework.gui.list.VListView<ru.m.tankz.control.ActionItem>
|
||||||
factory: { $class: ru.m.tankz.frame.settings.ActionView }
|
factory: { $class: ru.m.tankz.frame.settings.ActionView }
|
||||||
pWidth: 100
|
geometry.size.stretch: true
|
||||||
pHeight: 100
|
|
||||||
scroll:
|
scroll:
|
||||||
$type: haxework.gui.list.VScrollBarView
|
$type: haxework.gui.list.VScrollBarView
|
||||||
width: 1
|
geometry.position: absolute
|
||||||
pHeight: 100
|
visible: false
|
||||||
|
|||||||
@@ -1,13 +1,12 @@
|
|||||||
---
|
---
|
||||||
pWidth: 100
|
geometry.size.width: 100%
|
||||||
height: 44
|
geometry.size.height: 44
|
||||||
margins: 5
|
geometry.margin: 5
|
||||||
views:
|
views:
|
||||||
- id: label
|
- id: label
|
||||||
$type: haxework.gui.LabelView
|
$type: haxework.gui.LabelView
|
||||||
$style: label
|
skin: $r:skin:text
|
||||||
pWidth: 100
|
geometry.size.stretch: true
|
||||||
pHeight: 100
|
|
||||||
text: ""
|
text: ""
|
||||||
skin:
|
skin:
|
||||||
- $type: haxework.gui.skin.ColorSkin
|
- $type: haxework.gui.skin.ColorSkin
|
||||||
|
|||||||
@@ -1,14 +1,13 @@
|
|||||||
---
|
---
|
||||||
pWidth: 50
|
geometry.size.width: 50%
|
||||||
height: 44
|
geometry.size.height: 44
|
||||||
margins: 5
|
geometry.margin: 5
|
||||||
layoutMargin: 10
|
layout.margin: 10
|
||||||
views:
|
views:
|
||||||
- id: index
|
- id: index
|
||||||
$type: haxework.gui.LabelView
|
$type: haxework.gui.LabelView
|
||||||
$style: label
|
$style: label
|
||||||
pHeight: 100
|
geometry.size.stretch: true
|
||||||
pWidth: 100
|
|
||||||
skin:
|
skin:
|
||||||
- $type: haxework.gui.skin.ColorSkin
|
- $type: haxework.gui.skin.ColorSkin
|
||||||
color: 0x000000
|
color: 0x000000
|
||||||
@@ -17,4 +16,3 @@ views:
|
|||||||
shadowColor: 0x000000
|
shadowColor: 0x000000
|
||||||
- id: control
|
- id: control
|
||||||
$type: haxework.gui.ButtonView
|
$type: haxework.gui.ButtonView
|
||||||
contentSize: true
|
|
||||||
|
|||||||
@@ -1,27 +1,26 @@
|
|||||||
package ru.m.tankz.frame.start;
|
package ru.m.tankz.frame.start;
|
||||||
|
|
||||||
import haxework.resources.IResources;
|
import haxework.resources.IResources;
|
||||||
import haxework.provider.Provider;
|
|
||||||
import ru.m.skin.SimpleButtonSkin;
|
|
||||||
import ru.m.signal.Signal.Signal1;
|
|
||||||
import haxework.gui.ToggleButtonView;
|
|
||||||
import ru.m.tankz.Type;
|
|
||||||
import haxework.gui.ButtonView;
|
import haxework.gui.ButtonView;
|
||||||
import ru.m.tankz.config.Config.GamePreset;
|
|
||||||
import haxework.gui.HGroupView;
|
import haxework.gui.HGroupView;
|
||||||
|
import haxework.gui.ToggleButtonView;
|
||||||
|
import ru.m.signal.Signal;
|
||||||
|
import ru.m.tankz.config.Config.GamePreset;
|
||||||
|
import ru.m.tankz.Type;
|
||||||
|
|
||||||
class PresetsView extends HGroupView {
|
class PresetsView extends HGroupView {
|
||||||
|
|
||||||
public var data(default, set):Array<GamePreset>;
|
public var data(default, set):Array<GamePreset>;
|
||||||
public var selected(default, set):PresetId;
|
public var selected(default, set):PresetId;
|
||||||
|
|
||||||
public var change(default, null):Signal1<PresetId>;
|
public var change(default, null):Signal<PresetId>;
|
||||||
|
|
||||||
|
@:provide private static var resources:IResources;
|
||||||
|
|
||||||
public function new() {
|
public function new() {
|
||||||
super();
|
super();
|
||||||
layoutMargin = 10;
|
layout.margin = 10;
|
||||||
change = new Signal1();
|
change = new Signal();
|
||||||
}
|
}
|
||||||
|
|
||||||
private function set_data(value:Array<GamePreset>):Array<GamePreset> {
|
private function set_data(value:Array<GamePreset>):Array<GamePreset> {
|
||||||
@@ -29,16 +28,15 @@ class PresetsView extends HGroupView {
|
|||||||
removeAllViews();
|
removeAllViews();
|
||||||
for (item in data) {
|
for (item in data) {
|
||||||
var view = new ToggleButtonView();
|
var view = new ToggleButtonView();
|
||||||
view.skin = [new SimpleButtonSkin()];
|
view.skin = resources.skin.get("button.toggle");
|
||||||
view.onSkin = [new SimpleButtonSkin(0x00ff00)];
|
|
||||||
view.text = item.id;
|
view.text = item.id;
|
||||||
view.width = 250;
|
|
||||||
view.height = 36;
|
|
||||||
view.fontFamily = "Courirer New";
|
view.fontFamily = "Courirer New";
|
||||||
view.fontColor = 0xffffff;
|
view.fontColor = 0xffffff;
|
||||||
view.fontSize = 18;
|
view.fontSize = 18;
|
||||||
view.shadowColor = 0x000000;
|
view.shadowColor = 0x000000;
|
||||||
view.onPress.connect(onPress);
|
view.onPress.connect(onPress);
|
||||||
|
//ToDo: update text and size
|
||||||
|
view.redraw();
|
||||||
view.update();
|
view.update();
|
||||||
addView(view);
|
addView(view);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -53,10 +53,8 @@ class Render extends SpriteView {
|
|||||||
g.beginFill(0x000000);
|
g.beginFill(0x000000);
|
||||||
g.drawRect(0, 0, mapWidth, mapHeight);
|
g.drawRect(0, 0, mapWidth, mapHeight);
|
||||||
g.endFill();
|
g.endFill();
|
||||||
if (contentSize) {
|
geometry.size.content.width = mapWidth;
|
||||||
width = mapWidth;
|
geometry.size.content.height = mapHeight;
|
||||||
height = mapHeight;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public function draw(game:Engine):Void {
|
public function draw(game:Engine):Void {
|
||||||
|
|||||||
Reference in New Issue
Block a user