-
This commit is contained in:
@@ -57,8 +57,8 @@
|
|||||||
"views":[
|
"views":[
|
||||||
{
|
{
|
||||||
"id":"list", "type":"haxework.gui.list.VListView",
|
"id":"list", "type":"haxework.gui.list.VListView",
|
||||||
"renderer":{
|
"factory":{
|
||||||
"type":"ru.m.armageddon.client.frames.person.PersonRenderer"
|
"type":"~ru.m.armageddon.client.frames.person.PersonView"
|
||||||
},
|
},
|
||||||
"scroll":{
|
"scroll":{
|
||||||
"type":"haxework.gui.list.VScrollView",
|
"type":"haxework.gui.list.VScrollView",
|
||||||
|
|||||||
@@ -1,7 +1,6 @@
|
|||||||
package ru.m.armageddon.client.frames;
|
package ru.m.armageddon.client.frames;
|
||||||
|
|
||||||
import haxework.frame.IFrameSwitcher;
|
import haxework.frame.IFrameSwitcher;
|
||||||
import protohx.MessageUtils;
|
|
||||||
import ru.m.armageddon.proto.PersonSelectResponse;
|
import ru.m.armageddon.proto.PersonSelectResponse;
|
||||||
import ru.m.armageddon.proto.PersonSelectRequest;
|
import ru.m.armageddon.proto.PersonSelectRequest;
|
||||||
import haxework.gui.list.ListView;
|
import haxework.gui.list.ListView;
|
||||||
@@ -13,15 +12,14 @@ import haxework.provider.Provider;
|
|||||||
import ru.m.armageddon.proto.Person;
|
import ru.m.armageddon.proto.Person;
|
||||||
import haxework.gui.list.VListView;
|
import haxework.gui.list.VListView;
|
||||||
import haxework.gui.HGroupView;
|
import haxework.gui.HGroupView;
|
||||||
import ru.m.armageddon.client.frames.person.PersonRenderer;
|
|
||||||
|
|
||||||
class PersonFrame extends HGroupView implements IPacketHandler implements ListViewListener<PersonView, Person> {
|
class PersonFrame extends HGroupView implements IPacketHandler implements ListViewListener<Person> {
|
||||||
|
|
||||||
private static inline var TAG = "PersonFrame";
|
private static inline var TAG = "PersonFrame";
|
||||||
|
|
||||||
public static inline var ID = "person";
|
public static inline var ID = "person";
|
||||||
|
|
||||||
private var list:VListView<PersonView, Person>;
|
private var list:VListView<Person>;
|
||||||
|
|
||||||
public function new() {
|
public function new() {
|
||||||
super();
|
super();
|
||||||
@@ -37,7 +35,7 @@ class PersonFrame extends HGroupView implements IPacketHandler implements ListVi
|
|||||||
Provider.get(IConnection).packetHandler = this;
|
Provider.get(IConnection).packetHandler = this;
|
||||||
}
|
}
|
||||||
|
|
||||||
public function onListItemClick(item:ListItem<PersonView, Person>):Void {
|
public function onListItemClick(item:IListItemView<Person>):Void {
|
||||||
Provider.get(IConnection).send(new PersonSelectRequest().setPersonId(item.data.id));
|
Provider.get(IConnection).send(new PersonSelectRequest().setPersonId(item.data.id));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -1,16 +0,0 @@
|
|||||||
package ru.m.armageddon.client.frames.person;
|
|
||||||
|
|
||||||
import ru.m.armageddon.proto.Person;
|
|
||||||
import haxework.gui.list.VListView;
|
|
||||||
import haxework.gui.list.ListView;
|
|
||||||
|
|
||||||
class PersonRenderer implements IRenderer<VListView<PersonView, Person>, PersonView, Person> {
|
|
||||||
|
|
||||||
public function factory():ListItem<PersonView, Person> {
|
|
||||||
return {view:new PersonView()};
|
|
||||||
}
|
|
||||||
|
|
||||||
public function render(list:VListView<PersonView, Person>, item:ListItem<PersonView, Person>):Void {
|
|
||||||
item.view.person = item.data;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@@ -1,13 +1,15 @@
|
|||||||
package ru.m.armageddon.client.frames.person;
|
package ru.m.armageddon.client.frames.person;
|
||||||
|
|
||||||
|
import haxework.gui.list.ListView.IListItemView;
|
||||||
import haxework.gui.LabelView;
|
import haxework.gui.LabelView;
|
||||||
import ru.m.armageddon.proto.Person;
|
import ru.m.armageddon.proto.Person;
|
||||||
import haxework.gui.skin.ColorSkin;
|
import haxework.gui.skin.ColorSkin;
|
||||||
import haxework.gui.HGroupView;
|
import haxework.gui.HGroupView;
|
||||||
|
|
||||||
class PersonView extends HGroupView {
|
class PersonView extends HGroupView implements IListItemView<Person> {
|
||||||
|
|
||||||
public var person(default,set):Person;
|
public var item_index(default, default):Int;
|
||||||
|
public var data(default, set):Person;
|
||||||
|
|
||||||
private var nameLabel:LabelView;
|
private var nameLabel:LabelView;
|
||||||
|
|
||||||
@@ -21,9 +23,9 @@ class PersonView extends HGroupView {
|
|||||||
addView(nameLabel);
|
addView(nameLabel);
|
||||||
}
|
}
|
||||||
|
|
||||||
private function set_person(value:Person):Person {
|
private function set_data(value:Person):Person {
|
||||||
this.person = value;
|
this.data = value;
|
||||||
nameLabel.text = this.person.name;
|
nameLabel.text = this.data.name;
|
||||||
return this.person;
|
return this.data;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
Reference in New Issue
Block a user