コード例 #1
0
ファイル: QEditorListView.cs プロジェクト: xingqi-gif/demo
    private void DragEvent(Rect x)
    {
        if (!drag && QEditorEvent.IsMouseDrag(x))
        {
            drag      = true;
            startView = this;
            if (StartDragEvent != null)
            {
                StartDragEvent(i);
            }
        }

        if (drag && QEditorEvent.IsMouseUp(x))
        {
            endDragIndex = i;
            if (EndDragEvent != null)
            {
                EndDragEvent(startView, this);
            }

            if (IndexChangedEvent != null)
            {
                IndexChangedEvent(index, i);
            }
            index = i;

            w.Repaint();
            drag         = false;
            endDragIndex = -1;
            startView    = null;
        }
    }
コード例 #2
0
ファイル: EditorTest.cs プロジェクト: xingqi-gif/demo
    private void ListViewSwap(QEditorListView v, QEditorListView v2)
    {
        var tmp = v[v.Index];

        v[v.Index]          = v2[v2.EndDragIndex];
        v2[v2.EndDragIndex] = tmp;
    }
コード例 #3
0
ファイル: EditorTest.cs プロジェクト: xingqi-gif/demo
    private static void Init()
    {
        var window = GetWindow <EditorTest>();

        window.Show();

        l = new QEditorListView[2];
        for (int i = 0; i < 2; i++)
        {
            l[i] = new QEditorListView(window);
            for (int j = 0; j < 10; j++)
            {
                l[i].Add(j.ToString());
            }
            l[i].IsDrag        = true;
            l[i].IsEditor      = true;
            l[i].EndDragEvent += window.ListViewSwap;
        }
    }