레이더 그래프에 5가지 상태창 추가
피봇 기능 추가
This commit is contained in:
@@ -28,6 +28,11 @@ namespace friction
|
||||
Theme.Apply(this);
|
||||
Theme.Apply(lvSpring);
|
||||
Theme.Apply(lvTable);
|
||||
|
||||
lvSpring.ListViewItemSorter = new ListViewItemCheckboxComparer();
|
||||
lvSpring.ItemChecked += Listview_ItemChecked;
|
||||
lvTable.ListViewItemSorter = new ListViewItemCheckboxComparer();
|
||||
lvTable.ItemChecked += Listview_ItemChecked;
|
||||
}
|
||||
|
||||
public void UpdateData(DataHandler data)
|
||||
@@ -129,5 +134,68 @@ namespace friction
|
||||
if (lvTable.SelectedIndices.Count == 1)
|
||||
SelectTable(lvTable.SelectedIndices[0]);
|
||||
}
|
||||
|
||||
private void Listview_ItemChecked(object sender, ItemCheckedEventArgs e)
|
||||
{
|
||||
ListView view = (ListView)sender;
|
||||
if (view == lvTable && e.Item.Text == "All")
|
||||
e.Item.Checked = true;
|
||||
|
||||
view.Sort();
|
||||
}
|
||||
|
||||
|
||||
private class ListViewItemCheckboxComparer : IComparer<ListViewItem>, System.Collections.IComparer
|
||||
{
|
||||
public int Compare(ListViewItem x, ListViewItem y)
|
||||
{
|
||||
if (x.Text == "All")
|
||||
return -1;
|
||||
else if (y.Text == "All")
|
||||
return 1;
|
||||
else if (x.Checked != y.Checked)
|
||||
return -(x.Checked ? 1 : 0).CompareTo(y.Checked ? 1 : 0);
|
||||
else
|
||||
return x.Text.CompareTo(y.Text);
|
||||
}
|
||||
|
||||
public int Compare(object x, object y)
|
||||
{
|
||||
return Compare(x as ListViewItem, y as ListViewItem);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
public class NoDoubleClickAutoCheckListview : ListView
|
||||
{
|
||||
private bool checkFromDoubleClick = false;
|
||||
|
||||
protected override void OnItemCheck(ItemCheckEventArgs ice)
|
||||
{
|
||||
if (this.checkFromDoubleClick)
|
||||
{
|
||||
ice.NewValue = ice.CurrentValue;
|
||||
this.checkFromDoubleClick = false;
|
||||
}
|
||||
else
|
||||
base.OnItemCheck(ice);
|
||||
}
|
||||
|
||||
protected override void OnMouseDown(MouseEventArgs e)
|
||||
{
|
||||
// Is this a double-click?
|
||||
if ((e.Button == MouseButtons.Left) && (e.Clicks > 1))
|
||||
{
|
||||
this.checkFromDoubleClick = true;
|
||||
}
|
||||
base.OnMouseDown(e);
|
||||
}
|
||||
|
||||
protected override void OnKeyDown(KeyEventArgs e)
|
||||
{
|
||||
this.checkFromDoubleClick = false;
|
||||
base.OnKeyDown(e);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user