OSDN Git Service

#28200 Config.iniのSystem/EnableSystemMenuで、ALT+SPACEのメニュー表示を抑制するかどうかを設定できるようにした。
authoryyagi <yyagi@16f42ceb-6dc6-49c8-ba94-f2d53467949d>
Tue, 1 May 2012 15:15:29 +0000 (15:15 +0000)
committeryyagi <yyagi@16f42ceb-6dc6-49c8-ba94-f2d53467949d>
Tue, 1 May 2012 15:15:29 +0000 (15:15 +0000)
0で抑制する。1で抑制しない。初期設定は1。

git-svn-id: http://svn.osdn.jp/svnroot/dtxmania/trunk@380 16f42ceb-6dc6-49c8-ba94-f2d53467949d

DTXManiaプロジェクト/コード/全体/CConfigIni.cs
DTXManiaプロジェクト/コード/全体/CDTXMania.cs
FDK17プロジェクト/コード/01.フレームワーク/Core/GameWindow.cs

index de19f94..0bcc554 100644 (file)
@@ -481,6 +481,7 @@ namespace DTXMania
                public bool bIsAutoResultCapture;                       // #25399 2011.6.9 yyagi リザルト画像自動保存機能のON/OFF制御\r
                public int nPoliphonicSounds;                           // #28228 2012.5.1 yyagi レーン毎の最大同時発音数\r
                public bool bバッファ入力を行う;\r
+               public bool bIsEnabledSystemMenu;                       // #28200 2012.5.1 yyagi System Menuの使用可否切替\r
                public bool bConfigIniがないかDTXManiaのバージョンが異なる\r
                {\r
                        get\r
@@ -1014,6 +1015,7 @@ namespace DTXMania
                        this.bIsAllowedDoubleClickFullscreen = true;    // #26752 2011.11.26 ダブルクリックでのフルスクリーンモード移行を許可\r
                        this.eBDGroup = EBDGroup.打ち分ける;               // #27029 2012.1.4 from HHPedalとBassPedalのグルーピング\r
                        this.nPoliphonicSounds = 4;                                     // #28228 2012.5.1 yyagi レーン毎の最大同時発音数\r
+                       this.bIsEnabledSystemMenu = true;                       // #28200 2012.5.1 yyagi System Menuの利用可否切替(使用可)\r
                }\r
                public CConfigIni( string iniファイル名 )\r
                        : this()\r
@@ -1092,7 +1094,11 @@ namespace DTXMania
                        sw.WriteLine( "; ウインドウをダブルクリックした時にフルスクリーンに移行するか(0:移行しない,1:移行する)" );       // #26752 2011.11.27 yyagi\r
                        sw.WriteLine( "; Whether double click to go full screen mode or not." );                                        //\r
                        sw.WriteLine( "DoubleClickFullScreen={0}", this.bIsAllowedDoubleClickFullscreen? 1 : 0);        //\r
-                       sw.WriteLine();                                                                                         //\r
+                       sw.WriteLine();                                                                                                                                                         //\r
+                       sw.WriteLine( "; ALT+SPACEのメニュー表示を抑制するかどうか(0:抑制する 1:抑制しない)" );                // #28200 2012.5.1 yyagi\r
+                       sw.WriteLine( "; Whether ALT+SPACE menu would be masked or not.(0=masked 1=not masked)" );      //\r
+                       sw.WriteLine( "EnableSystemMenu={0}", this.bIsEnabledSystemMenu? 1 : 0 );                                       //\r
+                       sw.WriteLine();                                                                                                                                                         //\r
 \r
                        sw.WriteLine("; 垂直帰線同期(0:OFF,1:ON)");\r
                        sw.WriteLine( "VSyncWait={0}", this.b垂直帰線待ちを行う ? 1 : 0 );\r
@@ -1715,15 +1721,19 @@ namespace DTXMania
                                                                                                        this.nウインドウheight = SampleFramework.GameWindowSize.Height;\r
                                                                                                }\r
                                                                                        }\r
-                                                                                       else if( str3.Equals( "DoubleClickFullScreen" ) )       // #26752 2011.11.27 yyagi\r
+                                                                                       else if ( str3.Equals( "DoubleClickFullScreen" ) )      // #26752 2011.11.27 yyagi\r
                                                                                        {\r
                                                                                                this.bIsAllowedDoubleClickFullscreen = C変換.bONorOFF( str4[ 0 ] );\r
                                                                                        }\r
-                                                                                       else if( str3.Equals( "VSyncWait" ) )\r
+                                                                                       else if ( str3.Equals( "EnableSystemMenu" ) )           // #28200 2012.5.1 yyagi\r
+                                                                                       {\r
+                                                                                               this.bIsEnabledSystemMenu = C変換.bONorOFF( str4[ 0 ] );\r
+                                                                                       }\r
+                                                                                       else if ( str3.Equals( "VSyncWait" ) )\r
                                                                                        {\r
                                                                                                this.b垂直帰線待ちを行う = C変換.bONorOFF( str4[ 0 ] );\r
                                                                                        }\r
-                                                                                       else if( str3.Equals( "BackSleep" ) )           // #23568 2010.11.04 ikanick add\r
+                                                                                       else if( str3.Equals( "BackSleep" ) )                           // #23568 2010.11.04 ikanick add\r
                                                                                        {\r
                                                                                                this.n非フォーカス時スリープms = C変換.n値を文字列から取得して範囲内にちゃんと丸めて返す( str4, 0, 50, this.n非フォーカス時スリープms );\r
                                                                                        }\r
index 2a46672..f360d3c 100644 (file)
@@ -1360,6 +1360,7 @@ for (int i = 0; i < 3; i++) {
                                try\r
                                {\r
                                        ConfigIni.tファイルから読み込み( path );\r
+                                       this.Window.EnableSystemMenu = CDTXMania.ConfigIni.bIsEnabledSystemMenu;        // #28200 2011.5.1 yyagi\r
                                }\r
                                catch\r
                                {\r
index fb69c5e..7ba887c 100644 (file)
@@ -112,6 +112,16 @@ namespace SampleFramework
             get { return maximized; }\r
         }\r
 \r
+               /// <summary>\r
+               /// Gets or sets a value indicating whether System Menu is enabled.\r
+               /// </summary>\r
+               /// <value><c>true</c> if System Menu is enabled; otherwise, <c>false</c>.</value>\r
+               public bool EnableSystemMenu                    // #28200 2012.5.1 yyagi\r
+               {\r
+                       get;\r
+                       set;\r
+               }\r
+\r
                private Screen m_Screen;\r
         /// <summary>\r
         /// Gets the screen on which the window resides.\r
@@ -381,13 +391,13 @@ namespace SampleFramework
                         return;\r
                     }\r
                                }\r
-//                             #region Disable system menu\r
-//                             if ( ( m.WParam.ToInt32() & 0xFFFF ) == 0xF100 )        // SC_KEYMENU\r
-//                             {\r
-//                                     m.Result = IntPtr.Zero;\r
-//                                     return;\r
-//                             }\r
-//                             #endregion\r
+                               #region #28200 2012.5.1 yyagi: Disable system menu\r
+                               if ( ( m.WParam.ToInt32() & 0xFFFF ) == 0xF100 && !EnableSystemMenu )   // SC_KEYMENU\r
+                               {\r
+                                       m.Result = IntPtr.Zero;\r
+                                       return;\r
+                               }\r
+                               #endregion\r
                                #region #23510 2010.11.13 yyagi: reset to 640x480\r
                                if ((m.WParam.ToInt32() & 0xFFFF) == MENU_VIEW)         \r
                                {\r