/// <summary>\r
/// 必要なデザイナ変数です。\r
/// </summary>\r
- private System.ComponentModel.IContainer components;\r
+ private System.ComponentModel.IContainer components = null;\r
\r
/// <summary>\r
/// 使用中のリソースをすべてクリーンアップします。\r
this.toolStripMenuItem選択チップの削除 = new System.Windows.Forms.ToolStripMenuItem();\r
this.toolStripSeparator15 = new System.Windows.Forms.ToolStripSeparator();\r
this.toolStripMenuItemすべてのチップの選択 = new System.Windows.Forms.ToolStripMenuItem();\r
- this.toolStripMenuItemレーン内のすべてのチップの選択 = new System.Windows.Forms.ToolStripMenuItem();\r
+ this.toolStripMenuItemレーン内のすべてのチップの選択1 = new System.Windows.Forms.ToolStripMenuItem();\r
+ this.toolStripMenuItemレーン内のすべてのチップの選択_特定小節以降2 = new System.Windows.Forms.ToolStripMenuItem();\r
this.toolStripMenuItem小節内のすべてのチップの選択 = new System.Windows.Forms.ToolStripMenuItem();\r
this.toolStripSeparator16 = new System.Windows.Forms.ToolStripSeparator();\r
this.toolStripMenuItem小節長変更 = new System.Windows.Forms.ToolStripMenuItem();\r
this.toolStripSeparator17 = new System.Windows.Forms.ToolStripSeparator();\r
this.toolStripMenuItem小節の挿入 = new System.Windows.Forms.ToolStripMenuItem();\r
this.toolStripMenuItem小節の削除 = new System.Windows.Forms.ToolStripMenuItem();\r
+ this.toolStripSeparator18 = new System.Windows.Forms.ToolStripSeparator();\r
+ this.ToolStripMenuItemBPMDetections = new System.Windows.Forms.ToolStripMenuItem();\r
+ this.generateBPMFromBeatTipsToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();\r
this.splitContainerタブと譜面を分割.Panel1.SuspendLayout();\r
this.splitContainerタブと譜面を分割.Panel2.SuspendLayout();\r
this.splitContainerタブと譜面を分割.SuspendLayout();\r
this.toolStripMenuItem選択チップの削除,\r
this.toolStripSeparator15,\r
this.toolStripMenuItemすべてのチップの選択,\r
- this.toolStripMenuItemレーン内のすべてのチップの選択,\r
+ this.toolStripMenuItemレーン内のすべてのチップの選択1,\r
+ this.toolStripMenuItemレーン内のすべてのチップの選択_特定小節以降2,\r
this.toolStripMenuItem小節内のすべてのチップの選択,\r
this.toolStripSeparator16,\r
this.toolStripMenuItem小節長変更,\r
this.toolStripSeparator17,\r
this.toolStripMenuItem小節の挿入,\r
- this.toolStripMenuItem小節の削除} );\r
+ this.toolStripMenuItem小節の削除,\r
+ this.toolStripSeparator18,\r
+ this.ToolStripMenuItemBPMDetections,\r
+ this.generateBPMFromBeatTipsToolStripMenuItem} );\r
this.contextMenuStrip譜面右メニュー.Name = "contextMenuStrip譜面右メニュー";\r
this.toolTipツールチップ.SetToolTip( this.contextMenuStrip譜面右メニュー, resources.GetString( "contextMenuStrip譜面右メニュー.ToolTip" ) );\r
// \r
this.toolStripMenuItemすべてのチップの選択.ShortcutKeyDisplayString = null;\r
this.toolStripMenuItemすべてのチップの選択.Click += new System.EventHandler( this.toolStripMenuItemすべてのチップの選択_Click );\r
// \r
- // toolStripMenuItemレーン内のすべてのチップの選択\r
+ // toolStripMenuItemレーン内のすべてのチップの選択1\r
// \r
- this.toolStripMenuItemレーン内のすべてのチップの選択.AccessibleDescription = null;\r
- this.toolStripMenuItemレーン内のすべてのチップの選択.AccessibleName = null;\r
- resources.ApplyResources( this.toolStripMenuItemレーン内のすべてのチップの選択, "toolStripMenuItemレーン内のすべてのチップの選択" );\r
- this.toolStripMenuItemレーン内のすべてのチップの選択.BackgroundImage = null;\r
- this.toolStripMenuItemレーン内のすべてのチップの選択.Name = "toolStripMenuItemレーン内のすべてのチップの選択";\r
- this.toolStripMenuItemレーン内のすべてのチップの選択.ShortcutKeyDisplayString = null;\r
- this.toolStripMenuItemレーン内のすべてのチップの選択.Click += new System.EventHandler( this.toolStripMenuItemレーン内のすべてのチップの選択_Click );\r
+ this.toolStripMenuItemレーン内のすべてのチップの選択1.AccessibleDescription = null;\r
+ this.toolStripMenuItemレーン内のすべてのチップの選択1.AccessibleName = null;\r
+ resources.ApplyResources( this.toolStripMenuItemレーン内のすべてのチップの選択1, "toolStripMenuItemレーン内のすべてのチップの選択1" );\r
+ this.toolStripMenuItemレーン内のすべてのチップの選択1.BackgroundImage = null;\r
+ this.toolStripMenuItemレーン内のすべてのチップの選択1.Name = "toolStripMenuItemレーン内のすべてのチップの選択1";\r
+ this.toolStripMenuItemレーン内のすべてのチップの選択1.ShortcutKeyDisplayString = null;\r
+ this.toolStripMenuItemレーン内のすべてのチップの選択1.Click += new System.EventHandler( this.toolStripMenuItemレーン内のすべてのチップの選択_Click );\r
+ // \r
+ // toolStripMenuItemレーン内のすべてのチップの選択_特定小節以降2\r
+ // \r
+ this.toolStripMenuItemレーン内のすべてのチップの選択_特定小節以降2.AccessibleDescription = null;\r
+ this.toolStripMenuItemレーン内のすべてのチップの選択_特定小節以降2.AccessibleName = null;\r
+ resources.ApplyResources( this.toolStripMenuItemレーン内のすべてのチップの選択_特定小節以降2, "toolStripMenuItemレーン内のすべてのチップの選択_特定小節以降2" );\r
+ this.toolStripMenuItemレーン内のすべてのチップの選択_特定小節以降2.BackgroundImage = null;\r
+ this.toolStripMenuItemレーン内のすべてのチップの選択_特定小節以降2.Name = "toolStripMenuItemレーン内のすべてのチップの選択_特定小節以降2";\r
+ this.toolStripMenuItemレーン内のすべてのチップの選択_特定小節以降2.ShortcutKeyDisplayString = null;\r
+ this.toolStripMenuItemレーン内のすべてのチップの選択_特定小節以降2.Click += new System.EventHandler( this.toolStripMenuItemレーン内のすべてのチップの選択_特定小節以降_Click );\r
// \r
// toolStripMenuItem小節内のすべてのチップの選択\r
// \r
this.toolStripMenuItem小節の削除.ShortcutKeyDisplayString = null;\r
this.toolStripMenuItem小節の削除.Click += new System.EventHandler( this.toolStripMenuItem小節の削除_Click );\r
// \r
+ // toolStripSeparator18\r
+ // \r
+ this.toolStripSeparator18.AccessibleDescription = null;\r
+ this.toolStripSeparator18.AccessibleName = null;\r
+ resources.ApplyResources( this.toolStripSeparator18, "toolStripSeparator18" );\r
+ this.toolStripSeparator18.Name = "toolStripSeparator18";\r
+ // \r
+ // ToolStripMenuItemBPMDetections\r
+ // \r
+ this.ToolStripMenuItemBPMDetections.AccessibleDescription = null;\r
+ this.ToolStripMenuItemBPMDetections.AccessibleName = null;\r
+ resources.ApplyResources( this.ToolStripMenuItemBPMDetections, "ToolStripMenuItemBPMDetections" );\r
+ this.ToolStripMenuItemBPMDetections.BackgroundImage = null;\r
+ this.ToolStripMenuItemBPMDetections.Name = "ToolStripMenuItemBPMDetections";\r
+ this.ToolStripMenuItemBPMDetections.ShortcutKeyDisplayString = null;\r
+ this.ToolStripMenuItemBPMDetections.Click += new System.EventHandler( this.ToolStripMenuItemBeatChipsGeneration_Click );\r
+ // \r
+ // generateBPMFromBeatTipsToolStripMenuItem\r
+ // \r
+ this.generateBPMFromBeatTipsToolStripMenuItem.AccessibleDescription = null;\r
+ this.generateBPMFromBeatTipsToolStripMenuItem.AccessibleName = null;\r
+ resources.ApplyResources( this.generateBPMFromBeatTipsToolStripMenuItem, "generateBPMFromBeatTipsToolStripMenuItem" );\r
+ this.generateBPMFromBeatTipsToolStripMenuItem.BackgroundImage = null;\r
+ this.generateBPMFromBeatTipsToolStripMenuItem.Name = "generateBPMFromBeatTipsToolStripMenuItem";\r
+ this.generateBPMFromBeatTipsToolStripMenuItem.ShortcutKeyDisplayString = null;\r
+ this.generateBPMFromBeatTipsToolStripMenuItem.Click += new System.EventHandler( this.ToolStripMenuItemBPMChipsGeneration_Click );\r
+ // \r
// Cメインフォーム\r
// \r
this.AccessibleDescription = null;\r
private System.Windows.Forms.ToolStripSeparator toolStripSeparator17;\r
private System.Windows.Forms.ToolStripMenuItem toolStripMenuItem小節の挿入;\r
private System.Windows.Forms.ToolStripMenuItem toolStripMenuItem小節の削除;\r
- private System.Windows.Forms.ToolStripMenuItem toolStripMenuItemレーン内のすべてのチップの選択;\r
+ private System.Windows.Forms.ToolStripMenuItem toolStripMenuItemレーン内のすべてのチップの選択1;\r
private System.Windows.Forms.ToolStripMenuItem toolStripMenuItem小節内のすべてのチップの選択;\r
private System.Windows.Forms.Label labelGenre;\r
internal System.Windows.Forms.TextBox textBoxGenre;\r
+ private System.Windows.Forms.ToolStripSeparator toolStripSeparator18;\r
+ private System.Windows.Forms.ToolStripMenuItem ToolStripMenuItemBPMDetections;\r
+ private System.Windows.Forms.ToolStripMenuItem generateBPMFromBeatTipsToolStripMenuItem;\r
+ private System.Windows.Forms.ToolStripMenuItem toolStripMenuItemレーン内のすべてのチップの選択_特定小節以降2;\r
}\r
}
\ No newline at end of file
\r
bool b削除されたチップがある = false;\r
bool b削除完了 = false;\r
+ int laneBEAT = this.mgr譜面管理者.nレーン名に対応するレーン番号を返す( "BEAT" );\r
+ List<int> list削除処理済BEAT_index = new List<int>();\r
\r
while( !b削除完了 )\r
{\r
#endregion\r
\r
\r
- // チップオブジェクトを削除する。\r
-\r
- c小節.listチップ.Remove( cチップ );\r
- \r
- \r
- // フラグを設定してループする。\r
-\r
- b削除完了 = false; // まだ終わらんよ\r
- b削除されたチップがある = true;\r
- break;\r
+ #region [ チップオブジェクトを削除する。ただしBEATオブジェクトは削除禁止。表裏を反転するだけ。]\r
+ if ( cチップ.nレーン番号0to != laneBEAT )\r
+ {\r
+ c小節.listチップ.Remove( cチップ );\r
+\r
+ // フラグを設定してループする。(foreachのlistを更新しているため)\r
+ b削除完了 = false; // まだ終わらんよ\r
+ b削除されたチップがある = true;\r
+ break;\r
+ }\r
+ else\r
+ {\r
+ int p = c小節.listチップ.IndexOf( cチップ );\r
+ if ( !list削除処理済BEAT_index.Contains( p ) ) // まだ裏表反転したことがないチップならば\r
+ {\r
+ cチップ.nチャンネル番号00toFF = ( cチップ.b裏 ) ? 0xF3 : 0xF8; // 表裏反転\r
+ cチップ.b裏 = !cチップ.b裏;\r
+ c小節.listチップ[ p ] = cチップ;\r
+ list削除処理済BEAT_index.Add( p );\r
+\r
+ // フラグを設定してループする。(foreachのlistを更新しているため)\r
+ b削除完了 = false; // まだ終わらんよ\r
+ b削除されたチップがある = true;\r
+ break;\r
+ }\r
+ }\r
+ #endregion\r
}\r
}\r
//-----------------\r
#endregion\r
}\r
+ list削除処理済BEAT_index.Clear();\r
+ list削除処理済BEAT_index = null;\r
\r
#region [ 1つでもチップを削除したなら、未保存フラグを立てる。 ]\r
//-----------------\r
#endregion\r
\r
#region [ コンテクストメニューの[選択]項目に、レーン名と小節番号の情報をを付与する。 ]\r
- int indexMenuLaneSelect = this.contextMenuStrip譜面右メニュー.Items.IndexOfKey( "toolStripMenuItemレーン内のすべてのチップの選択" );\r
+ int indexMenuLaneSelect1 = this.contextMenuStrip譜面右メニュー.Items.IndexOfKey( "toolStripMenuItemレーン内のすべてのチップの選択1" );\r
+ int indexMenuLaneSelect2 = this.contextMenuStrip譜面右メニュー.Items.IndexOfKey( "toolStripMenuItemレーン内のすべてのチップの選択_特定小節以降2" );\r
int indexMenuPartSelect = this.contextMenuStrip譜面右メニュー.Items.IndexOfKey( "toolStripMenuItem小節内のすべてのチップの選択" );\r
\r
- string strItemMenuLaneSelect = this.contextMenuStrip譜面右メニュー.Items[ indexMenuLaneSelect ].Text;\r
+ string strItemMenuLaneSelect = this.contextMenuStrip譜面右メニュー.Items[ indexMenuLaneSelect1 ].Text;\r
strItemMenuLaneSelect = System.Text.RegularExpressions.Regex.Replace(\r
strItemMenuLaneSelect , @"\[(.*)\]", "[" + strLane + "]" );\r
- this.contextMenuStrip譜面右メニュー.Items[ indexMenuLaneSelect ].Text = strItemMenuLaneSelect;\r
+ this.contextMenuStrip譜面右メニュー.Items[ indexMenuLaneSelect1 ].Text = strItemMenuLaneSelect;\r
+\r
+ strItemMenuLaneSelect = this.contextMenuStrip譜面右メニュー.Items[ indexMenuLaneSelect2 ].Text;\r
+ strItemMenuLaneSelect = System.Text.RegularExpressions.Regex.Replace(\r
+ strItemMenuLaneSelect, @"\[(.*)\]", "[" + strLane + "]" );\r
+ this.contextMenuStrip譜面右メニュー.Items[ indexMenuLaneSelect2 ].Text = strItemMenuLaneSelect;\r
\r
string strItemMenuPartSelect = this.contextMenuStrip譜面右メニュー.Items[ indexMenuPartSelect ].Text;\r
strItemMenuPartSelect = System.Text.RegularExpressions.Regex.Replace(\r
strファイルの絶対パス = this.str作業フォルダ名 + strファイル;\r
}\r
\r
+ // 正規化する。(\a\b\c\..\d を \a\b\d にする)\r
+\r
+// FileInfo fi = new FileInfo( strファイルの絶対パス );\r
+//\ strファイルの絶対パス = fi.FullName;\r
+\r
return strファイルの絶対パス;\r
}\r
public Point pt現在のマウス位置を譜面の可視領域相対の座標dotで返す()\r
this.mgr選択モード管理者.tレーン上の全チップを選択する( lane );\r
\r
}\r
+ private void toolStripMenuItemレーン内のすべてのチップの選択_特定小節以降_Click( object sender, EventArgs e )\r
+ {\r
+ // 編集モードなら強制的に選択モードにする。\r
+\r
+ if ( this.b編集モードである )\r
+ this.t選択モードにする();\r
+\r
+ // メニューが開かれたときのマウスの座標を取得。\r
+ // ※メニューは必ずマウス位置を左上にして表示されるとは限らないため、\r
+ // メニューの表示位置からは取得しないこと。\r
+\r
+ Point ptマウスの位置 = this.pt選択モードのコンテクストメニューを開いたときのマウスの位置;\r
+\r
+ #region [ クリックされた箇所のレーン番号を取得する。]\r
+ //-----------------\r
+ int lane = this.mgr譜面管理者.nX座標dotが位置するレーン番号を返す( ptマウスの位置.X );\r
+ if ( lane < 0 )\r
+ return; // クリックされた箇所にレーンがない\r
+\r
+ //-----------------\r
+ #endregion\r
+ #region [ クリックされた箇所の小節を取得する。]\r
+ //-----------------\r
+ if ( this.mgr譜面管理者.nX座標dotが位置するレーン番号を返す( ptマウスの位置.X ) < 0 )\r
+ return; // クリックされた箇所にレーンがない\r
+\r
+ int n譜面先頭からの位置grid = this.mgr譜面管理者.nY座標dotが位置するgridを返す・ガイド幅単位( ptマウスの位置.Y );\r
+\r
+ C小節 csクリックされた小節 = this.mgr譜面管理者.p譜面先頭からの位置gridを含む小節を返す( n譜面先頭からの位置grid );\r
+ //-----------------\r
+ #endregion\r
+\r
+ this.mgr選択モード管理者.tレーン上の全チップを選択する( lane, csクリックされた小節.n小節番号0to3599 );\r
+ }\r
\r
private void toolStripMenuItem小節内のすべてのチップの選択_Click( object sender, EventArgs e )\r
{\r
this.tシナリオ・Viewerを再生停止する();\r
}\r
\r
+ private void ToolStripMenuItemBeatChipsGeneration_Click( object sender, EventArgs e ) // Beat Detections\r
+ {\r
+ string filename = "";\r
+\r
+ #region [ マウスカーソルを待機中に変更 ]\r
+ this.Cursor = Cursors.WaitCursor;\r
+ #endregion\r
+\r
+\r
+ #region [ BGMレーンにあるチップを抽出して、beat検出する対象のサウンドファイルを決める ]\r
+ #region [ BGM, BPM, BEATレーンのレーン番号を取得 ]\r
+ int laneBGM = this.mgr譜面管理者.nレーン名に対応するレーン番号を返す( "BGM" );\r
+ int laneBPM = this.mgr譜面管理者.nレーン名に対応するレーン番号を返す( "BPM" );\r
+ int laneBEAT = this.mgr譜面管理者.nレーン名に対応するレーン番号を返す( "BEAT" );\r
+ #endregion\r
+\r
+ // とりあえずBGMチップは1個しかない前提で進める。追々、複数のBGMチップでも動作するようにはしたい。\r
+ #region [ BGMチップ抽出 ]\r
+ int nBGMチップの小節番号 = -1;\r
+ int nBGMチップのindex = -1;\r
+ foreach ( KeyValuePair<int, C小節> pair in this.mgr譜面管理者.dic小節 )\r
+ {\r
+ C小節 c小節 = pair.Value;\r
+ nBGMチップのindex = c小節.listチップ.FindIndex(\r
+ delegate ( Cチップ cチップ )\r
+ {\r
+ return ( cチップ.nレーン番号0to == laneBGM );\r
+ }\r
+ );\r
+ if ( nBGMチップのindex >= 0 )\r
+ {\r
+ nBGMチップの小節番号 = c小節.n小節番号0to3599;\r
+ filename = this.mgrWAVリスト管理者.tファイル名を絶対パスで返す( c小節.listチップ[ nBGMチップのindex ].n値・整数1to1295 );\r
+ Debug.WriteLine( filename );\r
+ break; // とりあえず1個見つけたらbreakしちゃう\r
+ }\r
+ //for ( int i = 0; i < c小節.listチップ.Count; i++ )\r
+ //{\r
+ //Cチップ cチップ = c小節.listチップ[ i ];\r
+ //if ( cチップ.nレーン番号0to == lane )\r
+ //{\r
+ // nBGMチップのindex = i;\r
+ // filename = this.mgrWAVリスト管理者.tファイル名を絶対パスで返す( cチップ.n値・整数1to1295 );\r
+ // Debug.WriteLine( filename );\r
+ //}\r
+ //}\r
+ }\r
+ #endregion\r
+ #endregion\r
+\r
+\r
+ #region [ BPM,BEATレーンの情報を消去 ]\r
+ this.mgr選択モード管理者.tレーン上の全チップを選択する( laneBPM );\r
+ this.tシナリオ・削除();\r
+ this.mgr選択モード管理者.tレーン上の全チップを選択する( laneBEAT );\r
+ this.tシナリオ・削除();\r
+\r
+ #endregion\r
+\r
+ #region [ BASSFXのBeat detectionを実行する ]\r
+ FDK.CBeatDetect cbd = new CBeatDetect( filename );\r
+\r
+ float tempo = cbd.GetTempo();\r
+ Debug.WriteLine( "BPM=" + tempo );\r
+\r
+ List<FDK.CBeatDetect.stBeatPos> listBeatPositions = cbd.GetBeatPositions();\r
+ Debug.WriteLine( "Count: " + listBeatPositions.Count );\r
+ #endregion\r
+\r
+ // 四分音符以下、8分音符以下などと選べるようにしたい。\r
+ #region [ 四分音符以下の間隔で検出されたbeatを、端折る。端折らないと、検出beat数が多過ぎて、人が扱えなくなる。]\r
+ float last = 0;\r
+ float minBeatDelta = 60.0f / tempo; // 4分音符の長さ\r
+ int count = 0;\r
+\r
+ // 最初の10個くらいは、端折らない。まず拍の頭をとるのに必要な情報を落とすわけにはいかないので。\r
+ // 10個目以降は、四分音符未満の長さのbeatを、端折る。(裏BEATレーンに回す)\r
+ if ( listBeatPositions.Count > 10 )\r
+ {\r
+ for ( int i = count; i < listBeatPositions.Count; i++ )\r
+ {\r
+ if ( listBeatPositions[ i ].fBeatTime - last < minBeatDelta )\r
+ {\r
+ FDK.CBeatDetect.stBeatPos sbp = new CBeatDetect.stBeatPos(\r
+ listBeatPositions[ i ].fBeatTime,\r
+ 0,\r
+ 0,\r
+ 0,\r
+ ( listBeatPositions[ i ].fBeatTime - last < minBeatDelta ),\r
+ true\r
+ );\r
+\r
+ listBeatPositions[ i ] = sbp;\r
+ }\r
+ last = listBeatPositions[ i ].fBeatTime;\r
+ }\r
+ }\r
+ #endregion\r
+\r
+ #region [ ただのデバッグ表示 ]\r
+ //last = 0;\r
+ //for ( int i = 0; i < listBeatPositions.Count; i++ )\r
+ //{\r
+ // //Debug.WriteLine( listBeatPositionsLight[ i ] - last );\r
+ // Debug.WriteLine( listBeatPositions[ i ].fBeatTime );\r
+ // last = listBeatPositions[ i ].fBeatTime;\r
+ //}\r
+ //Debug.WriteLine( "========================" );\r
+ #endregion\r
+\r
+ #region [ 未使用: 端折った区間内で、それぞれBPMを再取得してみる → これは意味なし。1つのbeatしか得られないため、正しいBPMを取得できない。]\r
+ //List<float> listTempo_interval = new List<float>();\r
+ //last = 0;\r
+ //for ( int i = 0; i < listBeatPositionsLight.Count - 1; i++ )\r
+ //{\r
+ // listTempo_interval.Add( cbd.GetTempo( last, listBeatPositionsLight[ i ] ) );\r
+ // last = listBeatPositionsLight[ i ];\r
+ // Debug.WriteLine( listTempo_interval[ i ] );\r
+ //}\r
+ #endregion\r
+\r
+\r
+ int n1拍目のBeatPositionIndex = 0;\r
+\r
+ #region [ 1小節目の頭に1発目の拍が来るよう、BGMチップをずらす。ただしこれだけだと、最大1grid分の時間誤差が発生する。(BPM=125時に最大10msの誤差)]\r
+ int nBGM位置grid = 0;\r
+ float f小節長倍率 = 1.0f;\r
+ if ( nBGMチップの小節番号 >= 0 && nBGMチップのindex >= 0 )\r
+ {\r
+ C小節 c小節_0小節目 = this.mgr譜面管理者.dic小節[ nBGMチップの小節番号 ];\r
+ Cチップ cチップBGM = c小節_0小節目.listチップ[ nBGMチップのindex ];\r
+ f小節長倍率 = c小節_0小節目.f小節長倍率;\r
+ nBGM位置grid = (int) ( 192f * f小節長倍率 * listBeatPositions[ n1拍目のBeatPositionIndex ].fBeatTime / ( ( 60 * 4 ) / tempo ) + 0.5 ); // ここでnBGM位置Gridが192を超えることがある\r
+ // → そんな時は、tempoを2倍して再計算??\r
+ // じゃなくて、192をひいて、次の小節に回す(小節長倍率が変化する可能性があることに注意)\r
+ cチップBGM.n位置grid =(int) (192 * f小節長倍率 + 0.5f) - nBGM位置grid; // "192-" が必要なことに注意\r
+ c小節_0小節目.listチップ[ nBGMチップのindex ] = cチップBGM;\r
+ this.mgr譜面管理者.dic小節[ nBGMチップの小節番号 ] = c小節_0小節目;\r
+ }\r
+ #endregion\r
+\r
+ #region [ 0小節目のBPMを設定し、1つ目の拍が1小節目の頭に来るようにする。]\r
+ // まず、0小節の頭にBPM設定を追加する。\r
+ this.mgr編集モード管理者.tBPMチップを配置する( 0 * 192, tempo );\r
+ this.numericUpDownBPM.Value = (decimal) tempo;\r
+ numericUpDownBPM_ValueChanged( null, null );\r
+ numericUpDownBPM_Leave( null, null );\r
+\r
+ // 更に、先の1グリッド分の誤差をなくすために、BGMチップの位置だけでなく、0小節目のBPMも微調整する。\r
+ float fBGM再生直後のBPM = ( 60 * 4 ) * nBGM位置grid / ( 192.0f * f小節長倍率 ) / listBeatPositions[ n1拍目のBeatPositionIndex ].fBeatTime;\r
+ this.mgr編集モード管理者.tBPMチップを配置する( 192 - nBGM位置grid, fBGM再生直後のBPM );\r
+\r
+ //Debug.WriteLine( "BGM Grid =" + nBGM位置grid ); \r
+ //Debug.WriteLine( "First BPM=" + tempo );\r
+ //Debug.WriteLine( "Second BPM=" + fBGM再生直後のBPM );\r
+ #endregion\r
+\r
+ //#region [ 1小節の頭に、まずは平均テンポを設置する。本当は、次のbeat位置に向けてのBPM値を、平均BPMを使って計算したうえで、設定すべき。]\r
+ //this.mgr編集モード管理者.tBPMチップを配置する( 1 * 192, tempo );\r
+ //#endregion\r
+\r
+ #region [ BEATレーンにチップを配置する ]\r
+// int lastGrid = (int) ( 192 * this.mgr譜面管理者.dic小節[ 0 ].f小節長倍率 ); // 0小節目の倍率\r
+ //int last小節内Grid = 0;\r
+ //int last小節番号 = nBGMチップの小節番号;\r
+ int last小節番号 = 1;\r
+ float lastBeatTime = listBeatPositions[ n1拍目のBeatPositionIndex ].fBeatTime;\r
+\r
+ for ( int index = n1拍目のBeatPositionIndex; index < listBeatPositions.Count; index++ )\r
+ {\r
+//Debug.Write( "[" + index + "] " );\r
+\r
+ // 今注目しているBEATチップが、どの小節・拍(grid)に収まるかを計算する\r
+ // // 誤差を小さくするため、直前のBEATポイントからの相対位置として計算すること。\r
+ // // 絶対位置で計算すると、最初のBPM計算の誤差がそのままBEAT位置に現れる。\r
+ FDK.CBeatDetect.stBeatPos sbp = listBeatPositions[ index ];\r
+\r
+ float deltatime = sbp.fBeatTime - lastBeatTime;\r
+//Debug.Write( "delta=" + deltatime );\r
+ int n小節番号 = last小節番号;\r
+ float f1小節の時間 = ( 60 / tempo ) * 4;\r
+ #region [ 0小節目の場合 ]\r
+ if ( deltatime < 0 )\r
+ {\r
+ while ( n小節番号 >= 0 && deltatime < 0 )\r
+ {\r
+ n小節番号--;\r
+ deltatime += f1小節の時間 * this.mgr譜面管理者.dic小節[ n小節番号 ].f小節長倍率;\r
+ //(int) ( 192 * this.mgr譜面管理者.dic小節[ n小節番号 ].f小節長倍率 ); // 0小節目の倍率\r
+ }\r
+ if ( deltatime < 0 )\r
+ {\r
+ Debug.WriteLine( "[" + index + "]: deltatime < 0; error (" + deltatime );\r
+ continue;\r
+ }\r
+ }\r
+ #endregion\r
+ #region [ 1小節目以降の場合 ]\r
+ else\r
+ {\r
+//Debug.Write( " + " + f1小節の時間 * this.mgr譜面管理者.dic小節[ n小節番号 ].f小節長倍率 * last小節内Grid / 192 + "(" + lastGrid + "|" + last小節内Grid +")=" );\r
+// deltatime += f1小節の時間 * this.mgr譜面管理者.dic小節[ n小節番号 ].f小節長倍率 * last小節内Grid / 192; // 直前のgrid(その小節の頭から)の分\r
+//Debug.WriteLine( deltatime );\r
+ while ( true )\r
+ {\r
+ if ( deltatime < f1小節の時間 * this.mgr譜面管理者.dic小節[ n小節番号 ].f小節長倍率 )\r
+ {\r
+ break;\r
+ }\r
+ n小節番号++;\r
+\r
+ #region [ 小節ノードが不足しているなら、追加する ]\r
+ if ( this.mgr譜面管理者.n現在の最大の小節番号を返す() < n小節番号 )\r
+ {\r
+ for ( int i = n小節番号; i < n小節番号 + 5; i++ )\r
+ {\r
+ this.mgr譜面管理者.dic小節.Add( i, new C小節( i ) );\r
+ this.mgrUndoRedo管理者.tノードを追加する( new CUndoRedoセル<int>( null, new DGUndoを実行する<int>( this.mgr譜面管理者.t小節挿入のUndo ), new DGRedoを実行する<int>( this.mgr譜面管理者.t小節挿入のRedo ), i, i ) );\r
+ }\r
+ }\r
+ #endregion\r
+ \r
+ deltatime -= f1小節の時間 * this.mgr譜面管理者.dic小節[ n小節番号 ].f小節長倍率;\r
+ }\r
+ if ( deltatime < 0 )\r
+ {\r
+ Debug.WriteLine( "[" + index + "]: deltatime < 0; error (" + deltatime );\r
+ continue;\r
+ }\r
+ }\r
+ #endregion\r
+\r
+ // ここまでで、n小節番号を得ている\r
+ // ここで、更にgridを得たうえで、16分音符相当にquantizeして、BEATチップの位置とする\r
+\r
+ #region [ BEATチップを置く ]\r
+ f小節長倍率 = this.mgr譜面管理者.dic小節[ n小節番号 ].f小節長倍率;\r
+ int n小節内Grid = (int) ( 192f * f小節長倍率 * deltatime / ( ( 60 * 4 ) / tempo ) + 0.5 );\r
+\r
+ #region [ Gridを16分音符単位(==12grid単位)でquantizeする ]\r
+ Debug.Write( "nGrid: " + n小節内Grid + " -> " );\r
+ n小節内Grid = ( ( n小節内Grid + 6 ) / 12 ) * 12;\r
+ Debug.WriteLine( n小節内Grid );\r
+ #endregion\r
+\r
+ int nGrid = this.mgr譜面管理者.n譜面先頭からみた小節先頭の位置gridを返す( n小節番号 ) + n小節内Grid;\r
+\r
+ this.mgr編集モード管理者.tBeatチップを配置する( nGrid, index, sbp.fBeatTime, sbp.b無効 );\r
+// this.mgr編集モード管理者.tHHチップを配置する( nGrid, 1, sbp.b無効 ); // デバッグ用・見やすくするために暫定的に。\r
+ sbp.nGrid = nGrid;\r
+ sbp.n小節番号 = n小節番号;\r
+ listBeatPositions[ index ] = sbp; // Grid情報を入れて、listを更新 (この情報はBPx挿入時に使う)\r
+\r
+ //if ( !sbp.b無効 )\r
+ {\r
+ //lastGrid = nGrid;\r
+ //last小節内Grid = n小節内Grid;\r
+ //last小節番号 = n小節番号;\r
+ //lastBeatTime = sbp.fBeatTime;\r
+ }\r
+ #endregion\r
+Debug.WriteLine( "[" + index + "]: n小節番号=" + n小節番号 + ", Grid= " + n小節内Grid + "/" + nGrid + ", BeatTime=" + sbp.fBeatTime + ", 裏=" + sbp.b無効 );\r
+ }\r
+ #endregion\r
+\r
+ BPMchipsGeneneration_Main();\r
+\r
+ #region [ マウスカーソルの形を元に戻す ]\r
+ this.Cursor = Cursors.Default;\r
+ #endregion\r
+\r
+ cbd.Dispose();\r
+ cbd = null;\r
+\r
+ #region [ 画面の再描画 ]\r
+ this.pictureBox譜面パネル.Invalidate();\r
+ #endregion\r
+ }\r
+\r
+ private void ToolStripMenuItemBPMChipsGeneration_Click( object sender, EventArgs e )\r
+ {\r
+ BPMchipsGeneneration_Main();\r
+ }\r
+\r
+ private void BPMchipsGeneneration_Main()\r
+ {\r
+ #region [ BPMレーンとHHレーンを消去(0小節目を除く) ]\r
+ int laneBPM = this.mgr譜面管理者.nレーン名に対応するレーン番号を返す( "BPM" );\r
+ this.mgr選択モード管理者.tレーン上の全チップを選択する( laneBPM, 1 );\r
+ this.tシナリオ・削除();\r
+\r
+ int laneHH = this.mgr譜面管理者.nレーン名に対応するレーン番号を返す( "HH" );\r
+ this.mgr選択モード管理者.tレーン上の全チップを選択する( laneHH, 1 );\r
+ this.tシナリオ・削除();\r
+ #endregion\r
+\r
+ #region [ BEATレーンから、listBestPositionを生成 ]\r
+ int laneBEAT = this.mgr譜面管理者.nレーン名に対応するレーン番号を返す( "BEAT" );\r
+ List<FDK.CBeatDetect.stBeatPos> listBeatPositions = new List<CBeatDetect.stBeatPos>();\r
+ foreach ( KeyValuePair<int, C小節> pair in this.mgr譜面管理者.dic小節 )\r
+ {\r
+ C小節 c小節 = pair.Value;\r
+ for ( int index = 0; index < c小節.listチップ.Count; index++ )\r
+ {\r
+ if ( c小節.listチップ[ index ].nレーン番号0to == laneBEAT )\r
+ {\r
+ int n小節番号 = c小節.n小節番号0to3599;\r
+ listBeatPositions.Add(\r
+ new CBeatDetect.stBeatPos(\r
+ c小節.listチップ[ index ].f値・浮動小数,\r
+ n小節番号,\r
+ this.mgr譜面管理者.n譜面先頭からみた小節先頭の位置gridを返す( n小節番号 ) + c小節.listチップ[ index ].n位置grid,\r
+ c小節.listチップ[ index ].n位置grid, // 小節内のGridは以後使わないので、0にしてしまう。\r
+ c小節.listチップ[ index ].b裏,\r
+ true\r
+ )\r
+ );\r
+ }\r
+ }\r
+ }\r
+ #endregion\r
+\r
+\r
+ #region [ BEATチップの位置に合わせて、BPMを計算し、BPxチップを配置する ]\r
+\r
+ int n1拍目のBeatPositionIndex = 0;\r
+\r
+ int lastindex = 0;\r
+ for ( int index = n1拍目のBeatPositionIndex + 1; index < listBeatPositions.Count; index++ )\r
+ {\r
+ if ( listBeatPositions[ index ].b無効 )\r
+ {\r
+ continue;\r
+ }\r
+ #region [ 次の有効なBeatPointを検出する ]\r
+ int nextIndex = -1;\r
+ for ( int i = index + 1; i < listBeatPositions.Count; i++ )\r
+ {\r
+ if ( listBeatPositions[ i ].bレーン表示する && !listBeatPositions[ i ].b無効 )\r
+ //if ( listBeatPositions[ i ].bレーン表示する )\r
+ {\r
+ nextIndex = i;\r
+ break;\r
+ }\r
+ }\r
+ #endregion\r
+\r
+ #region [ BPMチップを置く]\r
+ //int lastgrid = (int) ( 192 * this.mgr譜面管理者.dic小節[ 0 ].f小節長倍率 ); // 0小節目の倍率\r
+ //int lastindex = n1拍目のBeatPositionIndex;\r
+ //int last小節番号 = nBGMチップの小節番号;\r
+\r
+ if ( nextIndex >= 0 )\r
+ {\r
+ float deltatime = listBeatPositions[ nextIndex ].fBeatTime - listBeatPositions[ index ].fBeatTime;\r
+\r
+ //int current小節番号 = listBeatPositionsLight[ index ].n小節番号;\r
+ //int next小節番号 = listBeatPositionsLight[ nextIndex ].n小節番号;\r
+ int deltagrid = listBeatPositions[ nextIndex ].nGrid - listBeatPositions[ index ].nGrid;\r
+\r
+ float fBPM = 60.0f / ( deltatime / deltagrid * 48 ); // 四分音符==48grid\r
+\r
+\r
+ // BPMチップを配置する(裏BEATチップに対しては、配置しない)\r
+ if ( nextIndex >= 0 )\r
+ {\r
+ this.mgr編集モード管理者.tBPMチップを配置する( listBeatPositions[ index ].nGrid, fBPM );\r
+ }\r
+\r
+\r
+ //this.mgr編集モード管理者.tHHチップを配置する( listBeatPositions[ index ].nGrid, 1, listBeatPositions[ index ].b無効 ); // デバッグ用・見やすくするために暫定的に。\r
+\r
+ Debug.WriteLine( "(" + index + "->" + nextIndex + "): BPM=" + fBPM + ", nGrid=" + listBeatPositions[ index ].nGrid + ", deltagrid=" + deltagrid +" , deltatime=" + deltatime );\r
+ lastindex = index;\r
+ }\r
+ #endregion\r
+ }\r
+ #region [ デバッグ用: HHチップを置く ]\r
+ for ( int index = n1拍目のBeatPositionIndex + 1; index < listBeatPositions.Count; index++ )\r
+ {\r
+ this.mgr編集モード管理者.tHHチップを配置する( listBeatPositions[ index ].nGrid, 1, listBeatPositions[ index ].b無効 ); // デバッグ用・見やすくするために暫定的に。\r
+ }\r
+ #endregion\r
+ #endregion\r
+ }\r
+\r
+\r
\r
//-----------------\r
#endregion\r
<resheader name="writer">\r
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>\r
</resheader>\r
+ <data name="tabPage基本情報.Text" xml:space="preserve">\r
+ <value>基本情報</value>\r
+ </data>\r
<assembly alias="System.Drawing" name="System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />\r
<data name="labelGenre.Location" type="System.Drawing.Point, System.Drawing">\r
<value>37, 87</value>\r
<data name="textBox曲名.ToolTip" xml:space="preserve">\r
<value>演奏データのタイトルを設定します。</value>\r
</data>\r
- <data name="tabPage基本情報.Text" xml:space="preserve">\r
- <value>基本情報</value>\r
- </data>\r
<data name="columnHeaderWAV_ラベル.Text" xml:space="preserve">\r
<value>ラベル</value>\r
</data>\r
<data name="toolStripButtonAVIリスト下移動.ToolTipText" xml:space="preserve">\r
<value>選択行を1つ下に移動します。</value>\r
</data>\r
+ <data name="toolStripMenuItemファイル.Size" type="System.Drawing.Size, System.Drawing">\r
+ <value>70, 20</value>\r
+ </data>\r
+ <data name="toolStripMenuItemファイル.Text" xml:space="preserve">\r
+ <value>ファイル(&F)</value>\r
+ </data>\r
<data name="toolStripMenuItem新規.Size" type="System.Drawing.Size, System.Drawing">\r
<value>195, 22</value>\r
</data>\r
<data name="toolStripMenuItem終了.Text" xml:space="preserve">\r
<value>終了(&X)</value>\r
</data>\r
- <data name="toolStripMenuItemファイル.Size" type="System.Drawing.Size, System.Drawing">\r
- <value>70, 20</value>\r
+ <data name="toolStripMenuItem編集.Size" type="System.Drawing.Size, System.Drawing">\r
+ <value>60, 20</value>\r
</data>\r
- <data name="toolStripMenuItemファイル.Text" xml:space="preserve">\r
- <value>ファイル(&F)</value>\r
+ <data name="toolStripMenuItem編集.Text" xml:space="preserve">\r
+ <value>編集(&E)</value>\r
</data>\r
<data name="toolStripMenuItemアンドゥ.Size" type="System.Drawing.Size, System.Drawing">\r
<value>191, 22</value>\r
<data name="toolStripMenuItem置換.Text" xml:space="preserve">\r
<value>置換(&Q)</value>\r
</data>\r
- <data name="toolStripMenuItem編集.Size" type="System.Drawing.Size, System.Drawing">\r
- <value>60, 20</value>\r
+ <data name="toolStripMenuItem表示.Size" type="System.Drawing.Size, System.Drawing">\r
+ <value>61, 20</value>\r
</data>\r
- <data name="toolStripMenuItem編集.Text" xml:space="preserve">\r
- <value>編集(&E)</value>\r
+ <data name="toolStripMenuItem表示.Text" xml:space="preserve">\r
+ <value>表示(&V)</value>\r
</data>\r
<data name="toolStripMenuItemチップパレット.Size" type="System.Drawing.Size, System.Drawing">\r
<value>150, 22</value>\r
<data name="toolStripMenuItemチップパレット.Text" xml:space="preserve">\r
<value>チップパレット(&P)</value>\r
</data>\r
+ <data name="toolStripMenuItemガイド間隔.Size" type="System.Drawing.Size, System.Drawing">\r
+ <value>150, 22</value>\r
+ </data>\r
+ <data name="toolStripMenuItemガイド間隔.Text" xml:space="preserve">\r
+ <value>ガイド間隔(&G)</value>\r
+ </data>\r
<data name="toolStripMenuItemガイド間隔4分.Size" type="System.Drawing.Size, System.Drawing">\r
<value>141, 22</value>\r
</data>\r
<data name="toolStripMenuItemガイド間隔縮小.Text" xml:space="preserve">\r
<value>縮小(&N)</value>\r
</data>\r
- <data name="toolStripMenuItemガイド間隔.Size" type="System.Drawing.Size, System.Drawing">\r
- <value>150, 22</value>\r
- </data>\r
- <data name="toolStripMenuItemガイド間隔.Text" xml:space="preserve">\r
- <value>ガイド間隔(&G)</value>\r
- </data>\r
- <data name="toolStripMenuItem表示.Size" type="System.Drawing.Size, System.Drawing">\r
- <value>61, 20</value>\r
+ <data name="toolStripMenuItem再生.Size" type="System.Drawing.Size, System.Drawing">\r
+ <value>60, 20</value>\r
</data>\r
- <data name="toolStripMenuItem表示.Text" xml:space="preserve">\r
- <value>表示(&V)</value>\r
+ <data name="toolStripMenuItem再生.Text" xml:space="preserve">\r
+ <value>再生(&P)</value>\r
</data>\r
<data name="toolStripMenuItem先頭から再生.Size" type="System.Drawing.Size, System.Drawing">\r
<value>240, 22</value>\r
<data name="toolStripMenuItem再生停止.Text" xml:space="preserve">\r
<value>再生停止(&S)</value>\r
</data>\r
- <data name="toolStripMenuItem再生.Size" type="System.Drawing.Size, System.Drawing">\r
- <value>60, 20</value>\r
+ <data name="toolStripMenuItemツール.Size" type="System.Drawing.Size, System.Drawing">\r
+ <value>66, 20</value>\r
</data>\r
- <data name="toolStripMenuItem再生.Text" xml:space="preserve">\r
- <value>再生(&P)</value>\r
+ <data name="toolStripMenuItemツール.Text" xml:space="preserve">\r
+ <value>ツール(&T)</value>\r
</data>\r
<data name="toolStripMenuItemオプション.Size" type="System.Drawing.Size, System.Drawing">\r
<value>136, 22</value>\r
<data name="toolStripMenuItemオプション.Text" xml:space="preserve">\r
<value>オプション(&O)</value>\r
</data>\r
- <data name="toolStripMenuItemã\83\84ã\83¼ã\83«.Size" type="System.Drawing.Size, System.Drawing">\r
- <value>66, 20</value>\r
+ <data name="toolStripMenuItemã\83\98ã\83«ã\83\97.Size" type="System.Drawing.Size, System.Drawing">\r
+ <value>67, 20</value>\r
</data>\r
- <data name="toolStripMenuItemã\83\84ã\83¼ã\83«.Text" xml:space="preserve">\r
- <value>ã\83\84ã\83¼ã\83«(&T)</value>\r
+ <data name="toolStripMenuItemã\83\98ã\83«ã\83\97.Text" xml:space="preserve">\r
+ <value>ã\83\98ã\83«ã\83\97(&H)</value>\r
</data>\r
<data name="toolStripMenuItemDTXCreaterマニュアル.Size" type="System.Drawing.Size, System.Drawing">\r
<value>233, 22</value>\r
<data name="toolStripMenuItemバージョン.Text" xml:space="preserve">\r
<value>バージョン情報(&V)</value>\r
</data>\r
- <data name="toolStripMenuItemヘルプ.Size" type="System.Drawing.Size, System.Drawing">\r
- <value>67, 20</value>\r
- </data>\r
- <data name="toolStripMenuItemヘルプ.Text" xml:space="preserve">\r
- <value>ヘルプ(&H)</value>\r
- </data>\r
<data name="toolStripButton新規作成.ToolTipText" xml:space="preserve">\r
<value>新しい譜面を作成します。</value>\r
</data>\r
<value>DTXViewerでの再生速度を指定します。 (#DTXVPLAYSPEED)</value>\r
</data>\r
<data name="toolStripMenuItem選択チップの切り取り.Size" type="System.Drawing.Size, System.Drawing">\r
- <value>253, 22</value>\r
+ <value>335, 22</value>\r
</data>\r
<data name="toolStripMenuItem選択チップの切り取り.Text" xml:space="preserve">\r
<value>選択チップの切り取り(&T)</value>\r
</data>\r
<data name="toolStripMenuItem選択チップのコピー.Size" type="System.Drawing.Size, System.Drawing">\r
- <value>253, 22</value>\r
+ <value>335, 22</value>\r
</data>\r
<data name="toolStripMenuItem選択チップのコピー.Text" xml:space="preserve">\r
<value>選択チップのコピー(&C)</value>\r
</data>\r
<data name="toolStripMenuItem選択チップの貼り付け.Size" type="System.Drawing.Size, System.Drawing">\r
- <value>253, 22</value>\r
+ <value>335, 22</value>\r
</data>\r
<data name="toolStripMenuItem選択チップの貼り付け.Text" xml:space="preserve">\r
<value>選択チップの貼り付け(&P)</value>\r
</data>\r
<data name="toolStripMenuItem選択チップの削除.Size" type="System.Drawing.Size, System.Drawing">\r
- <value>253, 22</value>\r
+ <value>335, 22</value>\r
</data>\r
<data name="toolStripMenuItem選択チップの削除.Text" xml:space="preserve">\r
<value>選択チップの削除(&D)</value>\r
</data>\r
<data name="toolStripSeparator15.Size" type="System.Drawing.Size, System.Drawing">\r
- <value>250, 6</value>\r
+ <value>332, 6</value>\r
</data>\r
<data name="toolStripMenuItemすべてのチップの選択.Size" type="System.Drawing.Size, System.Drawing">\r
- <value>253, 22</value>\r
+ <value>335, 22</value>\r
</data>\r
<data name="toolStripMenuItemすべてのチップの選択.Text" xml:space="preserve">\r
<value>すべてのチップの選択(&A)</value>\r
</data>\r
- <data name="toolStripMenuItemレーン内のすべてのチップの選択.Size" type="System.Drawing.Size, System.Drawing">\r
- <value>253, 22</value>\r
+ <data name="toolStripMenuItemレーン内のすべてのチップの選択1.Text" xml:space="preserve">\r
+ <value>レーン内のすべてのチップの選択(全小節)(&L) []</value>\r
</data>\r
- <data name="toolStripMenuItemレーン内のすべてのチップの選択.Text" xml:space="preserve">\r
- <value>レーン内のすべてのチップの選択(&L) []</value>\r
+ <data name="toolStripMenuItemレーン内のすべてのチップの選択_特定小節以降2.Text" xml:space="preserve">\r
+ <value>レーン内のすべてのチップの選択(指定小節以降)(&L) []</value>\r
</data>\r
<data name="toolStripMenuItem小節内のすべてのチップの選択.Size" type="System.Drawing.Size, System.Drawing">\r
- <value>253, 22</value>\r
+ <value>335, 22</value>\r
</data>\r
<data name="toolStripMenuItem小節内のすべてのチップの選択.Text" xml:space="preserve">\r
<value>小節内のすべてのチップの選択(&R) []</value>\r
</data>\r
<data name="toolStripSeparator16.Size" type="System.Drawing.Size, System.Drawing">\r
- <value>250, 6</value>\r
+ <value>332, 6</value>\r
</data>\r
<data name="toolStripMenuItem小節長変更.Size" type="System.Drawing.Size, System.Drawing">\r
- <value>253, 22</value>\r
+ <value>335, 22</value>\r
</data>\r
<data name="toolStripMenuItem小節長変更.Text" xml:space="preserve">\r
<value>小節長の変更(&B)</value>\r
</data>\r
<data name="toolStripSeparator17.Size" type="System.Drawing.Size, System.Drawing">\r
- <value>250, 6</value>\r
+ <value>332, 6</value>\r
</data>\r
<data name="toolStripMenuItem小節の挿入.Size" type="System.Drawing.Size, System.Drawing">\r
- <value>253, 22</value>\r
+ <value>335, 22</value>\r
</data>\r
<data name="toolStripMenuItem小節の挿入.Text" xml:space="preserve">\r
<value>小節の挿入(&I)</value>\r
</data>\r
<data name="toolStripMenuItem小節の削除.Size" type="System.Drawing.Size, System.Drawing">\r
- <value>253, 22</value>\r
+ <value>335, 22</value>\r
</data>\r
<data name="toolStripMenuItem小節の削除.Text" xml:space="preserve">\r
<value>小節の削除(&D)</value>\r
</data>\r
+ <data name="toolStripSeparator18.Size" type="System.Drawing.Size, System.Drawing">\r
+ <value>332, 6</value>\r
+ </data>\r
+ <data name="ToolStripMenuItemBPMDetections.Size" type="System.Drawing.Size, System.Drawing">\r
+ <value>335, 22</value>\r
+ </data>\r
+ <data name="ToolStripMenuItemBPMDetections.Text" xml:space="preserve">\r
+ <value>BEATチップの生成(&B)</value>\r
+ </data>\r
+ <data name="generateBPMFromBeatTipsToolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing">\r
+ <value>335, 22</value>\r
+ </data>\r
+ <data name="generateBPMFromBeatTipsToolStripMenuItem.Text" xml:space="preserve">\r
+ <value>BEATチップからBPMチップを生成(&B)</value>\r
+ </data>\r
<data name="contextMenuStrip譜面右メニュー.Size" type="System.Drawing.Size, System.Drawing">\r
- <value>254, 242</value>\r
+ <value>336, 336</value>\r
</data>\r
<data name="$this.Icon" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">\r
<value>\r
<value>Bass level, (easy) 1 to 100 (Hard). \r
0 means no drums.</value>\r
</data>\r
+ <data name=">>toolStripMenuItemレーン内のすべてのチップの選択1.Name" xml:space="preserve">\r
+ <value>toolStripMenuItemレーン内のすべてのチップの選択1</value>\r
+ </data>\r
<data name="toolStripButtonWAVリストプレビュースイッチ.Text" xml:space="preserve">\r
<value>toolStripButton1</value>\r
</data>\r
<data name=">>textBoxRESULTIMAGE.Name" xml:space="preserve">\r
<value>textBoxRESULTIMAGE</value>\r
</data>\r
- <data name="splitContainerタブと譜面を分割.Panel1.ToolTip" xml:space="preserve">\r
- <value />\r
+ <data name=">>toolStripMenuItemモード切替.Type" xml:space="preserve">\r
+ <value>System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>\r
</data>\r
<data name="labelPREVIEW.Location" type="System.Drawing.Point, System.Drawing">\r
<value>33, 241</value>\r
<data name=">>toolStripMenuItem削除.Name" xml:space="preserve">\r
<value>toolStripMenuItem削除</value>\r
</data>\r
+ <data name=">>toolStripMenuItemレーン内のすべてのチップの選択_特定小節以降2.Name" xml:space="preserve">\r
+ <value>toolStripMenuItemレーン内のすべてのチップの選択_特定小節以降2</value>\r
+ </data>\r
<data name="listViewBMPリスト.Location" type="System.Drawing.Point, System.Drawing">\r
<value>3, 3</value>\r
</data>\r
<data name=">>tabControl情報パネル.ZOrder" xml:space="preserve">\r
<value>0</value>\r
</data>\r
- <data name="tabPageBMP.Location" type="System.Drawing.Point, System.Drawing">\r
- <value>4, 22</value>\r
- </data>\r
- <data name=">>toolStripMenuItem貼り付け.Type" xml:space="preserve">\r
- <value>System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>\r
- </data>\r
<data name=">>labelパネル.ZOrder" xml:space="preserve">\r
<value>18</value>\r
</data>\r
<data name=">>tabPageAVI.ZOrder" xml:space="preserve">\r
<value>3</value>\r
</data>\r
- <data name="hScrollBarDLEVEL.ToolTip" xml:space="preserve">\r
- <value>Drums level, (easy) 1 to 100 (Hard). \r
-0 means no drums.</value>\r
+ <data name="toolStripMenuItemレーン内のすべてのチップの選択.Size" type="System.Drawing.Size, System.Drawing">\r
+ <value>335, 22</value>\r
</data>\r
<data name=">>labelDLEVEL.Name" xml:space="preserve">\r
<value>labelDLEVEL</value>\r
<data name=">>toolStripButton切り取り.Type" xml:space="preserve">\r
<value>System.Windows.Forms.ToolStripButton, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>\r
</data>\r
+ <data name="labelPREIMAGE.AutoSize" type="System.Boolean, mscorlib">\r
+ <value>True</value>\r
+ </data>\r
<data name="labelコメント.Size" type="System.Drawing.Size, System.Drawing">\r
<value>53, 12</value>\r
</data>\r
</value>\r
</data>\r
<data name="toolStripMenuItem選択チップの切り取り.Size" type="System.Drawing.Size, System.Drawing">\r
- <value>207, 22</value>\r
+ <value>267, 22</value>\r
</data>\r
<data name="labelBLEVEL.TextAlign" type="System.Drawing.ContentAlignment, System.Drawing">\r
<value>TopRight</value>\r
<data name="toolStripMenuItemすべて選択.ShortcutKeys" type="System.Windows.Forms.Keys, System.Windows.Forms">\r
<value>Ctrl+A</value>\r
</data>\r
- <data name=">>toolStripWAVツールバー.Name" xml:space="preserve">\r
- <value>toolStripWAVツールバー</value>\r
+ <data name="labeRESULTIMAGE.AutoSize" type="System.Boolean, mscorlib">\r
+ <value>True</value>\r
+ </data>\r
+ <data name=">>ToolStripMenuItemBPMDetections.Type" xml:space="preserve">\r
+ <value>System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>\r
</data>\r
<data name=">>tabPage自由入力.Name" xml:space="preserve">\r
<value>tabPage自由入力</value>\r
<value>148, 17</value>\r
</data>\r
<data name="toolStripSeparator15.Size" type="System.Drawing.Size, System.Drawing">\r
- <value>204, 6</value>\r
+ <value>264, 6</value>\r
</data>\r
<data name="toolStripButton先頭から再生.ToolTipText" xml:space="preserve">\r
<value>Play from top with a viewer</value>\r
<data name="toolStripButtonWAVリストプレビュー再生停止.ToolTipText" xml:space="preserve">\r
<value>Stop sound</value>\r
</data>\r
- <data name="buttonPREVIEW参照.ToolTip" xml:space="preserve">\r
- <value>Select file...</value>\r
+ <data name=">>toolStripMenuItemレーン内のすべてのチップの選択_特定小節以降.Name" xml:space="preserve">\r
+ <value>toolStripMenuItemレーン内のすべてのチップの選択_特定小節以降</value>\r
</data>\r
<data name="hScrollBarGLEVEL.TabIndex" type="System.Int32, mscorlib">\r
<value>6</value>\r
<data name=">>toolStripMenuItem新規.Name" xml:space="preserve">\r
<value>toolStripMenuItem新規</value>\r
</data>\r
- <data name=">>pictureBox譜面パネル.Type" xml:space="preserve">\r
- <value>System.Windows.Forms.PictureBox, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>\r
- </data>\r
<data name=">>toolStripButton新規作成.Name" xml:space="preserve">\r
<value>toolStripButton新規作成</value>\r
</data>\r
<data name="splitContainerタブと譜面を分割.ToolTip" xml:space="preserve">\r
<value />\r
</data>\r
- <data name="labelパネル.TabIndex" type="System.Int32, mscorlib">\r
- <value>15</value>\r
+ <data name=">>toolStripButtonリドゥ.Type" xml:space="preserve">\r
+ <value>System.Windows.Forms.ToolStripButton, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>\r
+ </data>\r
+ <data name=">>tooltoolStripMenuItemレーン内のすべてのチップの選択.Type" xml:space="preserve">\r
+ <value>System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>\r
</data>\r
<data name="toolStripButton先頭から再生.ImageTransparentColor" type="System.Drawing.Color, System.Drawing">\r
<value>Magenta</value>\r
</data>\r
- <data name="columnHeaderWAV_番号.Width" type="System.Int32, mscorlib">\r
- <value>28</value>\r
- </data>\r
- <data name="labelBLEVEL.TabIndex" type="System.Int32, mscorlib">\r
- <value>13</value>\r
- </data>\r
<data name=">>toolStripButton再生停止.Type" xml:space="preserve">\r
<value>System.Windows.Forms.ToolStripButton, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>\r
</data>\r
- <data name="labelPREIMAGE.AutoSize" type="System.Boolean, mscorlib">\r
- <value>True</value>\r
+ <data name="labelパネル.TabIndex" type="System.Int32, mscorlib">\r
+ <value>15</value>\r
</data>\r
<data name="labelBPM.Text" xml:space="preserve">\r
<value>BPM</value>\r
<value>toolStripButton再生停止</value>\r
</data>\r
<data name="toolStripMenuItem選択チップのコピー.Size" type="System.Drawing.Size, System.Drawing">\r
- <value>207, 22</value>\r
+ <value>267, 22</value>\r
</data>\r
<data name=">>buttonPREIMAGE参照.Name" xml:space="preserve">\r
<value>buttonPREIMAGE参照</value>\r
<data name="toolStripComboBox演奏速度.Items3" xml:space="preserve">\r
<value>x1.2</value>\r
</data>\r
+ <data name=">>toolStripSeparator4.Name" xml:space="preserve">\r
+ <value>toolStripSeparator4</value>\r
+ </data>\r
<data name="textBoxPREVIEW.Size" type="System.Drawing.Size, System.Drawing">\r
<value>156, 19</value>\r
</data>\r
<data name="toolStripMenuItem選択チップの削除.Size" type="System.Drawing.Size, System.Drawing">\r
- <value>207, 22</value>\r
+ <value>267, 22</value>\r
</data>\r
<data name="toolStripButtonリドゥ.Size" type="System.Drawing.Size, System.Drawing">\r
<value>23, 22</value>\r
<data name="columnHeaderWAV_ラベル.Text" xml:space="preserve">\r
<value>Label</value>\r
</data>\r
+ <data name="toolStripMenuItem新規.Size" type="System.Drawing.Size, System.Drawing">\r
+ <value>163, 22</value>\r
+ </data>\r
<data name="columnHeaderWAV_BGM.Width" type="System.Int32, mscorlib">\r
<value>34</value>\r
</data>\r
<data name=">>toolStripMenuItem先頭から再生.Type" xml:space="preserve">\r
<value>System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>\r
</data>\r
+ <data name="buttonPREVIEW参照.ToolTip" xml:space="preserve">\r
+ <value>Select file...</value>\r
+ </data>\r
<data name="hScrollBarBLEVEL.TabIndex" type="System.Int32, mscorlib">\r
<value>7</value>\r
</data>\r
<data name="listViewAVIリスト.Dock" type="System.Windows.Forms.DockStyle, System.Windows.Forms">\r
<value>Fill</value>\r
</data>\r
- <data name="toolStripMenuItemガイド間隔フリー.Text" xml:space="preserve">\r
- <value>&Free</value>\r
- </data>\r
<data name="labelBACKGROUND.TextAlign" type="System.Drawing.ContentAlignment, System.Drawing">\r
<value>TopRight</value>\r
</data>\r
<data name=">>labelPREIMAGE.Name" xml:space="preserve">\r
<value>labelPREIMAGE</value>\r
</data>\r
+ <data name="splitContainerタブと譜面を分割.Panel1.ToolTip" xml:space="preserve">\r
+ <value />\r
+ </data>\r
<data name="labelBACKGROUND.TabIndex" type="System.Int32, mscorlib">\r
<value>29</value>\r
</data>\r
<data name=">>toolStripMenuItemモード切替.Name" xml:space="preserve">\r
<value>toolStripMenuItemモード切替</value>\r
</data>\r
- <data name="labeRESULTIMAGE.TextAlign" type="System.Drawing.ContentAlignment, System.Drawing">\r
- <value>TopRight</value>\r
+ <data name="contextMenuStrip譜面右メニュー.ToolTip" xml:space="preserve">\r
+ <value />\r
</data>\r
<data name="buttonPREIMAGE参照.TabIndex" type="System.Int32, mscorlib">\r
<value>19</value>\r
<value>False</value>\r
</data>\r
<data name="contextMenuStrip譜面右メニュー.Size" type="System.Drawing.Size, System.Drawing">\r
- <value>208, 242</value>\r
+ <value>268, 314</value>\r
</data>\r
<data name="labelDLEVEL.TabIndex" type="System.Int32, mscorlib">\r
<value>11</value>\r
<data name="labelSTAGEFILE.Location" type="System.Drawing.Point, System.Drawing">\r
<value>5, 289</value>\r
</data>\r
- <data name=">>tabPageBMP.Name" xml:space="preserve">\r
- <value>tabPageBMP</value>\r
- </data>\r
<data name=">>toolStripMenuItemガイド間隔12分.Type" xml:space="preserve">\r
<value>System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>\r
</data>\r
<value>Ctrl+V</value>\r
</data>\r
<data name="toolStripMenuItem小節内のすべてのチップの選択.Size" type="System.Drawing.Size, System.Drawing">\r
- <value>207, 22</value>\r
- </data>\r
- <data name="labeRESULTIMAGE.AutoSize" type="System.Boolean, mscorlib">\r
- <value>True</value>\r
+ <value>267, 22</value>\r
</data>\r
<data name="labelBLEVEL.AutoSize" type="System.Boolean, mscorlib">\r
<value>True</value>\r
</data>\r
+ <data name=">>pictureBox譜面パネル.ZOrder" xml:space="preserve">\r
+ <value>0</value>\r
+ </data>\r
<data name="textBoxGenre.Location" type="System.Drawing.Point, System.Drawing">\r
<value>85, 84</value>\r
</data>\r
<data name=">>textBoxSTAGEFILE.ZOrder" xml:space="preserve">\r
<value>14</value>\r
</data>\r
- <data name="textBoxパネル.ToolTip" xml:space="preserve">\r
- <value>Panel message shown in playing screen.</value>\r
+ <data name="labelBLEVEL.TabIndex" type="System.Int32, mscorlib">\r
+ <value>13</value>\r
</data>\r
<data name=">>toolStripMenuItem選択チップの切り取り.Type" xml:space="preserve">\r
<value>System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>\r
<data name="textBoxコメント.Anchor" type="System.Windows.Forms.AnchorStyles, System.Windows.Forms">\r
<value>Top, Left, Right</value>\r
</data>\r
- <data name=">>textBoxコメント.Type" xml:space="preserve">\r
- <value>System.Windows.Forms.TextBox, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>\r
- </data>\r
<data name=">>toolStripSeparator1.Type" xml:space="preserve">\r
<value>System.Windows.Forms.ToolStripSeparator, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>\r
</data>\r
<data name=">>columnHeaderWAV_音量.Type" xml:space="preserve">\r
<value>System.Windows.Forms.ColumnHeader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>\r
</data>\r
+ <data name="toolStripMenuItemレーン内のすべてのチップの選択_特定小節以降.Size" type="System.Drawing.Size, System.Drawing">\r
+ <value>267, 22</value>\r
+ </data>\r
<data name="buttonPREIMAGE参照.Size" type="System.Drawing.Size, System.Drawing">\r
<value>25, 23</value>\r
</data>\r
<data name=">>toolStripMenuItemDTXCreaterマニュアル.Name" xml:space="preserve">\r
<value>toolStripMenuItemDTXCreaterマニュアル</value>\r
</data>\r
+ <data name="textBoxGLEVEL.Location" type="System.Drawing.Point, System.Drawing">\r
+ <value>85, 161</value>\r
+ </data>\r
<data name="toolStripMenuItemガイド間隔4分.Size" type="System.Drawing.Size, System.Drawing">\r
<value>138, 22</value>\r
</data>\r
<data name="columnHeaderAVI_ラベル.Width" type="System.Int32, mscorlib">\r
<value>127</value>\r
</data>\r
+ <data name="toolStripSeparator18.Size" type="System.Drawing.Size, System.Drawing">\r
+ <value>264, 6</value>\r
+ </data>\r
<data name="toolStripMenuItem再生停止.Text" xml:space="preserve">\r
<value>&Stop</value>\r
</data>\r
<data name=">>toolStripMenuItemガイド間隔拡大.Name" xml:space="preserve">\r
<value>toolStripMenuItemガイド間隔拡大</value>\r
</data>\r
- <data name="toolStripMenuItem先頭から再生.Text" xml:space="preserve">\r
- <value>Play from &top</value>\r
+ <data name=">>columnHeaderAVI_ラベル.Name" xml:space="preserve">\r
+ <value>columnHeaderAVI_ラベル</value>\r
</data>\r
<data name="toolStripMenuItem小節長変更.Size" type="System.Drawing.Size, System.Drawing">\r
- <value>207, 22</value>\r
+ <value>267, 22</value>\r
</data>\r
<data name="labelBPM.Size" type="System.Drawing.Size, System.Drawing">\r
<value>29, 12</value>\r
<data name=">>toolStripMenuItem選択モード.Name" xml:space="preserve">\r
<value>toolStripMenuItem選択モード</value>\r
</data>\r
+ <data name=">>toolStripWAVツールバー.Type" xml:space="preserve">\r
+ <value>System.Windows.Forms.ToolStrip, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>\r
+ </data>\r
<data name=">>toolStripSeparator5.Type" xml:space="preserve">\r
<value>System.Windows.Forms.ToolStripSeparator, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>\r
</data>\r
<value>1/4</value>\r
</data>\r
<data name="toolStripMenuItemすべてのチップの選択.Size" type="System.Drawing.Size, System.Drawing">\r
- <value>207, 22</value>\r
+ <value>267, 22</value>\r
</data>\r
<data name=">>toolStripSeparator12.Name" xml:space="preserve">\r
<value>toolStripSeparator12</value>\r
<data name=">>toolStripMenuItem編集.Name" xml:space="preserve">\r
<value>toolStripMenuItem編集</value>\r
</data>\r
+ <data name=">>generateBPMFromBeatTipsToolStripMenuItem.Type" xml:space="preserve">\r
+ <value>System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>\r
+ </data>\r
<data name="labelSTAGEFILE.Size" type="System.Drawing.Size, System.Drawing">\r
<value>74, 12</value>\r
</data>\r
<data name="textBoxGLEVEL.TextAlign" type="System.Windows.Forms.HorizontalAlignment, System.Windows.Forms">\r
<value>Center</value>\r
</data>\r
- <data name="toolStripMenuItemガイド間隔32分.Text" xml:space="preserve">\r
- <value>1/&32</value>\r
+ <data name=">>generateBPMFromBeatTipsToolStripMenuItem.Name" xml:space="preserve">\r
+ <value>generateBPMFromBeatTipsToolStripMenuItem</value>\r
</data>\r
<data name="textBoxパネル.Location" type="System.Drawing.Point, System.Drawing">\r
<value>85, 210</value>\r
</data>\r
- <data name=">>toolStripSeparator10.Name" xml:space="preserve">\r
- <value>toolStripSeparator10</value>\r
+ <data name="generateBPMFromBeatTipsToolStripMenuItem.Text" xml:space="preserve">\r
+ <value>Generate &BPM from Beat chips</value>\r
</data>\r
<data name=">>label曲名.ZOrder" xml:space="preserve">\r
<value>31</value>\r
<data name="toolStripSeparator1.Size" type="System.Drawing.Size, System.Drawing">\r
<value>160, 6</value>\r
</data>\r
- <data name="toolStripButtonアンドゥ.Enabled" type="System.Boolean, mscorlib">\r
- <value>False</value>\r
+ <data name="numericUpDownBPM.TextAlign" type="System.Windows.Forms.HorizontalAlignment, System.Windows.Forms">\r
+ <value>Center</value>\r
</data>\r
<data name=">>toolStripツールバー.Type" xml:space="preserve">\r
<value>System.Windows.Forms.ToolStrip, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>\r
<data name="textBox自由入力欄.Multiline" type="System.Boolean, mscorlib">\r
<value>True</value>\r
</data>\r
- <data name=">>toolStripMenuItem切り取り.Name" xml:space="preserve">\r
- <value>toolStripMenuItem切り取り</value>\r
+ <data name=">>toolStripButtonチップパレット.Type" xml:space="preserve">\r
+ <value>System.Windows.Forms.ToolStripButton, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>\r
</data>\r
<data name="toolStripMenuItem現在位置から再生.ShortcutKeys" type="System.Windows.Forms.Keys, System.Windows.Forms">\r
<value>F6</value>\r
<data name=">>toolStripButtonWAVリストプレビュー再生開始.Type" xml:space="preserve">\r
<value>System.Windows.Forms.ToolStripButton, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>\r
</data>\r
+ <data name="listViewBMPリスト.TabIndex" type="System.Int32, mscorlib">\r
+ <value>1</value>\r
+ </data>\r
<data name=">>toolStripMenuItem再生.Name" xml:space="preserve">\r
<value>toolStripMenuItem再生</value>\r
</data>\r
<data name="textBoxコメント.TabIndex" type="System.Int32, mscorlib">\r
<value>2</value>\r
</data>\r
+ <data name=">>labelBPM.Name" xml:space="preserve">\r
+ <value>labelBPM</value>\r
+ </data>\r
<data name=">>labelGLEVEL.ZOrder" xml:space="preserve">\r
<value>22</value>\r
</data>\r
<data name=">>toolStripBMPツールバー.Name" xml:space="preserve">\r
<value>toolStripBMPツールバー</value>\r
</data>\r
- <data name=">>toolStripSeparator10.Type" xml:space="preserve">\r
- <value>System.Windows.Forms.ToolStripSeparator, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>\r
- </data>\r
<data name="numericUpDownBPM.ToolTip" xml:space="preserve">\r
<value>Song's BGM (Beats Per Minute)</value>\r
</data>\r
<data name="textBox自由入力欄.Margin" type="System.Windows.Forms.Padding, System.Windows.Forms">\r
<value>10, 10, 10, 10</value>\r
</data>\r
- <data name="toolStripMenuItem名前を付けて保存.Text" xml:space="preserve">\r
- <value>Save &As ...</value>\r
- </data>\r
<data name="toolStripSeparator2.Size" type="System.Drawing.Size, System.Drawing">\r
<value>182, 6</value>\r
</data>\r
<data name=">>toolStripButtonWAVリストプレビュー再生停止.Name" xml:space="preserve">\r
<value>toolStripButtonWAVリストプレビュー再生停止</value>\r
</data>\r
+ <data name=">>toolStripButtonコピー.Name" xml:space="preserve">\r
+ <value>toolStripButtonコピー</value>\r
+ </data>\r
<data name="textBoxBLEVEL.TabIndex" type="System.Int32, mscorlib">\r
<value>7</value>\r
</data>\r
<data name="buttonPREIMAGE参照.Anchor" type="System.Windows.Forms.AnchorStyles, System.Windows.Forms">\r
<value>Top, Right</value>\r
</data>\r
- <data name=">>toolStripButtonチップパレット.Type" xml:space="preserve">\r
- <value>System.Windows.Forms.ToolStripButton, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>\r
+ <data name="toolStripBMPツールバー.Location" type="System.Drawing.Point, System.Drawing">\r
+ <value>3, 390</value>\r
</data>\r
<data name="toolStripMenuItemガイド間隔16分.Text" xml:space="preserve">\r
<value>1/1&6</value>\r
<data name="tabPage自由入力.Location" type="System.Drawing.Point, System.Drawing">\r
<value>4, 22</value>\r
</data>\r
- <data name=">>textBoxPREIMAGE.ZOrder" xml:space="preserve">\r
- <value>15</value>\r
+ <data name=">>columnHeaderAVI_ファイル名.Name" xml:space="preserve">\r
+ <value>columnHeaderAVI_ファイル名</value>\r
</data>\r
<data name="labelGLEVEL.Location" type="System.Drawing.Point, System.Drawing">\r
<value>29, 164</value>\r
<data name=">>buttonPREVIEW参照.ZOrder" xml:space="preserve">\r
<value>6</value>\r
</data>\r
- <data name=">>textBoxコメント.Parent" xml:space="preserve">\r
- <value>tabPage基本情報</value>\r
+ <data name=">>toolStripMenuItemガイド間隔12分.Name" xml:space="preserve">\r
+ <value>toolStripMenuItemガイド間隔12分</value>\r
</data>\r
<data name="labelPREIMAGE.ToolTip" xml:space="preserve">\r
<value>Preview image shown when song selected.\r
<data name="textBoxコメント.Size" type="System.Drawing.Size, System.Drawing">\r
<value>187, 19</value>\r
</data>\r
- <data name="labelDLEVEL.Size" type="System.Drawing.Size, System.Drawing">\r
- <value>46, 12</value>\r
+ <data name=">>toolStripButtonBMPリスト下移動.Name" xml:space="preserve">\r
+ <value>toolStripButtonBMPリスト下移動</value>\r
</data>\r
<data name=">>toolStripMenuItem小節長変更.Name" xml:space="preserve">\r
<value>toolStripMenuItem小節長変更</value>\r
<value>System.Windows.Forms.StatusStrip, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>\r
</data>\r
<data name="toolStripMenuItem選択チップの貼り付け.Size" type="System.Drawing.Size, System.Drawing">\r
- <value>207, 22</value>\r
+ <value>267, 22</value>\r
</data>\r
<data name="hScrollBarDLEVEL.Anchor" type="System.Windows.Forms.AnchorStyles, System.Windows.Forms">\r
<value>Top, Left, Right</value>\r
</data>\r
+ <data name=">>toolStripMenuItemレーン内のすべてのチップの選択1.Type" xml:space="preserve">\r
+ <value>System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>\r
+ </data>\r
<data name="hScrollBarBLEVEL.Size" type="System.Drawing.Size, System.Drawing">\r
<value>148, 17</value>\r
</data>\r
<data name="label曲名.TextAlign" type="System.Drawing.ContentAlignment, System.Drawing">\r
<value>TopRight</value>\r
</data>\r
- <data name=">>toolStripButton選択モード.Name" xml:space="preserve">\r
- <value>toolStripButton選択モード</value>\r
+ <data name="toolStripButtonWAVリストプレビュースイッチ.ImageTransparentColor" type="System.Drawing.Color, System.Drawing">\r
+ <value>Magenta</value>\r
+ </data>\r
+ <data name="toolStripツールバー.TabIndex" type="System.Int32, mscorlib">\r
+ <value>2</value>\r
</data>\r
<data name="toolStripMenuItem編集.Text" xml:space="preserve">\r
<value>&Edit</value>\r
<data name=">>toolStripButton新規作成.Type" xml:space="preserve">\r
<value>System.Windows.Forms.ToolStripButton, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>\r
</data>\r
- <data name=">>textBoxGLEVEL.Parent" xml:space="preserve">\r
- <value>tabPage基本情報</value>\r
+ <data name=">>pictureBox譜面パネル.Type" xml:space="preserve">\r
+ <value>System.Windows.Forms.PictureBox, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>\r
</data>\r
<data name="toolStripButtonWAVリスト上移動.Text" xml:space="preserve">\r
<value>toolStripButton1</value>\r
<data name="toolStripButtonWAVリスト下移動.Size" type="System.Drawing.Size, System.Drawing">\r
<value>23, 22</value>\r
</data>\r
- <data name=">>toolStripMenuItem検索.Name" xml:space="preserve">\r
- <value>toolStripMenuItem検索</value>\r
+ <data name="tabPageBMP.ToolTip" xml:space="preserve">\r
+ <value />\r
</data>\r
<data name="toolStripMenuItem貼り付け.Text" xml:space="preserve">\r
<value>&Paste</value>\r
<data name="pictureBox譜面パネル.ToolTip" xml:space="preserve">\r
<value />\r
</data>\r
+ <data name="toolStripMenuItemレーン内のすべてのチップの選択_特定小節以降2.Size" type="System.Drawing.Size, System.Drawing">\r
+ <value>335, 22</value>\r
+ </data>\r
<data name=">>labeRESULTIMAGE.Parent" xml:space="preserve">\r
<value>tabPage基本情報</value>\r
</data>\r
<data name=">>hScrollBarGLEVEL.Name" xml:space="preserve">\r
<value>hScrollBarGLEVEL</value>\r
</data>\r
- <data name="toolStripButtonコピー.ImageTransparentColor" type="System.Drawing.Color, System.Drawing">\r
- <value>Magenta</value>\r
+ <data name="toolStripMenuItemガイド間隔フリー.Text" xml:space="preserve">\r
+ <value>&Free</value>\r
</data>\r
<data name="labelパネル.TextAlign" type="System.Drawing.ContentAlignment, System.Drawing">\r
<value>TopRight</value>\r
<data name=">>label製作者.Type" xml:space="preserve">\r
<value>System.Windows.Forms.Label, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>\r
</data>\r
+ <data name=">>toolStripMenuItemレーン内のすべてのチップの選択_特定小節以降2.Type" xml:space="preserve">\r
+ <value>System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>\r
+ </data>\r
<data name="textBoxDLEVEL.TabIndex" type="System.Int32, mscorlib">\r
<value>5</value>\r
</data>\r
<data name=">>toolStripツールバー.ZOrder" xml:space="preserve">\r
<value>3</value>\r
</data>\r
- <data name="labelコメント.Location" type="System.Drawing.Point, System.Drawing">\r
- <value>26, 59</value>\r
- </data>\r
<data name="textBox自由入力欄.TabIndex" type="System.Int32, mscorlib">\r
<value>0</value>\r
</data>\r
<data name="textBox製作者.TabIndex" type="System.Int32, mscorlib">\r
<value>1</value>\r
</data>\r
- <data name=">>menuStripメニューバー.Type" xml:space="preserve">\r
- <value>System.Windows.Forms.MenuStrip, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>\r
- </data>\r
<data name="tabControl情報パネル.Size" type="System.Drawing.Size, System.Drawing">\r
<value>286, 444</value>\r
</data>\r
<data name=">>textBoxPREVIEW.ZOrder" xml:space="preserve">\r
<value>16</value>\r
</data>\r
+ <data name=">>toolStripButton選択モード.Name" xml:space="preserve">\r
+ <value>toolStripButton選択モード</value>\r
+ </data>\r
<data name=">>toolStripMenuItemガイド間隔16分.Name" xml:space="preserve">\r
<value>toolStripMenuItemガイド間隔16分</value>\r
</data>\r
<data name="statusStripステータスバー.Size" type="System.Drawing.Size, System.Drawing">\r
<value>731, 22</value>\r
</data>\r
- <data name=">>pictureBox譜面パネル.ZOrder" xml:space="preserve">\r
- <value>0</value>\r
+ <data name="labelコメント.Location" type="System.Drawing.Point, System.Drawing">\r
+ <value>26, 59</value>\r
</data>\r
<data name=">>toolStripButton上書き保存.Type" xml:space="preserve">\r
<value>System.Windows.Forms.ToolStripButton, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>\r
<data name="toolStripButton現在位置からBGMのみ再生.ImageTransparentColor" type="System.Drawing.Color, System.Drawing">\r
<value>Magenta</value>\r
</data>\r
+ <data name=">>toolStripSeparator18.Name" xml:space="preserve">\r
+ <value>toolStripSeparator18</value>\r
+ </data>\r
<data name="toolStripMenuItemガイド間隔縮小.Text" xml:space="preserve">\r
<value>&Narrow</value>\r
</data>\r
<value>35, 12</value>\r
</data>\r
<data name="toolStripMenuItem小節の削除.Size" type="System.Drawing.Size, System.Drawing">\r
- <value>207, 22</value>\r
+ <value>267, 22</value>\r
+ </data>\r
+ <data name="toolStripMenuItem編集モード.Size" type="System.Drawing.Size, System.Drawing">\r
+ <value>185, 22</value>\r
</data>\r
<data name="listViewBMPリスト.Font" type="System.Drawing.Font, System.Drawing">\r
<value>MS ゴシック, 9pt</value>\r
<data name=">>toolStripButtonWAVリストプレビュースイッチ.Type" xml:space="preserve">\r
<value>System.Windows.Forms.ToolStripButton, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>\r
</data>\r
+ <data name=">>toolStripWAVツールバー.Name" xml:space="preserve">\r
+ <value>toolStripWAVツールバー</value>\r
+ </data>\r
<data name="toolStripSeparator11.Size" type="System.Drawing.Size, System.Drawing">\r
<value>6, 25</value>\r
</data>\r
<data name="buttonBACKGROUND参照.Location" type="System.Drawing.Point, System.Drawing">\r
<value>247, 311</value>\r
</data>\r
- <data name="textBoxGLEVEL.Location" type="System.Drawing.Point, System.Drawing">\r
- <value>85, 161</value>\r
+ <data name=">>columnHeaderWAV_番号.Name" xml:space="preserve">\r
+ <value>columnHeaderWAV_番号</value>\r
</data>\r
<data name="toolStripSeparator3.Size" type="System.Drawing.Size, System.Drawing">\r
<value>182, 6</value>\r
<data name="labeRESULTIMAGE.Location" type="System.Drawing.Point, System.Drawing">\r
<value>11, 339</value>\r
</data>\r
+ <data name="tooltoolStripMenuItemレーン内のすべてのチップの選択.Text" xml:space="preserve">\r
+ <value>Select all in the &lane (all part) []</value>\r
+ </data>\r
<data name=">>toolStripMenuItem小節の挿入.Type" xml:space="preserve">\r
<value>System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>\r
</data>\r
<data name="toolStripButton新規作成.ImageTransparentColor" type="System.Drawing.Color, System.Drawing">\r
<value>Magenta</value>\r
</data>\r
+ <data name=">>toolStripMenuItem検索.Name" xml:space="preserve">\r
+ <value>toolStripMenuItem検索</value>\r
+ </data>\r
<data name=">>toolStripComboBox譜面拡大率.Name" xml:space="preserve">\r
<value>toolStripComboBox譜面拡大率</value>\r
</data>\r
+ <data name="toolStripMenuItemレーン内のすべてのチップの選択1.Size" type="System.Drawing.Size, System.Drawing">\r
+ <value>335, 22</value>\r
+ </data>\r
<data name=">>toolStripSeparator2.Name" xml:space="preserve">\r
<value>toolStripSeparator2</value>\r
</data>\r
<value>Paste chip(s)\r
</value>\r
</data>\r
- <data name="toolStripWAVツールバー.Location" type="System.Drawing.Point, System.Drawing">\r
- <value>3, 390</value>\r
- </data>\r
- <data name=">>toolStripMenuItemすべて選択.Name" xml:space="preserve">\r
- <value>toolStripMenuItemすべて選択</value>\r
- </data>\r
<data name="textBoxBLEVEL.Location" type="System.Drawing.Point, System.Drawing">\r
<value>85, 182</value>\r
</data>\r
<data name=">>textBoxコメント.Name" xml:space="preserve">\r
<value>textBoxコメント</value>\r
</data>\r
- <data name="splitContainerタブと譜面を分割.Location" type="System.Drawing.Point, System.Drawing">\r
- <value>0, 49</value>\r
+ <data name="toolStripMenuItem名前を付けて保存.Text" xml:space="preserve">\r
+ <value>Save &As ...</value>\r
</data>\r
<data name="tabPageWAV.Location" type="System.Drawing.Point, System.Drawing">\r
<value>4, 22</value>\r
<data name=">>hScrollBarDLEVEL.Parent" xml:space="preserve">\r
<value>tabPage基本情報</value>\r
</data>\r
+ <data name=">>ToolStripMenuItemBPMDetections.Name" xml:space="preserve">\r
+ <value>ToolStripMenuItemBPMDetections</value>\r
+ </data>\r
<data name=">>textBoxGenre.Type" xml:space="preserve">\r
<value>System.Windows.Forms.TextBox, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>\r
</data>\r
<data name=">>toolStripButton開く.Type" xml:space="preserve">\r
<value>System.Windows.Forms.ToolStripButton, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>\r
</data>\r
- <data name="toolStripMenuItemレーン内のすべてのチップの選択.Text" xml:space="preserve">\r
- <value>Select all in the &lane []</value>\r
+ <data name="tabPageWAV.Size" type="System.Drawing.Size, System.Drawing">\r
+ <value>278, 418</value>\r
</data>\r
<data name=">>textBoxBLEVEL.ZOrder" xml:space="preserve">\r
<value>20</value>\r
<data name=">>toolStripSeparator16.Name" xml:space="preserve">\r
<value>toolStripSeparator16</value>\r
</data>\r
- <data name="textBoxPREIMAGE.TabIndex" type="System.Int32, mscorlib">\r
- <value>10</value>\r
+ <data name="tabPageBMP.Location" type="System.Drawing.Point, System.Drawing">\r
+ <value>4, 22</value>\r
</data>\r
<data name="toolStripSeparator16.Size" type="System.Drawing.Size, System.Drawing">\r
- <value>204, 6</value>\r
+ <value>264, 6</value>\r
</data>\r
<data name="toolStripButton現在位置からBGMのみ再生.ToolTipText" xml:space="preserve">\r
<value>Play BGM from currect part with a viewer</value>\r
<data name="toolStripMenuItemガイド間隔拡大.ShortcutKeys" type="System.Windows.Forms.Keys, System.Windows.Forms">\r
<value>F3</value>\r
</data>\r
+ <data name="toolStripComboBoxガイド間隔.Items8" xml:space="preserve">\r
+ <value>Free</value>\r
+ </data>\r
<data name="toolStripComboBoxガイド間隔.Items7" xml:space="preserve">\r
<value>1/64</value>\r
</data>\r
<data name="columnHeaderWAV_番号.Text" xml:space="preserve">\r
<value>No</value>\r
</data>\r
- <data name="toolStripツールバー.TabIndex" type="System.Int32, mscorlib">\r
- <value>2</value>\r
+ <data name=">>menuStripメニューバー.Type" xml:space="preserve">\r
+ <value>System.Windows.Forms.MenuStrip, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>\r
</data>\r
<data name="labelSTAGEFILE.Text" xml:space="preserve">\r
<value>LoadingImage</value>\r
<data name="textBoxコメント.ToolTip" xml:space="preserve">\r
<value>Comment</value>\r
</data>\r
- <data name=">>labelBPM.Name" xml:space="preserve">\r
- <value>labelBPM</value>\r
+ <data name="ToolStripMenuItemBPMDetections.Size" type="System.Drawing.Size, System.Drawing">\r
+ <value>267, 22</value>\r
+ </data>\r
+ <data name="toolStripButtonAVIリスト下移動.ImageTransparentColor" type="System.Drawing.Color, System.Drawing">\r
+ <value>Magenta</value>\r
</data>\r
<data name="toolStripMenuItem選択チップのコピー.Text" xml:space="preserve">\r
<value>&Copy selected chip(s)</value>\r
<data name=">>textBoxSTAGEFILE.Type" xml:space="preserve">\r
<value>System.Windows.Forms.TextBox, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>\r
</data>\r
+ <data name=">>columnHeaderBMP_ファイル名.Type" xml:space="preserve">\r
+ <value>System.Windows.Forms.ColumnHeader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>\r
+ </data>\r
<data name="labelGLEVEL.Text" xml:space="preserve">\r
<value>GuitarLv.\r
</value>\r
<data name=">>toolStripSeparator1.Name" xml:space="preserve">\r
<value>toolStripSeparator1</value>\r
</data>\r
- <data name=">>toolStripMenuItemガイド間隔12分.Name" xml:space="preserve">\r
- <value>toolStripMenuItemガイド間隔12分</value>\r
+ <data name=">>hScrollBarGLEVEL.Type" xml:space="preserve">\r
+ <value>System.Windows.Forms.HScrollBar, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>\r
</data>\r
<data name="listViewAVIリスト.ToolTip" xml:space="preserve">\r
<value />\r
<data name="textBox自由入力欄.Location" type="System.Drawing.Point, System.Drawing">\r
<value>3, 3</value>\r
</data>\r
- <data name=">>columnHeaderAVI_ラベル.Name" xml:space="preserve">\r
- <value>columnHeaderAVI_ラベル</value>\r
- </data>\r
- <data name=">>columnHeaderWAV_番号.Name" xml:space="preserve">\r
- <value>columnHeaderWAV_番号</value>\r
- </data>\r
<data name="buttonPREVIEW参照.Anchor" type="System.Windows.Forms.AnchorStyles, System.Windows.Forms">\r
<value>Top, Right</value>\r
</data>\r
- <data name=">>toolStripSeparator4.Name" xml:space="preserve">\r
- <value>toolStripSeparator4</value>\r
+ <data name=">>toolStripSeparator18.Type" xml:space="preserve">\r
+ <value>System.Windows.Forms.ToolStripSeparator, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>\r
</data>\r
<data name=">>toolStripMenuItemチップパレット.Type" xml:space="preserve">\r
<value>System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>\r
<data name="labelコメント.ToolTip" xml:space="preserve">\r
<value>Comment</value>\r
</data>\r
- <data name="listViewBMPリスト.TabIndex" type="System.Int32, mscorlib">\r
- <value>1</value>\r
+ <data name=">>textBoxGLEVEL.Parent" xml:space="preserve">\r
+ <value>tabPage基本情報</value>\r
</data>\r
<data name=">>textBoxPREVIEW.Name" xml:space="preserve">\r
<value>textBoxPREVIEW</value>\r
</data>\r
- <data name="toolStripMenuItem新規.Size" type="System.Drawing.Size, System.Drawing">\r
- <value>163, 22</value>\r
+ <data name=">>toolStripSeparator10.Type" xml:space="preserve">\r
+ <value>System.Windows.Forms.ToolStripSeparator, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>\r
</data>\r
<data name=">>buttonBACKGROUND参照.Name" xml:space="preserve">\r
<value>buttonBACKGROUND参照</value>\r
<data name=">>textBoxコメント.ZOrder" xml:space="preserve">\r
<value>33</value>\r
</data>\r
- <data name="toolStripButtonWAVリストプレビュースイッチ.ImageTransparentColor" type="System.Drawing.Color, System.Drawing">\r
- <value>Magenta</value>\r
+ <data name=">>toolStripMenuItem貼り付け.Type" xml:space="preserve">\r
+ <value>System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>\r
</data>\r
<data name=">>toolStripSeparator5.Name" xml:space="preserve">\r
<value>toolStripSeparator5</value>\r
<data name="toolStripComboBox譜面拡大率.IntegralHeight" type="System.Boolean, mscorlib">\r
<value>False</value>\r
</data>\r
+ <data name="labeRESULTIMAGE.Size" type="System.Drawing.Size, System.Drawing">\r
+ <value>68, 12</value>\r
+ </data>\r
<data name=">>hScrollBar譜面用水平スクロールバー.ZOrder" xml:space="preserve">\r
<value>1</value>\r
</data>\r
AACH/wAAh/8AAI//AAA=\r
</value>\r
</data>\r
- <data name=">>toolStripButtonBMPリスト下移動.Name" xml:space="preserve">\r
- <value>toolStripButtonBMPリスト下移動</value>\r
+ <data name=">>textBoxコメント.Parent" xml:space="preserve">\r
+ <value>tabPage基本情報</value>\r
</data>\r
<data name=">>columnHeaderBMP_ラベル.Type" xml:space="preserve">\r
<value>System.Windows.Forms.ColumnHeader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>\r
<data name="toolStripMenuItemオプション.Size" type="System.Drawing.Size, System.Drawing">\r
<value>112, 22</value>\r
</data>\r
+ <data name=">>labelGLEVEL.Parent" xml:space="preserve">\r
+ <value>tabPage基本情報</value>\r
+ </data>\r
<data name=">>textBoxDLEVEL.Parent" xml:space="preserve">\r
<value>tabPage基本情報</value>\r
</data>\r
<value>5</value>\r
</data>\r
<data name="toolStripMenuItem小節の挿入.Size" type="System.Drawing.Size, System.Drawing">\r
- <value>207, 22</value>\r
+ <value>267, 22</value>\r
</data>\r
<data name=">>labelコメント.Name" xml:space="preserve">\r
<value>labelコメント</value>\r
</data>\r
+ <data name="tooltoolStripMenuItemレーン内のすべてのチップの選択.Size" type="System.Drawing.Size, System.Drawing">\r
+ <value>267, 22</value>\r
+ </data>\r
<data name="toolStripButton新規作成.ToolTipText" xml:space="preserve">\r
<value>Create a new file</value>\r
</data>\r
<data name="toolStripMenuItemすべて選択.Size" type="System.Drawing.Size, System.Drawing">\r
<value>185, 22</value>\r
</data>\r
- <data name="numericUpDownBPM.TextAlign" type="System.Windows.Forms.HorizontalAlignment, System.Windows.Forms">\r
- <value>Center</value>\r
+ <data name=">>toolStripSeparator10.Name" xml:space="preserve">\r
+ <value>toolStripSeparator10</value>\r
</data>\r
<data name="vScrollBar譜面用垂直スクロールバー.Size" type="System.Drawing.Size, System.Drawing">\r
<value>17, 444</value>\r
</data>\r
- <data name=">>toolStripButtonリドゥ.Type" xml:space="preserve">\r
- <value>System.Windows.Forms.ToolStripButton, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>\r
- </data>\r
<data name=">>toolStripMenuItem小節の挿入.Name" xml:space="preserve">\r
<value>toolStripMenuItem小節の挿入</value>\r
</data>\r
<data name="toolStripMenuItem現在位置から再生.Size" type="System.Drawing.Size, System.Drawing">\r
<value>235, 22</value>\r
</data>\r
- <data name=">>toolStripMenuItem上書き保存.Type" xml:space="preserve">\r
- <value>System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>\r
+ <data name=">>toolStripMenuItem切り取り.Name" xml:space="preserve">\r
+ <value>toolStripMenuItem切り取り</value>\r
</data>\r
<data name="hScrollBarBLEVEL.Anchor" type="System.Windows.Forms.AnchorStyles, System.Windows.Forms">\r
<value>Top, Left, Right</value>\r
<data name="textBox曲名.Location" type="System.Drawing.Point, System.Drawing">\r
<value>85, 6</value>\r
</data>\r
- <data name="tabPageWAV.Size" type="System.Drawing.Size, System.Drawing">\r
- <value>278, 418</value>\r
+ <data name="toolStripButtonアンドゥ.Enabled" type="System.Boolean, mscorlib">\r
+ <value>False</value>\r
</data>\r
<data name="$this.ClientSize" type="System.Drawing.Size, System.Drawing">\r
<value>731, 515</value>\r
<data name="tabPageBMP.Padding" type="System.Windows.Forms.Padding, System.Windows.Forms">\r
<value>3, 3, 3, 3</value>\r
</data>\r
- <data name="toolStripMenuItemバージョン.Text" xml:space="preserve">\r
- <value>&Version</value>\r
+ <data name="textBoxPREIMAGE.TabIndex" type="System.Int32, mscorlib">\r
+ <value>10</value>\r
</data>\r
<data name="toolStripComboBox演奏速度.Items9" xml:space="preserve">\r
<value>x0.6</value>\r
</data>\r
- <data name="$this.Text" xml:space="preserve">\r
- <value>DTXCreator</value>\r
+ <data name="hScrollBar譜面用水平スクロールバー.TabIndex" type="System.Int32, mscorlib">\r
+ <value>0</value>\r
</data>\r
<data name="labelBPM.TabIndex" type="System.Int32, mscorlib">\r
<value>8</value>\r
<data name="buttonSTAGEFILE参照.Size" type="System.Drawing.Size, System.Drawing">\r
<value>25, 23</value>\r
</data>\r
- <data name="toolStripButtonAVIリスト下移動.ImageTransparentColor" type="System.Drawing.Color, System.Drawing">\r
- <value>Magenta</value>\r
+ <data name="toolStripMenuItem先頭から再生.Text" xml:space="preserve">\r
+ <value>Play from &top</value>\r
</data>\r
<data name=">>tabPage基本情報.Name" xml:space="preserve">\r
<value>tabPage基本情報</value>\r
<data name=">>statusStripステータスバー.Name" xml:space="preserve">\r
<value>statusStripステータスバー</value>\r
</data>\r
- <data name="toolStripButtonWAVリストプレビュー再生開始.ToolTipText" xml:space="preserve">\r
- <value>Play the current wave sound</value>\r
+ <data name="toolStripMenuItemバージョン.Text" xml:space="preserve">\r
+ <value>&Version</value>\r
</data>\r
<data name=">>toolStripMenuItemガイド間隔64分.Type" xml:space="preserve">\r
<value>System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>\r
<data name="textBoxPREVIEW.Anchor" type="System.Windows.Forms.AnchorStyles, System.Windows.Forms">\r
<value>Top, Left, Right</value>\r
</data>\r
- <data name="hScrollBar譜面用水平スクロールバー.TabIndex" type="System.Int32, mscorlib">\r
- <value>0</value>\r
+ <data name="hScrollBarDLEVEL.ToolTip" xml:space="preserve">\r
+ <value>Drums level, (easy) 1 to 100 (Hard). \r
+0 means no drums.</value>\r
</data>\r
<data name="toolStripMenuItemすべてのチップの選択.Text" xml:space="preserve">\r
<value>Select &All</value>\r
<data name=">>columnHeaderWAV_ラベル.Name" xml:space="preserve">\r
<value>columnHeaderWAV_ラベル</value>\r
</data>\r
+ <data name=">>toolStripMenuItemレーン内のすべてのチップの選択_特定小節以降.Type" xml:space="preserve">\r
+ <value>System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>\r
+ </data>\r
<data name=">>labelBACKGROUND.Type" xml:space="preserve">\r
<value>System.Windows.Forms.Label, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>\r
</data>\r
<data name=">>toolStripMenuItem削除.Type" xml:space="preserve">\r
<value>System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>\r
</data>\r
- <data name=">>splitContainerタブと譜面を分割.Parent" xml:space="preserve">\r
- <value>$this</value>\r
- </data>\r
<data name="tabControl情報パネル.Dock" type="System.Windows.Forms.DockStyle, System.Windows.Forms">\r
<value>Fill</value>\r
</data>\r
<data name="label製作者.TabIndex" type="System.Int32, mscorlib">\r
<value>6</value>\r
</data>\r
- <data name=">>toolStripButtonコピー.Name" xml:space="preserve">\r
- <value>toolStripButtonコピー</value>\r
+ <data name=">>tabPageBMP.Name" xml:space="preserve">\r
+ <value>tabPageBMP</value>\r
</data>\r
<data name="textBoxGenre.ToolTip" xml:space="preserve">\r
<value>Genre</value>\r
<data name=">>toolStripMenuItemガイド間隔24分.Type" xml:space="preserve">\r
<value>System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>\r
</data>\r
- <data name=">>toolStripMenuItemモード切替.Type" xml:space="preserve">\r
- <value>System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>\r
- </data>\r
<data name=">>toolStripSeparator8.Type" xml:space="preserve">\r
<value>System.Windows.Forms.ToolStripSeparator, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>\r
</data>\r
<value>3</value>\r
</data>\r
<data name="toolStripSeparator17.Size" type="System.Drawing.Size, System.Drawing">\r
- <value>204, 6</value>\r
+ <value>264, 6</value>\r
</data>\r
<data name="labelBPM.TextAlign" type="System.Drawing.ContentAlignment, System.Drawing">\r
<value>TopRight</value>\r
<data name=">>labelGLEVEL.Type" xml:space="preserve">\r
<value>System.Windows.Forms.Label, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>\r
</data>\r
- <data name="labeRESULTIMAGE.Size" type="System.Drawing.Size, System.Drawing">\r
- <value>68, 12</value>\r
+ <data name=">>splitContainerタブと譜面を分割.Parent" xml:space="preserve">\r
+ <value>$this</value>\r
</data>\r
<data name="toolStripButton切り取り.Size" type="System.Drawing.Size, System.Drawing">\r
<value>23, 22</value>\r
<data name=">>textBoxDLEVEL.Type" xml:space="preserve">\r
<value>System.Windows.Forms.TextBox, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>\r
</data>\r
- <data name="toolStripBMPツールバー.Location" type="System.Drawing.Point, System.Drawing">\r
- <value>3, 390</value>\r
+ <data name="columnHeaderWAV_番号.Width" type="System.Int32, mscorlib">\r
+ <value>28</value>\r
</data>\r
<data name=">>textBoxBLEVEL.Parent" xml:space="preserve">\r
<value>tabPage基本情報</value>\r
<data name="toolStripButton再生停止.ImageTransparentColor" type="System.Drawing.Color, System.Drawing">\r
<value>Magenta</value>\r
</data>\r
+ <data name="ToolStripMenuItemBPMDetections.Text" xml:space="preserve">\r
+ <value>Generate &Beat chips</value>\r
+ </data>\r
<data name=">>buttonPREIMAGE参照.Type" xml:space="preserve">\r
<value>System.Windows.Forms.Button, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>\r
</data>\r
<data name="textBoxBLEVEL.Size" type="System.Drawing.Size, System.Drawing">\r
<value>36, 19</value>\r
</data>\r
+ <data name="textBoxパネル.ToolTip" xml:space="preserve">\r
+ <value>Panel message shown in playing screen.</value>\r
+ </data>\r
<data name="labelパネル.Location" type="System.Drawing.Point, System.Drawing">\r
<value>18, 213</value>\r
</data>\r
<data name=">>textBoxBACKGROUND.Name" xml:space="preserve">\r
<value>textBoxBACKGROUND</value>\r
</data>\r
- <data name=">>labelGLEVEL.Parent" xml:space="preserve">\r
- <value>tabPage基本情報</value>\r
+ <data name=">>textBoxPREIMAGE.ZOrder" xml:space="preserve">\r
+ <value>15</value>\r
</data>\r
<data name=">>label製作者.Name" xml:space="preserve">\r
<value>label製作者</value>\r
<data name=">>columnHeaderAVI_ファイル名.Type" xml:space="preserve">\r
<value>System.Windows.Forms.ColumnHeader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>\r
</data>\r
+ <data name="toolStripButtonコピー.ImageTransparentColor" type="System.Drawing.Color, System.Drawing">\r
+ <value>Magenta</value>\r
+ </data>\r
<data name=">>toolStripMenuItem置換.Name" xml:space="preserve">\r
<value>toolStripMenuItem置換</value>\r
</data>\r
<data name="hScrollBar譜面用水平スクロールバー.Dock" type="System.Windows.Forms.DockStyle, System.Windows.Forms">\r
<value>Bottom</value>\r
</data>\r
- <data name="contextMenuStrip譜面右メニュー.ToolTip" xml:space="preserve">\r
- <value />\r
- </data>\r
<data name=">>textBoxGLEVEL.Type" xml:space="preserve">\r
<value>System.Windows.Forms.TextBox, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>\r
</data>\r
<data name="tabPageWAV.Text" xml:space="preserve">\r
<value>WAV</value>\r
</data>\r
- <data name=">>hScrollBarDLEVEL.Type" xml:space="preserve">\r
- <value>System.Windows.Forms.HScrollBar, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>\r
+ <data name="generateBPMFromBeatTipsToolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing">\r
+ <value>267, 22</value>\r
</data>\r
<data name="tabPageAVI.ToolTip" xml:space="preserve">\r
<value />\r
<data name=">>listViewBMPリスト.Parent" xml:space="preserve">\r
<value>tabPageBMP</value>\r
</data>\r
- <data name="toolStripComboBoxガイド間隔.Items8" xml:space="preserve">\r
- <value>Free</value>\r
+ <data name="toolStripMenuItemレーン内のすべてのチップの選択_特定小節以降.Text" xml:space="preserve">\r
+ <value>Select all in the &lane to the tail []</value>\r
</data>\r
<data name="tabPageWAV.Padding" type="System.Windows.Forms.Padding, System.Windows.Forms">\r
<value>3, 3, 3, 3</value>\r
<data name=">>toolStripMenuItem選択チップの削除.Name" xml:space="preserve">\r
<value>toolStripMenuItem選択チップの削除</value>\r
</data>\r
- <data name="tabPageBMP.ToolTip" xml:space="preserve">\r
- <value />\r
+ <data name="labeRESULTIMAGE.TextAlign" type="System.Drawing.ContentAlignment, System.Drawing">\r
+ <value>TopRight</value>\r
</data>\r
<data name="toolStripComboBox演奏速度.Items6" xml:space="preserve">\r
<value>x0.9</value>\r
<data name=">>toolStripAVIツールバー.Parent" xml:space="preserve">\r
<value>tabPageAVI</value>\r
</data>\r
- <data name="toolStripMenuItemレーン内のすべてのチップの選択.Size" type="System.Drawing.Size, System.Drawing">\r
- <value>207, 22</value>\r
+ <data name="toolStripWAVツールバー.Location" type="System.Drawing.Point, System.Drawing">\r
+ <value>3, 390</value>\r
</data>\r
<data name="columnHeaderBMP_ラベル.Width" type="System.Int32, mscorlib">\r
<value>127</value>\r
<data name=">>toolStripMenuItem現在位置から再生.Type" xml:space="preserve">\r
<value>System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>\r
</data>\r
- <data name=">>columnHeaderBMP_ファイル名.Type" xml:space="preserve">\r
- <value>System.Windows.Forms.ColumnHeader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>\r
+ <data name="toolStripMenuItem編集モード.Text" xml:space="preserve">\r
+ <value>&Edit mode</value>\r
</data>\r
<data name="toolStripButtonWAVリストプレビュー再生開始.ImageTransparentColor" type="System.Drawing.Color, System.Drawing">\r
<value>Magenta</value>\r
<data name="toolStripButtonBMPリスト下移動.Text" xml:space="preserve">\r
<value>toolStripButton1</value>\r
</data>\r
- <data name="toolStripMenuItem編集モード.Text" xml:space="preserve">\r
- <value>&Edit mode</value>\r
- </data>\r
<data name=">>tabPageWAV.ZOrder" xml:space="preserve">\r
<value>1</value>\r
</data>\r
<data name=">>pictureBox譜面パネル.Name" xml:space="preserve">\r
<value>pictureBox譜面パネル</value>\r
</data>\r
+ <data name="$this.Text" xml:space="preserve">\r
+ <value>DTXCreator</value>\r
+ </data>\r
<data name="$this.ToolTip" xml:space="preserve">\r
<value />\r
</data>\r
<data name="labelコメント.AutoSize" type="System.Boolean, mscorlib">\r
<value>True</value>\r
</data>\r
+ <data name="splitContainerタブと譜面を分割.Location" type="System.Drawing.Point, System.Drawing">\r
+ <value>0, 49</value>\r
+ </data>\r
<data name=">>splitContainerタブと譜面を分割.Panel1.Type" xml:space="preserve">\r
<value>System.Windows.Forms.SplitterPanel, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>\r
</data>\r
<data name="tabPageAVI.TabIndex" type="System.Int32, mscorlib">\r
<value>3</value>\r
</data>\r
- <data name=">>columnHeaderAVI_ファイル名.Name" xml:space="preserve">\r
- <value>columnHeaderAVI_ファイル名</value>\r
+ <data name="toolStripButtonWAVリストプレビュー再生開始.ToolTipText" xml:space="preserve">\r
+ <value>Play the current wave sound</value>\r
</data>\r
<data name="buttonSTAGEFILE参照.TabIndex" type="System.Int32, mscorlib">\r
<value>21</value>\r
<data name="toolStripMenuItem置換.Text" xml:space="preserve">\r
<value>Replace(&Q)</value>\r
</data>\r
- <data name=">>tabPage基本情報.Parent" xml:space="preserve">\r
- <value>tabControl情報パネル</value>\r
+ <data name=">>toolStripMenuItemすべて選択.Name" xml:space="preserve">\r
+ <value>toolStripMenuItemすべて選択</value>\r
</data>\r
<data name=">>numericUpDownBPM.Name" xml:space="preserve">\r
<value>numericUpDownBPM</value>\r
<data name="tabPageAVI.Padding" type="System.Windows.Forms.Padding, System.Windows.Forms">\r
<value>3, 3, 3, 3</value>\r
</data>\r
- <data name=">>hScrollBarGLEVEL.Type" xml:space="preserve">\r
- <value>System.Windows.Forms.HScrollBar, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>\r
+ <data name=">>toolStripMenuItem上書き保存.Type" xml:space="preserve">\r
+ <value>System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>\r
+ </data>\r
+ <data name="labelDLEVEL.Size" type="System.Drawing.Size, System.Drawing">\r
+ <value>46, 12</value>\r
</data>\r
<data name="hScrollBar譜面用水平スクロールバー.ToolTip" xml:space="preserve">\r
<value />\r
<data name=">>toolStripMenuItemツール.Type" xml:space="preserve">\r
<value>System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>\r
</data>\r
+ <data name=">>tabPage基本情報.Parent" xml:space="preserve">\r
+ <value>tabControl情報パネル</value>\r
+ </data>\r
<data name="toolStripButton貼り付け.Size" type="System.Drawing.Size, System.Drawing">\r
<value>23, 22</value>\r
</data>\r
<data name=">>pictureBox譜面パネル.Parent" xml:space="preserve">\r
<value>splitContainerタブと譜面を分割.Panel2</value>\r
</data>\r
- <data name=">>toolStripWAVツールバー.Type" xml:space="preserve">\r
- <value>System.Windows.Forms.ToolStrip, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>\r
+ <data name=">>tooltoolStripMenuItemレーン内のすべてのチップの選択.Name" xml:space="preserve">\r
+ <value>tooltoolStripMenuItemレーン内のすべてのチップの選択</value>\r
</data>\r
<data name=">>toolStripSeparator11.Name" xml:space="preserve">\r
<value>toolStripSeparator11</value>\r
</data>\r
- <data name="toolStripMenuItem編集モード.Size" type="System.Drawing.Size, System.Drawing">\r
- <value>185, 22</value>\r
+ <data name=">>columnHeaderBMP_BMP番号.Name" xml:space="preserve">\r
+ <value>columnHeaderBMP_BMP番号</value>\r
</data>\r
<data name=">>toolStripMenuItemガイド間隔8分.Name" xml:space="preserve">\r
<value>toolStripMenuItemガイド間隔8分</value>\r
<data name=">>toolStripMenuItem小節の削除.Type" xml:space="preserve">\r
<value>System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>\r
</data>\r
+ <data name="toolStripMenuItemガイド間隔32分.Text" xml:space="preserve">\r
+ <value>1/&32</value>\r
+ </data>\r
<data name="toolStripMenuItem選択モード.Text" xml:space="preserve">\r
<value>&Select mode</value>\r
</data>\r
<data name=">>labelGenre.Parent" xml:space="preserve">\r
<value>tabPage基本情報</value>\r
</data>\r
+ <data name=">>hScrollBarDLEVEL.Type" xml:space="preserve">\r
+ <value>System.Windows.Forms.HScrollBar, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>\r
+ </data>\r
<data name="toolStripMenuItem現在位置からBGMのみ再生.Text" xml:space="preserve">\r
<value>Play &BGM from current part</value>\r
</data>\r
<data name=">>toolStripMenuItemヘルプ.Type" xml:space="preserve">\r
<value>System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>\r
</data>\r
- <data name=">>columnHeaderBMP_BMP番号.Name" xml:space="preserve">\r
- <value>columnHeaderBMP_BMP番号</value>\r
+ <data name=">>textBoxコメント.Type" xml:space="preserve">\r
+ <value>System.Windows.Forms.TextBox, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>\r
</data>\r
<data name="toolStripButton編集モード.Size" type="System.Drawing.Size, System.Drawing">\r
<value>23, 22</value>\r
<metadata name="statusStripステータスバー.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">\r
<value>0, 493</value>\r
</metadata>\r
- <metadata name="toolTipツールチップ.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">\r
- <value>572, 17</value>\r
+ <metadata name="contextMenuStrip譜面右メニュー.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">\r
+ <value>203, 39</value>\r
</metadata>\r
<metadata name="toolStripBMPツールバー.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">\r
<value>3, 390</value>\r
</metadata>\r
- <metadata name="contextMenuStrip譜面右メニュー.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">\r
- <value>203, 39</value>\r
+ <metadata name="toolTipツールチップ.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">\r
+ <value>572, 17</value>\r
</metadata>\r
<metadata name="toolStripツールバー.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">\r
<value>0, 24</value>\r
<value>0, 0</value>\r
</metadata>\r
<metadata name="toolStripAVIツールバー.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">\r
- <value>3, 387</value>\r
+ <value>3, 390</value>\r
</metadata>\r
<metadata name="$this.Language" type="System.Globalization.CultureInfo, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">\r
<value>Japanese (Japan)</value>\r
{\r
internal abstract class CUndoRedoセル仮想\r
{\r
- public E種別 eノード種別;\r
+ public E種別 eノード種別 = E種別.単独;\r
public enum E種別\r
{\r
単独,\r
}\r
}\r
}\r
+ public string tファイル名を絶対パスで返す( int nWAV番号1to1295 )\r
+ {\r
+ CWAV wc = this.WAVキャッシュ.tWAVをキャッシュから検索して返す( nWAV番号1to1295 );\r
+ return this._Form.strファイルの存在するディレクトリを絶対パスで返す( wc.strファイル名 );\r
+ }\r
public void tプレビュー音を再生する( CWAV wc )\r
{\r
if( ( wc != null ) && ( wc.strファイル名.Length != 0 ) )\r
internal class Cクリップセル\r
{\r
public bool b貼り付け済;\r
- public int nグループID;\r
+ //public int nグループID;\r
public int nレーン番号 = -1;\r
public int n位置grid;\r
public Cチップ pチップ;\r
}\r
public static void t表チップを描画する( Graphics g, Rectangle rcチップ描画領域, int nチップ番号, Color col色 )\r
{\r
- t表チップを描画する・本体( g, rcチップ描画領域, col色 );\r
- if( nチップ番号 >= 0 )\r
+ t表チップを描画する( g, rcチップ描画領域, nチップ番号, col色, Cレーン.E種別.WAV ); // とにかくCレーン.E種別.BEAT以外を指定する\r
+ }\r
+ public static void t表チップを描画する( Graphics g, Rectangle rcチップ描画領域, int nチップ番号, Color col色, Cレーン.E種別 e種別 )\r
+ {\r
+ if ( e種別 == Cレーン.E種別.BEAT )\r
{\r
- string str = C変換.str数値を36進数2桁に変換して返す( nチップ番号 );\r
- str = str[ 0 ] + " " + str[ 1 ];\r
- t表チップを描画する・番号( g, rcチップ描画領域, str );\r
+ t表チップを描画する・本体( g, rcチップ描画領域, col色, e種別 );\r
+ }\r
+ else\r
+ {\r
+ t表チップを描画する・本体( g, rcチップ描画領域, col色 );\r
+ if ( nチップ番号 >= 0 )\r
+ {\r
+ string str = C変換.str数値を36進数2桁に変換して返す( nチップ番号 );\r
+ str = str[ 0 ] + " " + str[ 1 ];\r
+ t表チップを描画する・番号( g, rcチップ描画領域, str );\r
+ }\r
}\r
}\r
public static void t表チップを描画する( Graphics g, Rectangle rcチップ描画領域, float fチップ数値, Color col色 )\r
}\r
public static void t裏チップを描画する( Graphics g, Rectangle rcチップ描画領域, int nチップ番号, Color col色 )\r
{\r
- t裏チップを描画する・本体( g, rcチップ描画領域, col色 );\r
- if( nチップ番号 >= 0 )\r
+ t裏チップを描画する( g, rcチップ描画領域, nチップ番号, col色, Cレーン.E種別.WAV ); // とにかくCレーン.E種別.BEAT以外を指定する\r
+ }\r
+ public static void t裏チップを描画する( Graphics g, Rectangle rcチップ描画領域, int nチップ番号, Color col色, Cレーン.E種別 e種別 )\r
+ {\r
+ t裏チップを描画する・本体( g, rcチップ描画領域, col色, e種別 );\r
+\r
+ if ( e種別 == Cレーン.E種別.BEAT )\r
{\r
- string str = C変換.str数値を36進数2桁に変換して返す( nチップ番号 );\r
- str = str[ 0 ] + " " + str[ 1 ];\r
- t裏チップを描画する・番号( g, rcチップ描画領域, str );\r
+ t裏チップを描画する・本体( g, rcチップ描画領域, col色, e種別 );\r
}\r
+ else\r
+ {\r
+ t裏チップを描画する・本体( g, rcチップ描画領域, col色 );\r
+ if ( nチップ番号 >= 0 )\r
+ {\r
+ string str = C変換.str数値を36進数2桁に変換して返す( nチップ番号 );\r
+ str = str[ 0 ] + " " + str[ 1 ];\r
+ t裏チップを描画する・番号( g, rcチップ描画領域, str );\r
+ }\r
+ }\r
+ \r
}\r
public static void t裏チップを描画する( Graphics g, Rectangle rcチップ描画領域, float fチップ数値, Color col色 )\r
{\r
t裏チップを描画する・番号( g, rcチップ描画領域, str );\r
}\r
}\r
-\r
protected static Font ftチップ文字用フォント = new Font( "MS Gothic", 8f, FontStyle.Bold );\r
\r
#region [ private ]\r
\r
private static void t表チップを描画する・番号( Graphics g, Rectangle rcチップ描画領域, string str番号文字列 )\r
{\r
- StringFormat format = new StringFormat();\r
- format.Alignment = StringAlignment.Center;\r
- format.LineAlignment = StringAlignment.Near;\r
- RectangleF layoutRectangle = new RectangleF();\r
- layoutRectangle.X = rcチップ描画領域.X;\r
- layoutRectangle.Y = rcチップ描画領域.Y + 1;\r
- layoutRectangle.Width = rcチップ描画領域.Width;\r
- layoutRectangle.Height = rcチップ描画領域.Height;\r
- g.DrawString( str番号文字列, ftチップ文字用フォント, Brushes.Black, layoutRectangle, format );\r
- layoutRectangle.X--;\r
- layoutRectangle.Y--;\r
- g.DrawString( str番号文字列, ftチップ文字用フォント, Brushes.White, layoutRectangle, format );\r
+ tチップを描画する・番号( g, rcチップ描画領域, str番号文字列, false );\r
+ }\r
+\r
+ // BEATレーン専用; ●を書く\r
+ private static void t表チップを描画する・本体( Graphics g, Rectangle rcチップ描画領域, Color col色, Cレーン.E種別 e種別 )\r
+ {\r
+ if ( e種別 == Cレーン.E種別.BEAT )\r
+ {\r
+ tチップを描画する・本体( g, rcチップ描画領域, col色, false, true );\r
+ }\r
+ else\r
+ {\r
+ tチップを描画する・本体( g, rcチップ描画領域, col色, false, false );\r
+ }\r
}\r
private static void t表チップを描画する・本体( Graphics g, Rectangle rcチップ描画領域, Color col色 )\r
{\r
- SolidBrush brush = new SolidBrush( Color.FromArgb( 0x80, col色.R, col色.G, col色.B ) );\r
- Pen pen = new Pen( Color.FromArgb( 0xff, col色.R, col色.G, col色.B ) );\r
- Pen pen2 = new Pen( Color.FromArgb( 0x40, col色.R, col色.G, col色.B ) );\r
+ tチップを描画する・本体( g, rcチップ描画領域, col色, false, false );\r
+ }\r
+ private static void t裏チップを描画する・番号( Graphics g, Rectangle rcチップ描画領域, string str番号文字列 )\r
+ {\r
+ tチップを描画する・番号( g, rcチップ描画領域, str番号文字列, true );\r
+ }\r
+\r
+ // BEATレーン専用; ●を書く\r
+ private static void t裏チップを描画する・本体( Graphics g, Rectangle rcチップ描画領域, Color col色, Cレーン.E種別 e種別 )\r
+ {\r
+ if ( e種別 == Cレーン.E種別.BEAT )\r
+ {\r
+ tチップを描画する・本体( g, rcチップ描画領域, col色, true, true );\r
+ }\r
+ else\r
+ {\r
+ tチップを描画する・本体( g, rcチップ描画領域, col色, true, false );\r
+ }\r
+ }\r
+ private static void t裏チップを描画する・本体( Graphics g, Rectangle rcチップ描画領域, Color col色 )\r
+ {\r
+ tチップを描画する・本体( g, rcチップ描画領域, col色, true, false );\r
+ }\r
+\r
+ private static void tチップを描画する・本体( Graphics g, Rectangle rcチップ描画領域, Color col色, bool b裏チップである, bool bBEATチップである )\r
+ {\r
+ int alphaBrush = 128;\r
+ int alphaPen = 255;\r
+ int alphaPen2 = 64;\r
+ if ( b裏チップである )\r
+ {\r
+ rcチップ描画領域.Width -= 8;\r
+ rcチップ描画領域.Height -= 2;\r
+ rcチップ描画領域.X += 4;\r
+ rcチップ描画領域.Y++;\r
+ alphaBrush = 80;\r
+ alphaPen = 180;\r
+ alphaPen2 = 44;\r
+ }\r
+ SolidBrush brush = new SolidBrush( Color.FromArgb( alphaBrush, col色.R, col色.G, col色.B ) );\r
+ Pen pen = new Pen( Color.FromArgb( alphaPen, col色.R, col色.G, col色.B ) );\r
+ Pen pen2 = new Pen( Color.FromArgb( alphaPen2, col色.R, col色.G, col色.B ) );\r
g.FillRectangle( brush, rcチップ描画領域 );\r
g.DrawLine( pen, rcチップ描画領域.X, rcチップ描画領域.Y, rcチップ描画領域.Right, rcチップ描画領域.Y );\r
g.DrawLine( pen, rcチップ描画領域.X, rcチップ描画領域.Y, rcチップ描画領域.X, rcチップ描画領域.Bottom );\r
g.DrawLine( pen2, rcチップ描画領域.X, rcチップ描画領域.Bottom, rcチップ描画領域.Right, rcチップ描画領域.Bottom );\r
g.DrawLine( pen2, rcチップ描画領域.Right, rcチップ描画領域.Bottom, rcチップ描画領域.Right, rcチップ描画領域.Y );\r
+ if ( bBEATチップである )\r
+ {\r
+ SolidBrush brushWhite = new SolidBrush( Color.White );\r
+ g.FillEllipse(\r
+ brushWhite,\r
+ ( rcチップ描画領域.X + rcチップ描画領域.Width / 2.0f ) - ( rcチップ描画領域.Height / 2.0f ),\r
+ ( rcチップ描画領域.Y ),\r
+ rcチップ描画領域.Height,\r
+ rcチップ描画領域.Height\r
+ );\r
+ brushWhite.Dispose();\r
+\r
+ if ( b裏チップである )\r
+ {\r
+ Pen pen3 = new Pen( Color.White );\r
+ g.DrawLine( pen3, rcチップ描画領域.X, rcチップ描画領域.Y, rcチップ描画領域.X + rcチップ描画領域.Width, rcチップ描画領域.Y + rcチップ描画領域.Height );\r
+ g.DrawLine( pen3, rcチップ描画領域.X, rcチップ描画領域.Y + rcチップ描画領域.Height, rcチップ描画領域.X + rcチップ描画領域.Width, rcチップ描画領域.Y );\r
+ pen3.Dispose();\r
+ }\r
+ }\r
brush.Dispose();\r
pen.Dispose();\r
pen2.Dispose();\r
}\r
- private static void t裏チップを描画する・番号( Graphics g, Rectangle rcチップ描画領域, string str番号文字列 )\r
+ private static void tチップを描画する・番号( Graphics g, Rectangle rcチップ描画領域, string str番号文字列, bool b裏チップである )\r
{\r
+ // 表裏に関係なく、番号描画は共通\r
+\r
StringFormat format = new StringFormat();\r
format.Alignment = StringAlignment.Center;\r
format.LineAlignment = StringAlignment.Near;\r
layoutRectangle.Y--;\r
g.DrawString( str番号文字列, ftチップ文字用フォント, Brushes.White, layoutRectangle, format );\r
}\r
- private static void t裏チップを描画する・本体( Graphics g, Rectangle rcチップ描画領域, Color col色 )\r
- {\r
- rcチップ描画領域.Width -= 8;\r
- rcチップ描画領域.Height -= 2;\r
- rcチップ描画領域.X += 4;\r
- rcチップ描画領域.Y++;\r
- SolidBrush brush = new SolidBrush( Color.FromArgb( 80, col色.R, col色.G, col色.B ) );\r
- Pen pen = new Pen( Color.FromArgb( 180, col色.R, col色.G, col色.B ) );\r
- Pen pen2 = new Pen( Color.FromArgb( 0x2c, col色.R, col色.G, col色.B ) );\r
- g.FillRectangle( brush, rcチップ描画領域 );\r
- g.DrawLine( pen, rcチップ描画領域.X, rcチップ描画領域.Y, rcチップ描画領域.Right, rcチップ描画領域.Y );\r
- g.DrawLine( pen, rcチップ描画領域.X, rcチップ描画領域.Y, rcチップ描画領域.X, rcチップ描画領域.Bottom );\r
- g.DrawLine( pen2, rcチップ描画領域.X, rcチップ描画領域.Bottom, rcチップ描画領域.Right, rcチップ描画領域.Bottom );\r
- g.DrawLine( pen2, rcチップ描画領域.Right, rcチップ描画領域.Bottom, rcチップ描画領域.Right, rcチップ描画領域.Y );\r
- brush.Dispose();\r
- pen.Dispose();\r
- pen2.Dispose();\r
- }\r
//-----------------\r
#endregion\r
}\r
public enum E種別\r
{\r
BPM,\r
+ BEAT,\r
WAV,\r
BMP,\r
AVI,\r
public enum ELaneType\r
{\r
BPM,\r
+ Beat,\r
Drums,\r
BGM,\r
SE1_5,\r
}\r
internal void MouseClick( MouseEventArgs e )\r
{\r
- if( e.Y < ( C譜面管理.nレーン割付チップ番号表示高さdot + 10 ) )\r
+ #region [ レーン割り付け ]\r
+ if ( e.Y < ( C譜面管理.nレーン割付チップ番号表示高さdot + 10 ) )\r
{\r
Cレーン lc = this.mgr譜面管理者ref.listレーン[ this.n現在のチップカーソルがあるレーン番号0to ];\r
if( ( ( ( lc.eレーン種別 == Cレーン.E種別.GtR ) || ( lc.eレーン種別 == Cレーン.E種別.GtG ) ) || ( ( lc.eレーン種別 == Cレーン.E種別.GtB ) || ( lc.eレーン種別 == Cレーン.E種別.BsR ) ) ) || ( ( lc.eレーン種別 == Cレーン.E種別.BsG ) || ( lc.eレーン種別 == Cレーン.E種別.BsB ) ) )\r
}\r
}\r
}\r
+ #endregion\r
else\r
{\r
this.tチップの配置または削除( e );\r
if( ( this.rc現在のチップカーソル領域.Width > 0 ) && ( this.rc現在のチップカーソル領域.Height > 0 ) )\r
{\r
Cレーン cレーン = this.mgr譜面管理者ref.listレーン[ this.n現在のチップカーソルがあるレーン番号0to ];\r
- bool flag = ( Control.ModifierKeys & Keys.Control ) == Keys.Control;\r
- int num = -1;\r
+ bool bCtrl押下中 = ( Control.ModifierKeys & Keys.Control ) == Keys.Control;\r
+ int nチップ番号 = -1;\r
switch( cレーン.eレーン種別 )\r
{\r
case Cレーン.E種別.GtR:\r
case Cレーン.E種別.BsG:\r
case Cレーン.E種別.BsB:\r
case Cレーン.E種別.BPM:\r
- num = -1;\r
+ nチップ番号 = -1;\r
break;\r
\r
+ case Cレーン.E種別.BEAT: // BEATレーンはユーザー設置禁止のため、チップカーソルも表示しない\r
+ return;\r
+\r
default:\r
- num = this._Form.n現在選択中のWAV・BMP・AVIリストの行番号0to1294 + 1;\r
- if( ( Control.ModifierKeys & Keys.Shift ) != Keys.Shift )\r
+ nチップ番号 = this._Form.n現在選択中のWAV・BMP・AVIリストの行番号0to1294 + 1;\r
+ if( ( Control.ModifierKeys & Keys.Shift ) != Keys.Shift ) // Shift非押下中\r
{\r
- int num2 = flag ? cレーン.nレーン割付チップ・裏0or1to1295 : cレーン.nレーン割付チップ・表0or1to1295;\r
- if( num2 != 0 )\r
+ int nチップ番号・レーン割り付け = bCtrl押下中 ? cレーン.nレーン割付チップ・裏0or1to1295 : cレーン.nレーン割付チップ・表0or1to1295;\r
+ if( nチップ番号・レーン割り付け != 0 )\r
{\r
- num = num2;\r
+ nチップ番号 = nチップ番号・レーン割り付け;\r
}\r
}\r
break;\r
}\r
- if( !flag )\r
+ if( !bCtrl押下中 )\r
{\r
- Cチップ.t表チップを描画する( g, this.rc現在のチップカーソル領域, num, cレーン.col背景色 );\r
+ Cチップ.t表チップを描画する( g, this.rc現在のチップカーソル領域, nチップ番号, cレーン.col背景色, cレーン.eレーン種別 );\r
}\r
else\r
{\r
- Cチップ.t裏チップを描画する( g, this.rc現在のチップカーソル領域, num, cレーン.col背景色 );\r
+ Cチップ.t裏チップを描画する( g, this.rc現在のチップカーソル領域, nチップ番号, cレーン.col背景色, cレーン.eレーン種別 );\r
}\r
Cチップ.tチップの周囲の太枠を描画する( g, this.rc現在のチップカーソル領域 );\r
}\r
{\r
if( e.Button == MouseButtons.Left )\r
{\r
- bool flag = ( Control.ModifierKeys & Keys.Control ) == Keys.Control;\r
- bool flag2 = ( Control.ModifierKeys & Keys.Shift ) == Keys.Shift;\r
+ bool bCtrl押下中 = ( Control.ModifierKeys & Keys.Control ) == Keys.Control;\r
+ bool bShift押下中 = ( Control.ModifierKeys & Keys.Shift ) == Keys.Shift;\r
Cレーン cレーン = this.mgr譜面管理者ref.listレーン[ this.n現在のチップカーソルがあるレーン番号0to ];\r
- if( cレーン.eレーン種別 != Cレーン.E種別.BPM )\r
+ int nチップ番号・レーン割り付け = bCtrl押下中 ? cレーン.nレーン割付チップ・裏0or1to1295 : cレーン.nレーン割付チップ・表0or1to1295;\r
+ switch ( cレーン.eレーン種別 )\r
{\r
- if( ( cレーン.eレーン種別 == Cレーン.E種別.GtV ) || ( cレーン.eレーン種別 == Cレーン.E種別.BsV ) )\r
- {\r
- int num5 = flag ? cレーン.nレーン割付チップ・裏0or1to1295 : cレーン.nレーン割付チップ・表0or1to1295;\r
- if( ( num5 == 0 ) || flag2 )\r
+ #region [ GtV/BsVレーン ]\r
+ case Cレーン.E種別.GtV:\r
+ case Cレーン.E種別.BsV:\r
+ // int nチップ番号・レーン割り付け = bCtrl押下中 ? cレーン.nレーン割付チップ・裏0or1to1295 : cレーン.nレーン割付チップ・表0or1to1295;\r
+ if ( ( nチップ番号・レーン割り付け == 0 ) || bShift押下中 )\r
{\r
- num5 = this._Form.n現在選択中のWAV・BMP・AVIリストの行番号0to1294 + 1;\r
+ nチップ番号・レーン割り付け = this._Form.n現在選択中のWAV・BMP・AVIリストの行番号0to1294 + 1;\r
}\r
this._Form.mgrUndoRedo管理者.tトランザクション記録を開始する();\r
- this.mgr譜面管理者ref.tチップを配置または置換する( this.n現在のチップカーソルがあるレーン番号0to, this.n現在のチップカーソルの譜面先頭からの位置grid, num5, 0f, flag );\r
+ this.mgr譜面管理者ref.tチップを配置または置換する( this.n現在のチップカーソルがあるレーン番号0to, this.n現在のチップカーソルの譜面先頭からの位置grid, nチップ番号・レーン割り付け, 0f, bCtrl押下中 );\r
if( this.b指定位置にRGBチップがひとつもない( this.n現在のチップカーソルの譜面先頭からの位置grid, this.n現在のチップカーソルがあるレーン番号0to + 1, this.n現在のチップカーソルがあるレーン番号0to + 2, this.n現在のチップカーソルがあるレーン番号0to + 3 ) )\r
{\r
this.mgr譜面管理者ref.tチップを配置または置換する( this.n現在のチップカーソルがあるレーン番号0to + 1, this.n現在のチップカーソルの譜面先頭からの位置grid, 2, 0f, false );\r
}\r
this._Form.mgrUndoRedo管理者.tトランザクション記録を終了する();\r
- }\r
- else if( ( ( cレーン.eレーン種別 == Cレーン.E種別.GtR ) || ( cレーン.eレーン種別 == Cレーン.E種別.GtG ) ) || ( cレーン.eレーン種別 == Cレーン.E種別.GtB ) )\r
- {\r
- if( flag )\r
+ break;\r
+ #endregion\r
+ #region [ Guitar R/G/B, Bass R/G/B レーン ]\r
+ case Cレーン.E種別.GtR:\r
+ case Cレーン.E種別.GtG:\r
+ case Cレーン.E種別.GtB:\r
+ case Cレーン.E種別.BsR:\r
+ case Cレーン.E種別.BsG:\r
+ case Cレーン.E種別.BsB:\r
+ if( bCtrl押下中 )\r
{\r
for( int i = 0; i < this.mgr譜面管理者ref.listレーン.Count; i++ )\r
{\r
Cレーン cレーン2 = this.mgr譜面管理者ref.listレーン[ i ];\r
- if( cレーン2.eレーン種別 == Cレーン.E種別.GtR )\r
+ if( cレーン2.eレーン種別 == Cレーン.E種別.GtR || cレーン2.eレーン種別 == Cレーン.E種別.BsR )\r
{\r
this.mgr譜面管理者ref.tチップを配置または置換する( i, this.n現在のチップカーソルの譜面先頭からの位置grid, 2, 0f, false );\r
break;\r
{\r
this.mgr譜面管理者ref.tチップを配置または置換する( this.n現在のチップカーソルがあるレーン番号0to, this.n現在のチップカーソルの譜面先頭からの位置grid, 1, 0f, false );\r
}\r
- }\r
- else if( ( ( cレーン.eレーン種別 == Cレーン.E種別.BsR ) || ( cレーン.eレーン種別 == Cレーン.E種別.BsG ) ) || ( cレーン.eレーン種別 == Cレーン.E種別.BsB ) )\r
- {\r
- if( flag )\r
+ break;\r
+ #endregion\r
+ #region [ BPMレーン ]\r
+ case Cレーン.E種別.BPM:\r
+ #region [ ダイアログでBPM値を入力させる ]\r
+ this._Form.dlgチップパレット.t一時的に隠蔽する();\r
+ C数値入力ダイアログ c数値入力ダイアログ = new C数値入力ダイアログ( this.mgr譜面管理者ref.dc譜面先頭からの位置gridにおけるBPMを返す( this.n現在のチップカーソルの譜面先頭からの位置grid ), 0.0001M, 1000M, Resources.strBPM選択ダイアログの説明文 );\r
+ Point point = this._Form.pictureBox譜面パネル.PointToScreen( new Point( e.X, e.Y ) );\r
+ c数値入力ダイアログ.Left = point.X - ( c数値入力ダイアログ.Width / 2 );\r
+ c数値入力ダイアログ.Top = point.Y + 4;\r
+ DialogResult result = c数値入力ダイアログ.ShowDialog();\r
+ this._Form.dlgチップパレット.t一時的な隠蔽を解除する();\r
+ if ( result != DialogResult.OK )\r
{\r
- for( int j = 0; j < this.mgr譜面管理者ref.listレーン.Count; j++ )\r
- {\r
- Cレーン cレーン3 = this.mgr譜面管理者ref.listレーン[ j ];\r
- if( cレーン3.eレーン種別 == Cレーン.E種別.BsR )\r
- {\r
- this.mgr譜面管理者ref.tチップを配置または置換する( j, this.n現在のチップカーソルの譜面先頭からの位置grid, 2, 0f, false );\r
- break;\r
- }\r
- }\r
+ return;\r
}\r
- else\r
- {\r
- this.mgr譜面管理者ref.tチップを配置または置換する( this.n現在のチップカーソルがあるレーン番号0to, this.n現在のチップカーソルの譜面先頭からの位置grid, 1, 0f, false );\r
- }\r
- }\r
- else\r
- {\r
- int num8 = flag ? cレーン.nレーン割付チップ・裏0or1to1295 : cレーン.nレーン割付チップ・表0or1to1295;\r
- if( ( num8 == 0 ) || flag2 )\r
- {\r
- num8 = this._Form.n現在選択中のWAV・BMP・AVIリストの行番号0to1294 + 1;\r
- }\r
- this.mgr譜面管理者ref.tチップを配置または置換する( this.n現在のチップカーソルがあるレーン番号0to, this.n現在のチップカーソルの譜面先頭からの位置grid, num8, 0f, flag );\r
- }\r
- }\r
- else\r
- {\r
- this._Form.dlgチップパレット.t一時的に隠蔽する();\r
- C数値入力ダイアログ c数値入力ダイアログ = new C数値入力ダイアログ( this.mgr譜面管理者ref.dc譜面先頭からの位置gridにおけるBPMを返す( this.n現在のチップカーソルの譜面先頭からの位置grid ), 0.0001M, 1000M, Resources.strBPM選択ダイアログの説明文 );\r
- Point point = this._Form.pictureBox譜面パネル.PointToScreen( new Point( e.X, e.Y ) );\r
- c数値入力ダイアログ.Left = point.X - ( c数値入力ダイアログ.Width / 2 );\r
- c数値入力ダイアログ.Top = point.Y + 4;\r
- DialogResult result = c数値入力ダイアログ.ShowDialog();\r
- this._Form.dlgチップパレット.t一時的な隠蔽を解除する();\r
- if( result != DialogResult.OK )\r
- {\r
- return;\r
- }\r
- float num = (float) c数値入力ダイアログ.dc数値;\r
- int key = -1;\r
- foreach( KeyValuePair<int, float> pair in this.mgr譜面管理者ref.dicBPx )\r
- {\r
- if( pair.Value == num )\r
- {\r
- key = pair.Key;\r
- break;\r
- }\r
- }\r
- if( key == -1 )\r
- {\r
- for( int k = 1; k < 36 * 36; k++ )\r
+ #endregion\r
+ float fBPM = ( float ) c数値入力ダイアログ.dc数値;\r
+\r
+ tBPMチップを配置する( n現在のチップカーソルの譜面先頭からの位置grid, fBPM );\r
+ break;\r
+ #endregion\r
+ #region [ Beatレーン ]\r
+ case Cレーン.E種別.BEAT:\r
+ // BEATレーンに対しては、クリック押下でのチップ設置は禁止\r
+ break;\r
+ #endregion\r
+ #region [ その他通常チップ ]\r
+ default:\r
+ //int nチップ番号・レーン割り付け = bCtrl押下中 ? cレーン.nレーン割付チップ・裏0or1to1295 : cレーン.nレーン割付チップ・表0or1to1295;\r
+ if( ( nチップ番号・レーン割り付け == 0 ) || bShift押下中 )\r
{\r
- if( !this.mgr譜面管理者ref.dicBPx.ContainsKey( k ) )\r
- {\r
- this.mgr譜面管理者ref.dicBPx.Add( k, num );\r
- key = k;\r
- break;\r
- }\r
+ nチップ番号・レーン割り付け = this._Form.n現在選択中のWAV・BMP・AVIリストの行番号0to1294 + 1;\r
}\r
- }\r
- this.mgr譜面管理者ref.tチップを配置または置換する( this.n現在のチップカーソルがあるレーン番号0to, this.n現在のチップカーソルの譜面先頭からの位置grid, key, num, false );\r
+ this.mgr譜面管理者ref.tチップを配置または置換する( this.n現在のチップカーソルがあるレーン番号0to, this.n現在のチップカーソルの譜面先頭からの位置grid, nチップ番号・レーン割り付け, 0f, bCtrl押下中 );\r
+ break;\r
+ #endregion\r
}\r
- if( this._Form.appアプリ設定.PlaySoundOnWAVChipAllocated && ( ( ( cレーン.eレーン種別 == Cレーン.E種別.WAV ) || ( cレーン.eレーン種別 == Cレーン.E種別.GtV ) ) || ( cレーン.eレーン種別 == Cレーン.E種別.BsV ) ) )\r
+ #region [ 必要に応じて、プレビュー音を再生する ]\r
+ if ( this._Form.appアプリ設定.PlaySoundOnWAVChipAllocated && ( ( ( cレーン.eレーン種別 == Cレーン.E種別.WAV ) || ( cレーン.eレーン種別 == Cレーン.E種別.GtV ) ) || ( cレーン.eレーン種別 == Cレーン.E種別.BsV ) ) )\r
{\r
- int num9 = flag ? cレーン.nレーン割付チップ・裏0or1to1295 : cレーン.nレーン割付チップ・表0or1to1295;\r
- if( ( num9 == 0 ) || flag2 )\r
+ int nWAV番号1to1295 = bCtrl押下中 ? cレーン.nレーン割付チップ・裏0or1to1295 : cレーン.nレーン割付チップ・表0or1to1295;\r
+ if( ( nWAV番号1to1295 == 0 ) || bShift押下中 )\r
{\r
- num9 = this._Form.n現在選択中のWAV・BMP・AVIリストの行番号0to1294 + 1;\r
+ nWAV番号1to1295 = this._Form.n現在選択中のWAV・BMP・AVIリストの行番号0to1294 + 1;\r
}\r
- CWAV wc = this._Form.mgrWAVリスト管理者.tWAVをキャッシュから検索して返す( num9 );\r
+ CWAV wc = this._Form.mgrWAVリスト管理者.tWAVをキャッシュから検索して返す( nWAV番号1to1295 );\r
if( ( wc != null ) && ( !this._Form.appアプリ設定.NoPreviewBGM || !wc.bBGMとして使用 ) )\r
{\r
this._Form.mgrWAVリスト管理者.tプレビュー音を再生する( wc );\r
}\r
}\r
+ #endregion\r
}\r
if( e.Button == MouseButtons.Right )\r
{\r
}\r
}\r
}\r
+\r
+ // tチップの配置または削除() から株分け\r
+ public void tBPMチップを配置する( int _n現在のチップカーソルの譜面先頭からの位置grid, float BPM )\r
+ {\r
+ int key = -1;\r
+ foreach ( KeyValuePair<int, float> pair in this.mgr譜面管理者ref.dicBPx )\r
+ {\r
+ if ( pair.Value == BPM )\r
+ {\r
+ key = pair.Key;\r
+ break;\r
+ }\r
+ }\r
+ if ( key == -1 )\r
+ {\r
+ for ( int k = 1; k < 36 * 36; k++ )\r
+ {\r
+ if ( !this.mgr譜面管理者ref.dicBPx.ContainsKey( k ) )\r
+ {\r
+ this.mgr譜面管理者ref.dicBPx.Add( k, BPM );\r
+ key = k;\r
+ break;\r
+ }\r
+ }\r
+ }\r
+\r
+ this.n現在のチップカーソルがあるレーン番号0to = this.mgr譜面管理者ref.nレーン名に対応するレーン番号を返す( "BPM" );\r
+ this.n現在のチップカーソルの譜面先頭からの位置grid = _n現在のチップカーソルの譜面先頭からの位置grid;\r
+\r
+ this.mgr譜面管理者ref.tチップを配置または置換する(\r
+ this.n現在のチップカーソルがあるレーン番号0to,\r
+ this.n現在のチップカーソルの譜面先頭からの位置grid,\r
+ key,\r
+ BPM,\r
+ false\r
+ );\r
+ }\r
+\r
+ public void tBeatチップを配置する( int _n現在のチップカーソルの譜面先頭からの位置grid, int index, float fBeatTime, bool b裏として配置 )\r
+ {\r
+ this.n現在のチップカーソルがあるレーン番号0to = this.mgr譜面管理者ref.nレーン名に対応するレーン番号を返す( "BEAT" );\r
+ this.n現在のチップカーソルの譜面先頭からの位置grid = _n現在のチップカーソルの譜面先頭からの位置grid;\r
+\r
+ this.mgr譜面管理者ref.tチップを配置または置換する(\r
+ this.n現在のチップカーソルがあるレーン番号0to,\r
+ this.n現在のチップカーソルの譜面先頭からの位置grid,\r
+ index,\r
+ fBeatTime,\r
+ b裏として配置\r
+ );\r
+ }\r
+ public void tHHチップを配置する( int _n現在のチップカーソルの譜面先頭からの位置grid, int index, bool b裏として配置 )\r
+ {\r
+ this.n現在のチップカーソルがあるレーン番号0to = this.mgr譜面管理者ref.nレーン名に対応するレーン番号を返す( "HH" );\r
+ this.n現在のチップカーソルの譜面先頭からの位置grid = _n現在のチップカーソルの譜面先頭からの位置grid;\r
+\r
+ this.mgr譜面管理者ref.tチップを配置または置換する(\r
+ this.n現在のチップカーソルがあるレーン番号0to,\r
+ this.n現在のチップカーソルの譜面先頭からの位置grid,\r
+ index,\r
+ 0,\r
+ b裏として配置\r
+ );\r
+ }\r
private void tレーン割付のRedo( Cレーン割付用UndoRedo lur変更前, Cレーン割付用UndoRedo lur変更後 )\r
{\r
if( !lur変更前.b裏 )\r
C小節 c小節 = this.p譜面先頭からの位置gridを含む小節を返す( n譜面先頭からの位置grid );\r
if( c小節 != null )\r
{\r
- bool flag3;\r
+ bool b削除完了;\r
int num = n譜面先頭からの位置grid - this.n譜面先頭からみた小節先頭の位置gridを返す( c小節.n小節番号0to3599 );\r
this._Form.mgrUndoRedo管理者.tトランザクション記録を開始する();\r
+ int laneBEAT = this._Form.mgr譜面管理者.nレーン名に対応するレーン番号を返す( "BEAT" );\r
do\r
{\r
Cレーン cレーン = this.listレーン[ nレーン番号0to ];\r
- bool flag = ( ( cレーン.eレーン種別 == Cレーン.E種別.GtR ) || ( cレーン.eレーン種別 == Cレーン.E種別.GtG ) ) || ( cレーン.eレーン種別 == Cレーン.E種別.GtB );\r
- bool flag2 = ( ( cレーン.eレーン種別 == Cレーン.E種別.BsR ) || ( cレーン.eレーン種別 == Cレーン.E種別.BsG ) ) || ( cレーン.eレーン種別 == Cレーン.E種別.BsB );\r
- flag3 = true;\r
+ bool bRGBGuitar = ( ( cレーン.eレーン種別 == Cレーン.E種別.GtR ) || ( cレーン.eレーン種別 == Cレーン.E種別.GtG ) ) || ( cレーン.eレーン種別 == Cレーン.E種別.GtB );\r
+ bool bRGBBass = ( ( cレーン.eレーン種別 == Cレーン.E種別.BsR ) || ( cレーン.eレーン種別 == Cレーン.E種別.BsG ) ) || ( cレーン.eレーン種別 == Cレーン.E種別.BsB );\r
+ b削除完了 = true;\r
foreach( Cチップ cチップ in c小節.listチップ )\r
{\r
if( cチップ.n位置grid == num )\r
{\r
+ //cチップ.nチャンネル番号00toFF = 0xF3; // 裏チップにする (表は0xF8)\r
+ //cチップ.b裏 = true;\r
if( cチップ.nレーン番号0to == nレーン番号0to )\r
{\r
Cチップ cc = new Cチップ();\r
cc.tコピーfrom( cチップ );\r
Cチップ配置用UndoRedo redo = new Cチップ配置用UndoRedo( c小節.n小節番号0to3599, cc );\r
this._Form.mgrUndoRedo管理者.tノードを追加する( new CUndoRedoセル<Cチップ配置用UndoRedo>( null, new DGUndoを実行する<Cチップ配置用UndoRedo>( this.tチップ削除のUndo ), new DGRedoを実行する<Cチップ配置用UndoRedo>( this.tチップ削除のRedo ), redo, redo ) );\r
- c小節.listチップ.Remove( cチップ );\r
- flag3 = false;\r
+\r
+ #region [ チップオブジェクトを削除する。ただしBEATオブジェクトは削除禁止。裏に回すだけ。]\r
+ if ( cチップ.nレーン番号0to != laneBEAT )\r
+ {\r
+ c小節.listチップ.Remove( cチップ );\r
+ b削除完了 = false;\r
+ }\r
+ else\r
+ {\r
+ int p = c小節.listチップ.IndexOf( cチップ );\r
+ cチップ.nチャンネル番号00toFF = (cチップ.b裏)? 0xF3 : 0xF8; // 表裏反転\r
+ cチップ.b裏 = !cチップ.b裏;\r
+ c小節.listチップ[ p ] = cチップ;\r
+ }\r
this._Form.b未保存 = true;\r
+ #endregion\r
+\r
break;\r
}\r
- if( ( flag && ( this.listレーン[ cチップ.nレーン番号0to ].eレーン種別 == Cレーン.E種別.GtR ) ) && ( cチップ.n値・整数1to1295 == 2 ) )\r
+ if( ( bRGBGuitar && ( this.listレーン[ cチップ.nレーン番号0to ].eレーン種別 == Cレーン.E種別.GtR ) ) && ( cチップ.n値・整数1to1295 == 2 ) )\r
{\r
Cチップ cチップ3 = new Cチップ();\r
cチップ3.tコピーfrom( cチップ );\r
Cチップ配置用UndoRedo redo2 = new Cチップ配置用UndoRedo( c小節.n小節番号0to3599, cチップ3 );\r
this._Form.mgrUndoRedo管理者.tノードを追加する( new CUndoRedoセル<Cチップ配置用UndoRedo>( null, new DGUndoを実行する<Cチップ配置用UndoRedo>( this.tチップ削除のUndo ), new DGRedoを実行する<Cチップ配置用UndoRedo>( this.tチップ削除のRedo ), redo2, redo2 ) );\r
c小節.listチップ.Remove( cチップ );\r
- flag3 = false;\r
+ b削除完了 = false;\r
this._Form.b未保存 = true;\r
break;\r
}\r
- if( ( flag2 && ( this.listレーン[ cチップ.nレーン番号0to ].eレーン種別 == Cレーン.E種別.BsR ) ) && ( cチップ.n値・整数1to1295 == 2 ) )\r
+ if( ( bRGBBass && ( this.listレーン[ cチップ.nレーン番号0to ].eレーン種別 == Cレーン.E種別.BsR ) ) && ( cチップ.n値・整数1to1295 == 2 ) )\r
{\r
Cチップ cチップ4 = new Cチップ();\r
cチップ4.tコピーfrom( cチップ );\r
Cチップ配置用UndoRedo redo3 = new Cチップ配置用UndoRedo( c小節.n小節番号0to3599, cチップ4 );\r
this._Form.mgrUndoRedo管理者.tノードを追加する( new CUndoRedoセル<Cチップ配置用UndoRedo>( null, new DGUndoを実行する<Cチップ配置用UndoRedo>( this.tチップ削除のUndo ), new DGRedoを実行する<Cチップ配置用UndoRedo>( this.tチップ削除のRedo ), redo3, redo3 ) );\r
c小節.listチップ.Remove( cチップ );\r
- flag3 = false;\r
+ b削除完了 = false;\r
this._Form.b未保存 = true;\r
break;\r
}\r
}\r
}\r
}\r
- while( !flag3 );\r
+ while( !b削除完了 );\r
this._Form.tUndoRedo用GUIの有効・無効を設定する();\r
this._Form.mgrUndoRedo管理者.tトランザクション記録を終了する();\r
}\r
int alpha = 0x19;\r
\r
this.listレーン.Add( new Cレーン( Cレーン.E種別.BPM, "BPM", 0x08, 0x03, true, Color.FromArgb( alpha, 160, 160, 160 ), 0, width, Cレーン.ELaneType.BPM, true ) );\r
+ this.listレーン.Add( new Cレーン( Cレーン.E種別.BEAT, "BEAT", 0xF8, 0xF3, true, Color.FromArgb( alpha, 160, 160, 160 ), 0, width, Cレーン.ELaneType.Beat, true ) );\r
\r
this.listレーン.Add( new Cレーン( Cレーン.E種別.WAV, "LC", 0x1a, 0x1a, true, Color.FromArgb( alpha, 0, 0xff, 0xff ), 0, width, Cレーン.ELaneType.Drums, true ) );\r
this.listレーン.Add( new Cレーン( Cレーン.E種別.WAV, "HH", 0x11, 0x18, false, Color.FromArgb( alpha, 0, 0xff, 0xff ), 0, width, Cレーン.ELaneType.Drums, true ) );\r
Cチップ.t表チップを描画する( g, rectangle, cチップ.f値・浮動小数, cレーン.col背景色 );\r
break;\r
\r
+ case Cレーン.E種別.BEAT:\r
+ Cチップ.t表チップを描画する( g, rectangle, cチップ.n値・整数1to1295, cレーン.col背景色, Cレーン.E種別.BEAT );\r
+ break;\r
+\r
default:\r
Cチップ.t表チップを描画する( g, rectangle, cチップ.n値・整数1to1295, cレーン.col背景色 );\r
break;\r
{\r
Cチップ.t裏チップを描画する( g, rectangle, cチップ.f値・浮動小数, cレーン.col背景色 );\r
}\r
+ else if ( cレーン.eレーン種別 == Cレーン.E種別.BEAT )\r
+ {\r
+ Cチップ.t裏チップを描画する( g, rectangle, cチップ.n値・整数1to1295, cレーン.col背景色, Cレーン.E種別.BEAT );\r
+ }\r
else\r
{\r
Cチップ.t裏チップを描画する( g, rectangle, cチップ.n値・整数1to1295, cレーン.col背景色 );\r
this._Form.t選択チップの有無に応じて編集用GUIの有効・無効を設定する();\r
this._Form.pictureBox譜面パネル.Refresh();\r
}\r
- public void tレーン上の全チップを選択する( int lane ) // #32134 2013.9.29 suggested by beatme\r
+ public void tレーン上の全チップを選択する( int lane )\r
{\r
+ tレーン上の全チップを選択する( lane, 0 );\r
+ }\r
+ public void tレーン上の全チップを選択する( int lane, int fromBAR ) // #32134 2013.9.29 suggested by beatme\r
+ { // fromBAR: 開始小節\r
// Debug.WriteLine( "laneno=" + lane + " " + this.mgr譜面管理者ref.listレーン[ lane ].strレーン名 );\r
\r
this._Form.mgrUndoRedo管理者.tトランザクション記録を開始する();\r
foreach ( KeyValuePair<int, C小節> pair in this.mgr譜面管理者ref.dic小節 )\r
{\r
C小節 c小節 = pair.Value;\r
+ if ( c小節.n小節番号0to3599 < fromBAR )\r
+ {\r
+ continue;\r
+ }\r
for ( int i = 0; i < c小節.listチップ.Count; i++ )\r
{\r
Cチップ cチップ = c小節.listチップ[ i ];\r
}\r
internal void MouseClick( MouseEventArgs e )\r
{\r
- if( e.Button == MouseButtons.Right )\r
+ if ( e.Button == MouseButtons.Right )\r
{\r
this._Form.t選択モードのコンテクストメニューを表示する( e.X, e.Y );\r
}\r
+ else\r
+ { // BEATレーンに限り、左クリックで裏表切り替え\r
+ if ( this.pt現在のドラッグ開始位置dot.X == e.X && this.pt現在のドラッグ開始位置dot.Y == e.Y )\r
+ {\r
+ int n現在のチップカーソルがあるレーン番号0to = this.mgr譜面管理者ref.nX座標dotが位置するレーン番号を返す( e.X );\r
+ if ( n現在のチップカーソルがあるレーン番号0to == this.mgr譜面管理者ref.nレーン名に対応するレーン番号を返す( "BEAT" ) )\r
+ {\r
+ t選択チップを表裏反転置換する( false );\r
+ }\r
+ }\r
+ }\r
}\r
internal void MouseDown( MouseEventArgs e )\r
{\r
}\r
private void t選択チップを表裏反転置換する()\r
{\r
+ t選択チップを表裏反転置換する( true );\r
+ }\r
+ private void t選択チップを表裏反転置換する( bool bShowResult )\r
+ {\r
int num = 0;\r
this._Form.mgrUndoRedo管理者.tトランザクション記録を開始する();\r
foreach( KeyValuePair<int, C小節> pair in this._Form.mgr譜面管理者.dic小節 )\r
{\r
this._Form.b未保存 = true;\r
this._Form.pictureBox譜面パネル.Refresh();\r
- MessageBox.Show( num + Resources.str個のチップを置換しましたMSG, Resources.str置換結果ダイアログのタイトル, MessageBoxButtons.OK, MessageBoxIcon.Asterisk, MessageBoxDefaultButton.Button1 );\r
+ if ( bShowResult )\r
+ {\r
+ MessageBox.Show( num + Resources.str個のチップを置換しましたMSG, Resources.str置換結果ダイアログのタイトル, MessageBoxButtons.OK, MessageBoxIcon.Asterisk, MessageBoxDefaultButton.Button1 );\r
+ }\r
}\r
}\r
private void t置換する・メイン()\r
<Compile Include="コード\05.DirectShow\CDirectShow.cs" />\r
<Compile Include="コード\05.DirectShow\CDStoWAVFileImage.cs" />\r
<Compile Include="コード\05.DirectShow\MemoryRenderer.cs" />\r
+ <Compile Include="コード\06.Tempo\CBeatDetect.cs" />\r
</ItemGroup>\r
<ItemGroup>\r
<EmbeddedResource Include="コード\01.フレームワーク\Properties\Resources.resx">\r
--- /dev/null
+using System;\r
+using System.Collections.Generic;\r
+using System.Text;\r
+using System.Diagnostics;\r
+using System.Threading;\r
+using Un4seen.Bass;\r
+//using Un4seen.BassAsio;\r
+//using Un4seen.BassWasapi;\r
+//using Un4seen.Bass.AddOn.Mix;\r
+using Un4seen.Bass.AddOn.Fx;\r
+\r
+namespace FDK\r
+{\r
+ public class CBeatDetect : IDisposable\r
+ {\r
+ public struct stBeatPos\r
+ {\r
+ public float fBeatTime;\r
+ public int n小節番号;\r
+ public int nGrid;\r
+ public int n小節内Grid;\r
+ public bool b無効; // \r
+ public bool bレーン表示する; // 未使用\r
+\r
+ public stBeatPos( float _fBeatTime, int _n小節番号, int _nGrid, int _n小節内Grid, bool _b無効, bool _bレーン表示する )\r
+ {\r
+ fBeatTime = _fBeatTime;\r
+ n小節番号 = _n小節番号;\r
+ nGrid = _nGrid;\r
+ n小節内Grid = _n小節内Grid;\r
+ b無効 = _b無効;\r
+ bレーン表示する= _bレーン表示する;\r
+ }\r
+ }\r
+\r
+ #region [ コンストラクタ ]\r
+ public CBeatDetect()\r
+ {\r
+ Initialize();\r
+ }\r
+ public CBeatDetect( string _filename )\r
+ {\r
+ this.filename = _filename;\r
+ Initialize();\r
+ }\r
+ #endregion\r
+ #region [ 初期化(コンストラクタから呼び出される) ]\r
+ private void Initialize()\r
+ {\r
+ if ( this.listBeatPositions == null )\r
+ {\r
+ this.listBeatPositions = new List<stBeatPos>();\r
+ }\r
+\r
+ #region [ BASS registration ]\r
+ // BASS.NET ユーザ登録(BASSスプラッシュが非表示になる)。\r
+\r
+ BassNet.Registration( "dtx2013@gmail.com", "2X9181017152222" );\r
+ #endregion\r
+ #region [ BASS Version Check ]\r
+ // BASS のバージョンチェック。\r
+ int nBASSVersion = Utils.HighWord( Bass.BASS_GetVersion() );\r
+ if ( nBASSVersion != Bass.BASSVERSION )\r
+ throw new DllNotFoundException( string.Format( "bass.dll のバージョンが異なります({0})。このプログラムはバージョン{1}で動作します。", nBASSVersion, Bass.BASSVERSION ) );\r
+\r
+ int nBASSFXVersion = Utils.HighWord( BassFx.BASS_FX_GetVersion() );\r
+ if ( nBASSFXVersion != BassFx.BASSFXVERSION )\r
+ throw new DllNotFoundException( string.Format( "bass_fx.dll のバージョンが異なります({0})。このプログラムはバージョン{1}で動作します。", nBASSFXVersion, BassFx.BASSFXVERSION ) );\r
+ #endregion\r
+\r
+ #region [ BASS の設定。]\r
+ //this.bIsBASSFree = true;\r
+ //Debug.Assert( Bass.BASS_SetConfig( BASSConfig.BASS_CONFIG_UPDATEPERIOD, 0 ), // 0:BASSストリームの自動更新を行わない。(サウンド出力しないため)\r
+ // string.Format( "BASS_SetConfig() に失敗しました。[{0}", Bass.BASS_ErrorGetCode() ) );\r
+ #endregion\r
+ #region [ BASS の初期化。]\r
+ int nデバイス = 0; // 0:"no sound" … BASS からはデバイスへアクセスさせない。\r
+ int n周波数 = 44100; // 仮決め。lデバイス(≠ドライバ)がネイティブに対応している周波数であれば何でもいい?ようだ。いずれにしろBASSMXで自動的にリサンプリングされる。\r
+ if ( !Bass.BASS_Init( nデバイス, n周波数, BASSInit.BASS_DEVICE_DEFAULT, IntPtr.Zero ) )\r
+ throw new Exception( string.Format( "BASS の初期化に失敗しました。(BASS_Init)[{0}]", Bass.BASS_ErrorGetCode().ToString() ) );\r
+ #endregion\r
+\r
+ #region [ 指定されたサウンドファイルをBASSでオープンし、必要最小限の情報を取得する。]\r
+ //this.hBassStream = Bass.BASS_StreamCreateFile( this.filename, 0, 0, BASSFlag.BASS_STREAM_PRESCAN | BASSFlag.BASS_STREAM_DECODE );\r
+ this.hBassStream = Bass.BASS_StreamCreateFile( this.filename, 0, 0, BASSFlag.BASS_STREAM_DECODE );\r
+ if ( this.hBassStream == 0 )\r
+ throw new Exception( string.Format( "{0}: サウンドストリームの生成に失敗しました。(BASS_StreamCreateFile)[{1}]", filename, Bass.BASS_ErrorGetCode().ToString() ) );\r
+\r
+ this.nTotalBytes = Bass.BASS_ChannelGetLength( this.hBassStream );\r
+\r
+ this.nTotalSeconds = Bass.BASS_ChannelBytes2Seconds( this.hBassStream, nTotalBytes );\r
+ if ( !Bass.BASS_ChannelGetAttribute( this.hBassStream, BASSAttribute.BASS_ATTRIB_FREQ, ref fFreq ) )\r
+ {\r
+ string errmes = string.Format( "サウンドストリームの周波数取得に失敗しました。(BASS_ChannelGetAttribute)[{0}]", Bass.BASS_ErrorGetCode().ToString() );\r
+ Bass.BASS_Free();\r
+ throw new Exception( errmes );\r
+ }\r
+ #endregion\r
+ }\r
+ #endregion\r
+\r
+ /// <summary>\r
+ /// 曲全体のテンポを取得する\r
+ /// </summary>\r
+ /// <returns>テンポ値</returns>\r
+ /// <remarks>テンポ値の範囲は70-300</remarks>\r
+ public float GetTempo()\r
+ {\r
+ fTempo = BassFx.BASS_FX_BPM_DecodeGet(\r
+ this.hBassStream,\r
+ 0,\r
+ nTotalSeconds,\r
+ ( 300 << 16 ) + 70, // MAX BPM=320, MIN BPM=70\r
+ //0,\r
+ BASSFXBpm.BASS_FX_BPM_DEFAULT, //BASSFXBpm.BASS_FX_BPM_MULT2,\r
+ null,\r
+ IntPtr.Zero );\r
+ return fTempo;\r
+ }\r
+ /// <summary>\r
+ /// 曲の一部分のテンポを取得する\r
+ /// </summary>\r
+ /// <param name="startSec">開始位置</param>\r
+ /// <param name="endSec">終了位置</param>\r
+ /// <returns>テンポ値</returns>\r
+ /// <remarks>テンポ値の範囲は70-300</remarks>\r
+ public float GetTempo( double startSec, double endSec )\r
+ {\r
+ fTempo = BassFx.BASS_FX_BPM_DecodeGet(\r
+ this.hBassStream,\r
+ startSec,\r
+ endSec,\r
+ ( 300 << 16 ) + 70, // MAX BPM=320, MIN BPM=70\r
+ //0,\r
+ BASSFXBpm.BASS_FX_BPM_DEFAULT, //BASSFXBpm.BASS_FX_BPM_MULT2,\r
+ null,\r
+ IntPtr.Zero );\r
+ return fTempo;\r
+ }\r
+\r
+\r
+ /// <summary>\r
+ /// Beatの検出位置をListで返す\r
+ /// </summary>\r
+ /// <returns>Beat検出位置群</returns>\r
+ public List<stBeatPos> GetBeatPositions()\r
+ {\r
+ #region [ BeatPosition格納リストの初期化 ]\r
+ if ( this.listBeatPositions != null )\r
+ {\r
+ this.listBeatPositions.Clear();\r
+ }\r
+ else\r
+ {\r
+ this.listBeatPositions = new List<stBeatPos>();\r
+ }\r
+ #endregion\r
+\r
+ BPMBEATPROC _beatProc = new BPMBEATPROC( GetBeat_ProgressCallback );\r
+\r
+ bool ret = BassFx.BASS_FX_BPM_BeatDecodeGet(\r
+ this.hBassStream,\r
+ 0,\r
+ nTotalSeconds,\r
+ //0,\r
+ BASSFXBpm.BASS_FX_BPM_DEFAULT, //BASSFXBpm.BASS_FX_BPM_MULT2,\r
+ _beatProc,\r
+ IntPtr.Zero );\r
+\r
+ return this.listBeatPositions;\r
+ }\r
+\r
+ private void GetBeat_ProgressCallback( int channel, double beatpos, IntPtr user )\r
+ {\r
+ stBeatPos sbp = new stBeatPos(\r
+ (float) beatpos,\r
+ 0,\r
+ 0,\r
+ 0,\r
+ false,\r
+ true\r
+ ); \r
+ \r
+\r
+ listBeatPositions.Add( sbp );\r
+// Debug.WriteLine( "Beat at: " + beatpos.ToString() );\r
+ }\r
+\r
+\r
+ \r
+ \r
+ public void Dispose() // 使い終わったら必ずDispose()すること。BASSのリソースを握りっぱなしにすると、他の再生に不都合が生じるため。\r
+ {\r
+ BassFx.BASS_FX_BPM_Free( this.hBassStream );\r
+ Bass.BASS_StreamFree( this.hBassStream );\r
+ this.hBassStream = -1;\r
+ Bass.BASS_Free();\r
+ }\r
+ \r
+ // =============\r
+ private string filename = "";\r
+ private int hBassStream = -1;\r
+ private long nTotalBytes = 0;\r
+ private double nTotalSeconds = 0.0f;\r
+ private float fFreq = 0.0f;\r
+ private float fTempo;\r
+ private List<stBeatPos> listBeatPositions = null;\r
+ }\r
+}\r