OSDN Git Service

AppliStation-GUI,公式サイトのメニューのツールチップテキストとして飛び先URLを表示するようにした。
[applistation/AppliStation.git] / AppliStation / PackageListViewForm.cs
index d6548cf..3c01042 100644 (file)
@@ -560,7 +560,15 @@ namespace AppliStation
                void WebResourceCommonContextMenuStripOpening(object sender, System.ComponentModel.CancelEventArgs e)\r
                {\r
                        Package pkg = packageListView.SelectedPackage;\r
-                       webOfficialMenuItem.Enabled = (pkg != null && pkg.Url != null && !string.IsNullOrEmpty(pkg.Url.Href));\r
+                       \r
+                       if (pkg != null && pkg.Url != null && !string.IsNullOrEmpty(pkg.Url.Href)) {\r
+                               webOfficialMenuItem.Enabled = true;\r
+                               webOfficialMenuItem.ToolTipText = pkg.Url.Href;\r
+                       } else {\r
+                               webOfficialMenuItem.Enabled = false;\r
+                               webOfficialMenuItem.ToolTipText = null;\r
+                       }\r
+                       \r
                        // webGoogleSearchMenuItem always active.\r
                }\r
                \r
@@ -651,6 +659,7 @@ namespace AppliStation
                void ColumnCommonToolStripMenuItemClick(object sender, EventArgs e)\r
                {\r
                        packageListView.BeginUpdate();\r
+                       ColumnHeader sortcolumn = packageListView.SortColumn;\r
                        \r
                        // 列の追加と削除\r
                        foreach (ToolStripItem item in columnToolStripMenuItem.DropDownItems) {\r
@@ -661,6 +670,9 @@ namespace AppliStation
                                        foreach (ColumnHeader header in packageListView.Columns) {\r
                                                if (header.Tag == menu.Tag) {\r
                                                        exists = true;\r
+                                                       if (sortcolumn == header) {\r
+                                                               packageListView.SortColumn = sortcolumn = null;\r
+                                                       }\r
                                                        if (menu.Checked == false) {\r
                                                                packageListView.Columns.Remove(header);\r
                                                        }\r
@@ -678,6 +690,8 @@ namespace AppliStation
                                }\r
                        }\r
                        \r
+                       AppliStation.Util.NativeMethods.ColumnHeader_SetSortState(packageListView, (sortcolumn != null)? sortcolumn.Index : -1, SortOrder.None);\r
+                       \r
                        packageListView.UpdateItems();\r
                        \r
                        packageListView.EndUpdate();\r