protected override void OnMouseMove(MouseEventArgs mevent) { base.OnMouseMove(mevent); if (m_bMouseDown) { this.BringToFront(); this.Left += Convert.ToInt16(mevent.X - xPos); //设置x坐标. // this.Top += Convert.ToInt16(mevent.Y - yPos);//设置y坐标. for (int i = 0; i < MainForm.Instance.mFavList.Count; i++) { if (this.Title == MainForm.Instance.mFavList[i].Title) { if (i > 0) { if (this.Left > MainForm.Instance.Left && this.Left < MainForm.Instance.mFavList[i - 1].Right - MainForm.Instance.mFavList[i - 1].Width / 2) { favirte_Button = MainForm.Instance.mFavList[i - 1]; MainForm.Instance.mFavList[i - 1] = this; MainForm.Instance.mFavList[i] = favirte_Button; MainForm.Instance.FavPanel.Invalidate(); } } } } } }
public void nWriteBookmarks(FavirteButton favirteButton) { string currDirectiory = Environment.CurrentDirectory.ToString(); nCheckFiles("Bookmarks"); //检查 JObject jsonObject = new JObject(); string jsonStr; try { jsonStr = File.ReadAllText(currDirectiory + @"\UserData\Bookmarks"); if (jsonStr == "") { jsonObject.Add("Date_Added", favirteButton.Date_Added); jsonObject.Add("Last_Visited", favirteButton.Last_Visited); jsonObject.Add("Title", favirteButton.Title); jsonObject.Add("URL", favirteButton.URL); jsonObject.Add("Layer", favirteButton.Layer); jsonObject.Add("ID", favirteButton.ID); jsonObject.Add("FatherID", favirteButton.FatherID); jsonObject.Add("Type", favirteButton.Type); jsonObject.Add("IconBase64str", favirteButton.IconBase64str); File.WriteAllText(currDirectiory + @"\UserData\Bookmarks", "[" + jsonObject.ToString() + "]"); // GC.Collect(); } else { jsonObject = new JObject(); jsonObject.Add("Date_Added", favirteButton.Date_Added); jsonObject.Add("Last_Visited", favirteButton.Last_Visited); jsonObject.Add("Title", favirteButton.Title); jsonObject.Add("URL", favirteButton.URL); jsonObject.Add("Layer", favirteButton.Layer); jsonObject.Add("ID", favirteButton.ID); jsonObject.Add("FatherID", favirteButton.FatherID); jsonObject.Add("Type", favirteButton.Type); jsonObject.Add("IconBase64str", favirteButton.IconBase64str); jsonStr = jsonStr.Replace("[", ""); jsonStr = jsonStr.Replace("]", ""); jsonStr = jsonStr + ","; jsonStr = "[" + jsonStr + jsonObject.ToString() + "]"; jsonStr = jsonStr.Replace(",,", ","); File.WriteAllText(currDirectiory + @"\UserData\Bookmarks", jsonStr); // GC.Collect(); } } catch (Exception e) { MessageBox.Show(e.Message); } nCheckFiles("Bookmarks"); //备份 jsonObject = null; jsonStr = null; currDirectiory = null; GC.Collect(); }
public bool nDelBookmarks(FavirteButton favirteButton) { string currDirectiory = Environment.CurrentDirectory.ToString(); nCheckFiles("Bookmarks"); //检查 JObject jsonObject = new JObject(); string jsonStr; try { jsonStr = File.ReadAllText(currDirectiory + @"\UserData\Bookmarks"); if (jsonStr != "") { List <FavireBT> jobInfoList = JsonConvert.DeserializeObject <List <FavireBT> >(jsonStr); jsonStr = ""; foreach (FavireBT favBT in jobInfoList) { if (favBT.Date_Added != favirteButton.Date_Added) { jsonObject = new JObject(); jsonObject.Add("Date_Added", favBT.Date_Added); jsonObject.Add("Last_Visited", favBT.Last_Visited); jsonObject.Add("Title", favBT.Title); jsonObject.Add("URL", favBT.URL); jsonObject.Add("Layer", favBT.Layer); jsonObject.Add("ID", favBT.ID); jsonObject.Add("FatherID", favBT.FatherID); jsonObject.Add("Type", favBT.Type); jsonObject.Add("IconBase64str", favBT.IconBase64str); jsonStr = jsonStr.Replace("[", ""); jsonStr = jsonStr.Replace("]", ""); jsonStr += jsonObject.ToString() + ","; } } } File.WriteAllText(currDirectiory + @"\UserData\Bookmarks", "[" + jsonStr.Replace(",,", ",") + "]"); return(true); } catch { return(false); } }
public bool itemTagChanged = false; //所有标签是否有变动 private void NewFavi_Folder_Click(object sender, EventArgs e) { FavirteButton favirte = new FavirteButton(); favirte.Height = 23; favirte.Title = "快捷收藏夹"; favirte.ItemIcon = CefiBrowser.Properties.Resources.FileFolderIcon; Font sf = new Font("Tahoma", 8.25f, FontStyle.Regular); Graphics g = this.CreateGraphics(); //单位为mm g.PageUnit = GraphicsUnit.Millimeter; //测量字符串长度 Size sif = TextRenderer.MeasureText(g, favirte.Title, sf, new Size(0, 0), TextFormatFlags.NoPadding); favirte.TitleWidth = sif.Width; favirte.Width = 26 + favirte.TitleWidth; if (favirte.Width > 140) { favirte.Width = 140; } favirte.Left = MainForm.Instance.FavPanel.Left + 6; if (MainForm.Instance.FavPanel.Controls.Count > 0) { int nFavPoint = 0; nFavPoint = MainForm.Instance.FavPanel.Left + 6; for (int i = 0; i < MainForm.Instance.FavPanel.Controls.Count; i++) { //if (((FavirteButton)FavPanel.Controls[i]).URL == "" || // ((FavirteButton)FavPanel.Controls[i]).Title == favirte.Title) // return; nFavPoint = MainForm.Instance.FavPanel.Controls[i].Width + 2 + nFavPoint; } favirte.Left = nFavPoint; } MainForm.Instance.Invoke(new Action(() => { MainForm.Instance.FavPanel.Controls.Add(favirte); } )); nTreeNode yTreeNode = new nTreeNode(); yTreeNode.Date_Added = DateTime.Now.ToString("yyyyMMddHHmmssffff"); iconImageList.Images.Add(yTreeNode.Date_Added, favirte.ItemIcon); yTreeNode.Last_Visited = DateTime.Now.ToString("yyyyMMddHHmmssffff"); yTreeNode.Layer = "0"; yTreeNode.ID = DateTime.Now.ToString("yyyyMMddHHmmssffff"); yTreeNode.FatherID = "0"; yTreeNode.Type = "FaviFolder"; yTreeNode.URL = ""; yTreeNode.Text = favirte.Title; yTreeNode.Title = yTreeNode.Name = favirte.Title; yTreeNode.SelectedImageIndex = yTreeNode.StateImageIndex = yTreeNode.ImageIndex = iconImageList.Images.IndexOfKey(yTreeNode.Date_Added); yTreeNode.IconBase64str = IamgeToBase64(CefiBrowser.Properties.Resources.FileFolderIcon); treeView1.Nodes.Add(yTreeNode); itemTagChanged = true; sf = null; favirte = null; yTreeNode = null; GC.Collect(); }