///******************************************************************************* ///(-) /// MODULE NAME : 新規作成 /// MODULE ID : CreateNew /// /// PARAMETER IN : /// <param name="actionFlg">(in)動作フラグ(0:新規、1:コピー、2:ロード)</param> /// PARAMETER OUT : /// <param>(out)なし</param> /// /// RETURN VALUE : /// <returns>-1:失敗、0:成功</returns> /// /// FUNCTION : /// <summary> /// 空の付箋紙を新規作成する /// </summary> /// ///******************************************************************************* public Int16 CreateNew(Int16 actionFlg) { Int16 retVal = -1; try { StickyNoteForm = new FormStickyNote(actionFlg); if (null != StickyNoteForm) { this.AddtoNoteListMng(StickyNoteForm); SaveStickyNotes(); retVal = 0; } return(retVal); } catch (Exception ex) { Debug.WriteLine(MethodBase.GetCurrentMethod() + ": " + ex.Message); return(-1); } finally { StickyNoteForm = null; } }
///******************************************************************************* ///(-) /// MODULE NAME : コンストラクタ /// MODULE ID : FormStickyNoteMenu /// /// PARAMETER IN : /// <param name="posX">(in)X座標</param> /// <param name="posY">(in)Y座標</param> /// PARAMETER OUT : /// <param>(out)なし</param> /// /// RETURN VALUE : /// <returns>なし</returns> /// /// FUNCTION : /// <summary> /// 付箋紙上に右クリックしたときに使う。 /// クリックした位置のXとY座標を元にメニューの表示位置を調整する /// </summary> /// ///******************************************************************************* public FormStickyNoteMenu(FormStickyNote parentForm, Int32 posX, Int32 posY) { InitializeComponent(); // メニューの表示位置 dispPosX = posX; dispPosY = posY; this.SuspendLayout(); // オーナーフォーム this.Owner = StickyNote.m_OwnerForm; // 隠す項目を指定(全表示) for (int i = 0; i < menu_Items.Count(); i++) { menuItemsHidden[i] = menu_ItemsHidden_RClick[i]; } // メニュー項目を生成 MakeMenu(); this.ResumeLayout(false); this.Refresh(); this.Show(StickyNote.m_OwnerForm); }
///******************************************************************************* ///(-) /// MODULE NAME : コピー /// MODULE ID : CopyNote /// /// PARAMETER IN : /// <param>(in)なし</param> /// PARAMETER OUT : /// <param>(out)なし</param> /// /// RETURN VALUE : /// <returns>なし</returns> /// /// FUNCTION : /// <summary> /// クリック元の付箋紙のコピーを作成する /// </summary> /// ///******************************************************************************* public Int16 CopyNote() { Int16 retVal = -1; try { if (0 != Current_NoteProperties.NoteID) { StickyNoteForm = new FormStickyNote(1); // コピー成功 if (null != StickyNoteForm) { this.AddtoNoteListMng(StickyNoteForm); SaveStickyNotes(); retVal = 0; } } else { // コピー元が選択されていないので失敗 } return(retVal); } catch (Exception ex) { Debug.WriteLine(MethodBase.GetCurrentMethod() + ": " + ex.Message); return(-1); } finally { Current_NoteProperties.Clear(); StickyNoteForm = null; } }
///******************************************************************************* ///(-) /// MODULE NAME : 付箋紙ロード /// MODULE ID : LoadStickyNotes /// /// PARAMETER IN : /// <param>(in)なし</param> /// PARAMETER OUT : /// <param>(out)なし</param> /// /// RETURN VALUE : /// <returns>なし</returns> /// /// FUNCTION : /// <summary> /// 呼び出し元の装置を立ち上げたときに、XMLに保存されている付箋紙をロードする /// </summary> /// ///******************************************************************************* public void LoadStickyNotes() { CStickyNotesCollection listObj = new CStickyNotesCollection(); XmlDocument doc; try { bool IsExist = File.Exists(m_SaveXMLPath); if (true == IsExist) { xmlSerializer = new XmlSerializer(typeof(CStickyNotesCollection)); doc = new XmlDocument(); doc.PreserveWhitespace = true; doc.Load(m_SaveXMLPath); using (XmlNodeReader reader = new XmlNodeReader(doc.DocumentElement)) { listObj = (CStickyNotesCollection)xmlSerializer.Deserialize(reader); } // trial 1 end Int32 cnt = listObj.CNoteProperties.Count(); for (int i = 0; i < cnt; i++) { StickyNote.Current_NoteProperties = new CNoteProperties(); // 付箋紙ID StickyNote.Current_NoteProperties.NoteID = i + 1; // テキストボックスの内容 StickyNote.Current_NoteProperties.Text = listObj.CNoteProperties[i].Text; // String型のフォント情報 StickyNote.Current_NoteProperties.FontString = listObj.CNoteProperties[i].FontString; // フォント:stringからFontに変換 System.ComponentModel.TypeConverter tc = System.ComponentModel.TypeDescriptor.GetConverter(typeof(Font)); Font convertedFont = (Font)tc.ConvertFromString(StickyNote.Current_NoteProperties.FontString.FontString); // Font型のフォント情報 StickyNote.Current_NoteProperties.FontFont = convertedFont; // テキスト表示色 StickyNote.Current_NoteProperties.ForeColor = listObj.CNoteProperties[i].ForeColor; // 背景色 StickyNote.Current_NoteProperties.BackColor = listObj.CNoteProperties[i].BackColor; // サイズ StickyNote.Current_NoteProperties.Size = listObj.CNoteProperties[i].Size; // x,y座標 StickyNote.Current_NoteProperties.Location = listObj.CNoteProperties[i].Location; // 表示/非表示 StickyNote.Current_NoteProperties.Visible = listObj.CNoteProperties[i].Visible; // 明瞭 StickyNote.Current_NoteProperties.Opacity = listObj.CNoteProperties[i].Opacity; // 上記の情報を使って付箋紙を生成する StickyNoteForm = new FormStickyNote(2); if (null != StickyNoteForm) { this.AddtoNoteListMng(StickyNoteForm); UpdateStickyNoteList(); SaveStickyNotes(); StickyNote.Current_NoteProperties.Clear(); } } } listObj = null; } catch (Exception ex) { Debug.WriteLine(MethodBase.GetCurrentMethod() + ": " + ex.Message); } finally { doc = null; xmlSerializer = null; } }
///******************************************************************************* ///(-) /// MODULE NAME : 付箋紙管理リスト追加 /// MODULE ID : AddtoNoteListMng /// /// PARAMETER IN : /// <param>(in)なし</param> /// PARAMETER OUT : /// <param>(out)なし</param> /// /// RETURN VALUE : /// <returns>なし</returns> /// /// FUNCTION : /// <summary> /// 付箋紙の管理リストに追加する /// </summary> /// ///******************************************************************************* public void AddtoNoteListMng(FormStickyNote form) { // 管理リストに追加 NoteListMng.Insert(0, form); }