Example #1
0
        /// <summary>
        /// 名前を付けて保存をクリック
        /// </summary>
        private void SaveNameAndGraph_Click(object sender, EventArgs e)
        {
            //保存先のローカルアドレス
            string LocalSaveAdress;

            try
            {
                //マイドキュメント
                LocalSaveAdress = System.Environment.GetFolderPath(Environment.SpecialFolder.Personal);
                string NowTime = DateTime.Now.ToString();
                NowTime = ((NowTime.Replace(" ", "")).Replace("/", "")).Replace(":", "");
                LocalSaveAdress += @"\Gi-ProxysSavedGraph\" + NowTime;

                //ディレクトリが存在しなかった場合に作成
                DirectoryInfo di = Directory.CreateDirectory(LocalSaveAdress);
                di.Create();
                //System.Diagnostics.Process.Start(LocalSaveAdress);

                //グラフとテーブルの保存
                IOXML write = new IOXML();
                write.writeData(GraphData[MainNodeParty], @LocalSaveAdress);
            }
            catch
            {
                MessageBox.Show("保存に失敗しました。");
                return;
            }
            MessageBox.Show("保存に成功しました。");
        }
Example #2
0
        /// <summary>
        /// メインフォームを閉じようとするとき
        /// </summary>
        private void MainForm_FormClosing(object sender, FormClosingEventArgs e)
        {
            try
            {
                //フォームの終了を押してこのイベントに入った場合にのみ終了させる
                if (!WhichCloseButton)
                {
                    this.Hide();
                    e.Cancel = true;
                    return;
                }
                WhichCloseButton = false;

                //ブロックリストの保存
                string SaveBanlistStr = "";
                foreach (string name in BanList)
                {
                    SaveBanlistStr += name + '/';
                }
                Gi_Proxy.Properties.Settings.Default.Banlist = SaveBanlistStr;
                Gi_Proxy.Properties.Settings.Default.Save();

                //操作権限があるか判断
                if (SettingDefault.PassStatus == true && SettingDefault.PassSet == false)
                {
                    //権限が無い場合は消させない
                    MessageBox.Show("操作権限がありません。設定->機能制限より認証をしてください。", "エラー",
                        MessageBoxButtons.OK, MessageBoxIcon.Error);
                    e.Cancel = true;
                }

                //終了時にはグラフの情報をすべて保存する
                try
                {
                    //保存先のローカルアドレス
                    string LocalSaveAdress;

                    //マイドキュメントを指定WW
                    LocalSaveAdress = System.Environment.GetFolderPath(Environment.SpecialFolder.Personal);
                    string NowTime = DateTime.Now.ToString();
                    NowTime = ((NowTime.Replace(" ", "")).Replace("/", "")).Replace(":", "");
                    LocalSaveAdress += @"\Gi-ProxysSavedGraph\" + NowTime;

                    DirectoryInfo di = Directory.CreateDirectory(LocalSaveAdress);
                    di.Create();

                    IOXML write = new IOXML();
                    write.writeData(GraphData[MainNodeParty], @LocalSaveAdress);
                }
                catch
                {
                    return;
                }

            }
            catch (Exception E)
            {
                MessageBox.Show(E.ToString(), "Closingイベントエラー");
            }
        }
Example #3
0
        /// <summary>
        /// グラフを開くをクリック
        /// </summary>
        private void OpenGraphSelect_Click(object sender, EventArgs e)
        {
            //保存先のローカルアドレス
            string LocalSaveAdress = System.Environment.GetFolderPath(Environment.SpecialFolder.Personal) +@"\SavedGraph\";

            //FolderBrowserDialogクラスのインスタンスを作成
            FolderBrowserDialog fbd = new FolderBrowserDialog();

            //上部に表示する説明テキストを指定する
            fbd.Description = "フォルダを指定してください。";

            //フォルダが存在しなかったらの場合に想定して作成
            DirectoryInfo di = Directory.CreateDirectory(LocalSaveAdress);
            di.Create();

            //最初に選択するフォルダを指定する
            fbd.SelectedPath = LocalSaveAdress;

            //ダイアログを表示する
            if (fbd.ShowDialog(this) == DialogResult.OK)
            {
                //選択されたフォルダを表示する
                LocalSaveAdress = fbd.SelectedPath;
            }
            else
            {
                return;
            }

            int IndexLength = LocalSaveAdress.Split('\\').Length;
            string AddName = LocalSaveAdress.Split('\\')[IndexLength - 1];

            if (GraphData.ContainsKey(AddName))
            {
                MessageBox.Show("重複したグラフは開けません");
                return;
            }

            //グラフの読み込み
            IOXML read = new IOXML();
            GraphData.Add(AddName, read.readData(LocalSaveAdress));
            comboBox1.Items.Add(AddName);

            //イベント追加や演算に使用する力の適用sss
            lock (GraphData[AddName].Nodes)
            {
                foreach (Node n in GraphData[AddName].Nodes.Values)
                {
                    n.NodeShape.Click += new System.EventHandler(this.NodeShape_Click);
                    n.NodeShape.MouseUp += new MouseEventHandler(this.NodeShape_MouseUp);
                    n.NodeShape.MouseMove += new MouseEventHandler(this.NodeShape_MouseMove);
                    n.NodeShape.ContextMenuStrip = contextMenuStrip1;

                    n.L += (R - 15) * RateOfChange;
                    n.G += ((R - 15) * RateOfChange) * 10;
                }
            }
        }