コード例 #1
0
        private void StartEdit(int id)
        {
            var item = (UrlTreeViewItem)GetRows()[id];

            m_EditData.Title = item.Data.Title;
            m_EditData.URL   = item.Data.URL;
            m_EditTarget     = item;
        }
コード例 #2
0
 private void EndEdit()
 {
     if (m_EditTarget != null)
     {
         m_EditTarget.Data.Title = m_EditData.Title;
         m_EditTarget.Data.URL   = m_EditData.URL;
         m_EditTarget            = null;
     }
 }
コード例 #3
0
        protected override void ContextClicked() // 右クリックメニュー
        {
            base.ContextClicked();

            int             id   = -1;
            UrlTreeViewItem item = null;

            if (HasSelection())
            {
                id   = GetSelection()[0];
                item = (UrlTreeViewItem)GetRows()[id];
            }

            base.ContextClicked();
            GenericMenu menu = new GenericMenu();

            menu.AddClickItem(ContentMenuOpen, item != null && !string.IsNullOrEmpty(item.Data.URL), () =>
            {
                System.Diagnostics.Process.Start(item.Data.URL);
            });
            menu.AddClickItem(ContentMenuEdit, item != null, () =>
            {
                StartEdit(id);
            });
            menu.AddSeparator("");
            menu.AddItem(ContentMenuInsert, false, () =>
            {
                if (item != null)
                {
                    m_MainWindow.StartInsert(id + 1, new UrlData());
                }
                else
                {
                    m_MainWindow.StartInsertLast(new UrlData());
                }
            });
            menu.AddClickItem(ContentMenuDelete, item != null, () =>
            {
                m_MainWindow.DeleteAt(id);
            });
            menu.ShowAsContext();
        }
コード例 #4
0
 private void CancelEdit()
 {
     m_EditTarget = null;
 }