OSDN Git Service

AppliStation-GUI,ヘッダ部を右クリックしたときの動作を変更し、コラム表示などのメニューが表示されるようにした。
[applistation/AppliStation.git] / AppliStation / PackageListViewForm.cs
index 4a5b13d..9433fab 100644 (file)
@@ -521,8 +521,22 @@ namespace AppliStation
                        bool selectionIsOnlyOne = packageListView.SelectedItems.Count == 1;\r
                        bool hasSelection = packageListView.SelectedItems.Count > 0;\r
                        \r
-                       // インストール先のフォルダの設定\r
-                       updateLauncherMenuItem(installedDirectoryToolStripMenuItem);\r
+                       updateSelectedPackages();\r
+                       \r
+                       if (packageListView.View == View.Details) {\r
+                               // ヘッダ部がクリックされたとき、パッケージが選択されていないものとして扱って処理をする。\r
+                               int headerHeight = AppliStation.Util.NativeMethods.ColumnHeader_GetSize(packageListView).Height;\r
+                               if (packageListView.PointToClient(packageListContextMenuStrip.Location).Y < headerHeight) {\r
+                                       selectionIsOnlyOne = hasSelection = false;\r
+                                       installToolStripMenuItem.Visible = false;\r
+                                       uninstallToolStripMenuItem.Visible = false;\r
+                               }\r
+                       }\r
+                       \r
+                       if (selectionIsOnlyOne) {\r
+                               // インストール先のフォルダの設定\r
+                               updateLauncherMenuItem(installedDirectoryToolStripMenuItem);\r
+                       }\r
                        \r
                        packageListContextMenuStripSeparator.Visible = selectionIsOnlyOne;\r
                        webResourceToolStripMenuItem.Visible = selectionIsOnlyOne;\r