Lobby player search input
Based on patch By: ffffffff Comments By: vladislavbelov Reviewed By: Angen Differential Revision: D285 This was SVN commit r25873.
This commit is contained in:
parent
5b41b982f9
commit
8459160038
@ -17,6 +17,10 @@ class PlayerList
|
||||
this.nickList = [];
|
||||
this.ratingList = [];
|
||||
|
||||
this.playersFilter = Engine.GetGUIObjectByName("playersFilter");
|
||||
this.playersFilter.onPress = this.selectPlayer.bind(this);
|
||||
this.playersFilter.onTab = this.autocomplete.bind(this);
|
||||
|
||||
this.selectionChangeHandlers = new Set();
|
||||
this.mouseLeftDoubleClickItemHandlers = new Set();
|
||||
|
||||
@ -34,6 +38,20 @@ class PlayerList
|
||||
this.rebuildPlayerList();
|
||||
}
|
||||
|
||||
selectPlayer()
|
||||
{
|
||||
let index = this.playersBox.list.indexOf(this.playersFilter.caption);
|
||||
if (index != -1)
|
||||
this.playersBox.selected = index;
|
||||
}
|
||||
|
||||
autocomplete()
|
||||
{
|
||||
autoCompleteText(
|
||||
this.playersFilter,
|
||||
Engine.GetPlayerList().map(player => player.name));
|
||||
}
|
||||
|
||||
registerSelectionChangeHandler(handler)
|
||||
{
|
||||
this.selectionChangeHandlers.add(handler);
|
||||
|
@ -1,20 +1,27 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<object name="playersBox"
|
||||
style="ModernSortedList"
|
||||
selected_column="name"
|
||||
selected_column_order="1"
|
||||
type="olist"
|
||||
sortable="true"
|
||||
font="sans-bold-stroke-13"
|
||||
>
|
||||
<column id="buddy" width="12"/>
|
||||
<column id="status" width="26%">
|
||||
<translatableAttribute id="heading">Status</translatableAttribute>
|
||||
</column>
|
||||
<column id="name" width="48%-12">
|
||||
<translatableAttribute id="heading">Name</translatableAttribute>
|
||||
</column>
|
||||
<column id="rating" width="26%">
|
||||
<translatableAttribute id="heading">Rating</translatableAttribute>
|
||||
</column>
|
||||
<object>
|
||||
<object name="playersFilter" type="input" style="ModernInput" size="0 0 100% 22" font="sans-bold-13">
|
||||
<translatableAttribute id="placeholder_text">Search for Player</translatableAttribute>
|
||||
</object>
|
||||
|
||||
<object name="playersBox"
|
||||
style="ModernSortedList"
|
||||
size="0 27 100% 100%"
|
||||
selected_column="name"
|
||||
selected_column_order="1"
|
||||
type="olist"
|
||||
sortable="true"
|
||||
font="sans-bold-stroke-13"
|
||||
>
|
||||
<column id="buddy" width="12"/>
|
||||
<column id="status" width="26%">
|
||||
<translatableAttribute id="heading">Status</translatableAttribute>
|
||||
</column>
|
||||
<column id="name" width="48%-12">
|
||||
<translatableAttribute id="heading">Name</translatableAttribute>
|
||||
</column>
|
||||
<column id="rating" width="26%">
|
||||
<translatableAttribute id="heading">Rating</translatableAttribute>
|
||||
</column>
|
||||
</object>
|
||||
</object>
|
||||
|
Loading…
Reference in New Issue
Block a user