OSDN Git Service

CoolBar上でのコンテキストメニューを呼び出す処理を変更
authorh677 <h677>
Thu, 27 Jul 2006 15:52:37 +0000 (15:52 +0000)
committerh677 <h677>
Thu, 27 Jul 2006 15:52:37 +0000 (15:52 +0000)
Giko.dfm
Giko.pas

index 4d3ef06..ac13f76 100644 (file)
--- a/Giko.dfm
+++ b/Giko.dfm
@@ -346,7 +346,7 @@ object GikoForm: TGikoForm
               end>
             EdgeBorders = [ebLeft, ebTop, ebRight]
             EdgeInner = esLowered
-            OnContextPopup = ListCoolBarContextPopup
+            PopupMenu = MainCoolBarPopupMenu
             OnBandInfo = ListCoolBarBandInfo
             OnChevronClick = ListCoolBarChevronClick
             object ListToolBar: TToolBar
@@ -573,7 +573,7 @@ object GikoForm: TGikoForm
               end>
             EdgeBorders = [ebLeft, ebTop, ebRight]
             EdgeInner = esLowered
-            OnContextPopup = BrowserCoolBarContextPopup
+            PopupMenu = MainCoolBarPopupMenu
             OnBandInfo = BrowserCoolBarBandInfo
             OnChevronClick = BrowserCoolBarChevronClick
             object BrowserToolBar: TToolBar
@@ -910,7 +910,7 @@ object GikoForm: TGikoForm
             Text = #12522#12531#12463
             Width = 735
           end>
-        OnContextPopup = MainCoolBarContextPopup
+        PopupMenu = MainCoolBarPopupMenu
         OnResize = MainCoolBarResize
         OnBandInfo = MainCoolBarBandInfo
         OnChevronClick = MainCoolBarChevronClick
@@ -5376,6 +5376,7 @@ object GikoForm: TGikoForm
     end
   end
   object MainCoolBarPopupMenu: TPopupMenu
+    OnPopup = MainCoolBarPopupMenuPopup
     Left = 100
     Top = 404
     object StdToolBarVisiblePMenu: TMenuItem
index 6f2d43f..f6530ea 100644 (file)
--- a/Giko.pas
+++ b/Giko.pas
@@ -508,12 +508,6 @@ type
                        State: TDragState; var Accept: Boolean);
                procedure FavoriteTreeViewEndDrag(Sender, Target: TObject; X,
                        Y: Integer);
-               procedure ListCoolBarContextPopup(Sender: TObject; MousePos: TPoint;
-                       var Handled: Boolean);
-               procedure MainCoolBarContextPopup(Sender: TObject; MousePos: TPoint;
-                       var Handled: Boolean);
-               procedure BrowserCoolBarContextPopup(Sender: TObject; MousePos: TPoint;
-                       var Handled: Boolean);
                procedure FavoriteTreeBrowseBoardPopupMenuClick(Sender: TObject);
     procedure BrowserTabContextPopup(Sender: TObject; MousePos: TPoint;
       var Handled: Boolean);
@@ -549,6 +543,7 @@ type
     procedure TreeViewMouseDown(Sender: TObject; Button: TMouseButton;
       Shift: TShiftState; X, Y: Integer);
     procedure GetResURLMenuClick(Sender: TObject);
+    procedure MainCoolBarPopupMenuPopup(Sender: TObject);
        private
                { Private \90é\8c¾ }
                FEnabledCloseButton: Boolean;
@@ -6401,35 +6396,6 @@ begin
 
 end;
 
-procedure TGikoForm.ListCoolBarContextPopup(Sender: TObject;
-       MousePos: TPoint; var Handled: Boolean);
-begin
-
-       FToolBarSettingSender := tssList;
-       MousePos := ListCoolBar.ClientToScreen( MousePos );
-       MainCoolBarPopupMenu.Popup( MousePos.X, MousePos.Y );
-
-end;
-
-procedure TGikoForm.MainCoolBarContextPopup(Sender: TObject;
-       MousePos: TPoint; var Handled: Boolean);
-begin
-
-       FToolBarSettingSender := tssMain;
-       MousePos := MainCoolBar.ClientToScreen( MousePos );
-       MainCoolBarPopupMenu.Popup( MousePos.X, MousePos.Y );
-
-end;
-
-procedure TGikoForm.BrowserCoolBarContextPopup(Sender: TObject;
-       MousePos: TPoint; var Handled: Boolean);
-begin
-
-       FToolBarSettingSender := tssBrowser;
-       MousePos := BrowserCoolBar.ClientToScreen( MousePos );
-       MainCoolBarPopupMenu.Popup( MousePos.X, MousePos.Y );
-
-end;
 procedure TGikoForm.SetListViewBackGroundColor(value: TColor);
 begin
        if FListViewBackGroundColor <> value then begin
@@ -7793,6 +7759,27 @@ begin
                ListView.Refresh;
        end;
 end;
+//! CoolBar\82Ì\83|\83b\83v\83A\83b\83v\91O\8f\88\97\9d
+procedure TGikoForm.MainCoolBarPopupMenuPopup(Sender: TObject);
+var
+    compPopup : TComponent;
+begin
+    FToolBarSettingSender := tssNone;
+    if (Sender <> nil) and (Sender is TPopupMenu) then begin
+        // \8cÄ\82Ñ\8fo\82µ\8c³CoolBar\82É\82æ\82Á\82Ä\81CFToolBarSettingSender
+        // \82Ì\92l\82ð\95Ï\8dX\82·\82é
+        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;
+        end;
+    end;
+end;
 
 initialization
                                OleInitialize(nil);