Пример #1
0
        private void btnSearch_Click(object sender, EventArgs e)
        {
            if (OnQuickSearchEvent == null)
            {
                return;
            }

            this.Cursor = Cursors.WaitCursor;

            // 검색 조건 생성
            QuickSearchEventArgs args = new QuickSearchEventArgs();

            args.Keyword       = txtKeyword.Text.Split(new char[] { ';' }).ToList();
            args.JoinCondition = ckCondition.Checked;
            args.FullMatch     = ckFullMatch.Checked;
            args.AssemblyOnly  = ckAssemblyOnly.Checked;
            args.SelectedOnly  = ckSelectedOnly.Checked;
            args.VisibleOnly   = ckVisibleOnly.Checked;

            // 검색 이벤트 발생 후, 결과 반환
            List <Data.Node> nodes = OnQuickSearchEvent(this, args);

            // 검색 결과 화면 표시
            lvResult.BeginUpdate();
            lvResult.Items.Clear();
            foreach (Data.Node item in nodes)
            {
                ListViewItem lvi = new ListViewItem(new string[] { item.NodeName, item.GetParentName(), item.NodeType == Data.NodeTypes.NODE ? "ASS'Y" : "PART" });
                lvi.Tag = item;
                lvResult.Items.Add(lvi);
            }
            lvResult.EndUpdate();

            this.Cursor = Cursors.Default;
        }
Пример #2
0
        private List <Data.Node> SearchNode_OnQuickSearchEvent(object sender, Dialogs.QuickSearchEventArgs e)
        {
            // 검색 GUI에서 요청한 Keyword로 검색 수행 결과 반환
            List <Data.Node> items = vizcore3d.Object3D.Find.QuickSearch(e.Keyword, e.JoinCondition, e.AssemblyOnly, e.VisibleOnly, e.SelectedOnly, e.FullMatch);

            return(vizcore3d.Object3D.UpdateNodePath(items));
        }