From: h677 Date: Sat, 29 Jul 2006 00:08:08 +0000 (+0000) Subject: ツールバーの入力エリアで標準のコンテキストメニューが表示されない不具合の修正 X-Git-Tag: v1_64_1_820~375 X-Git-Url: http://git.osdn.net/view?a=commitdiff_plain;h=725651e42a07054dc8be9e8e11698f1e9aa597af;p=gikonavigoeson%2Fgikonavi.git ツールバーの入力エリアで標準のコンテキストメニューが表示されない不具合の修正 --- diff --git a/Giko.dfm b/Giko.dfm index ac13f76..4b8d7f5 100644 --- a/Giko.dfm +++ b/Giko.dfm @@ -1,5 +1,5 @@ object GikoForm: TGikoForm - Left = 422 + Left = 241 Top = 68 HorzScrollBar.Visible = False VertScrollBar.Visible = False @@ -159,7 +159,7 @@ object GikoForm: TGikoForm object ToolBar1: TToolBar Left = 2 Top = 4 - Width = 16 + Width = 15 Height = 18 Align = alNone AutoSize = True @@ -346,7 +346,7 @@ object GikoForm: TGikoForm end> EdgeBorders = [ebLeft, ebTop, ebRight] EdgeInner = esLowered - PopupMenu = MainCoolBarPopupMenu + OnContextPopup = MainCoolBarContextPopup OnBandInfo = ListCoolBarBandInfo OnChevronClick = ListCoolBarChevronClick object ListToolBar: TToolBar @@ -573,7 +573,7 @@ object GikoForm: TGikoForm end> EdgeBorders = [ebLeft, ebTop, ebRight] EdgeInner = esLowered - PopupMenu = MainCoolBarPopupMenu + OnContextPopup = MainCoolBarContextPopup OnBandInfo = BrowserCoolBarBandInfo OnChevronClick = BrowserCoolBarChevronClick object BrowserToolBar: TToolBar @@ -910,7 +910,7 @@ object GikoForm: TGikoForm Text = #12522#12531#12463 Width = 735 end> - PopupMenu = MainCoolBarPopupMenu + OnContextPopup = MainCoolBarContextPopup OnResize = MainCoolBarResize OnBandInfo = MainCoolBarBandInfo OnChevronClick = MainCoolBarChevronClick @@ -971,7 +971,7 @@ object GikoForm: TGikoForm OnResize = AddressToolBarResize object AddressComboBox: TComboBox Left = 0 - Top = 1 + Top = 0 Width = 177 Height = 20 DropDownCount = 20 @@ -5376,7 +5376,6 @@ object GikoForm: TGikoForm end end object MainCoolBarPopupMenu: TPopupMenu - OnPopup = MainCoolBarPopupMenuPopup Left = 100 Top = 404 object StdToolBarVisiblePMenu: TMenuItem diff --git a/Giko.pas b/Giko.pas index c4e2008..6a905a3 100644 --- a/Giko.pas +++ b/Giko.pas @@ -543,7 +543,8 @@ type procedure TreeViewMouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer); procedure GetResURLMenuClick(Sender: TObject); - procedure MainCoolBarPopupMenuPopup(Sender: TObject); + procedure MainCoolBarContextPopup(Sender: TObject; MousePos: TPoint; + var Handled: Boolean); private { Private éŒ¾ } FEnabledCloseButton: Boolean; @@ -7670,25 +7671,28 @@ begin ListView.Refresh; end; end; -//! CoolBar‚̃|ƒbƒvƒAƒbƒv‘Oˆ— -procedure TGikoForm.MainCoolBarPopupMenuPopup(Sender: TObject); + +procedure TGikoForm.MainCoolBarContextPopup(Sender: TObject; + MousePos: TPoint; var Handled: Boolean); var - compPopup : TComponent; + pos : TPoint; + coolBar: TGikoCoolBar; begin - FToolBarSettingSender := tssNone; - if (Sender <> nil) and (Sender is TPopupMenu) then begin - // ŒÄ‚яo‚µŒ³CoolBar‚É‚æ‚Á‚āCFToolBarSettingSender - // ‚Ì’l‚ð•ÏX‚·‚é - compPopup := TPopupMenu(Sender).PopupComponent; - if (compPopup <> nil) then begin - if (compPopup = MainCoolBar) then begin - FToolBarSettingSender := tssMain; - end else if (compPopup = ListCoolBar) then begin - FToolBarSettingSender := tssList; - end else if (compPopup = BrowserCoolBar) then begin - FToolBarSettingSender := tssBrowser; - end; + Handled := False; + if (Sender <> nil) and (Sender is TGikoCoolBar) then begin + coolBar := TGikoCoolBar(Sender); + if (coolBar = MainCoolBar) then begin + FToolBarSettingSender := tssMain; + end else if (coolBar = ListCoolBar) then begin + FToolBarSettingSender := tssList; + end else if (coolBar = BrowserCoolBar) then begin + FToolBarSettingSender := tssBrowser; + end else begin + FToolBarSettingSender := tssNone; end; + pos := coolBar.ClientToScreen( MousePos ); + MainCoolBarPopupMenu.Popup( pos.X, pos.Y ); + Handled := True; end; end; diff --git a/gikoNavi.res b/gikoNavi.res index 6fb2987..10b290b 100644 Binary files a/gikoNavi.res and b/gikoNavi.res differ