Chromium Code Reviews| Index: chrome/browser/ui/gtk/tabs/tab_strip_menu_controller.h |
| diff --git a/chrome/browser/ui/gtk/tabs/tab_strip_menu_controller.h b/chrome/browser/ui/gtk/tabs/tab_strip_menu_controller.h |
| new file mode 100644 |
| index 0000000000000000000000000000000000000000..f0825d956702bcce9b2d0abbcf5d4a0c2d268e10 |
| --- /dev/null |
| +++ b/chrome/browser/ui/gtk/tabs/tab_strip_menu_controller.h |
| @@ -0,0 +1,54 @@ |
| +// Copyright (c) 2011 The Chromium Authors. All rights reserved. |
| +// Use of this source code is governed by a BSD-style license that can be |
| +// found in the LICENSE file. |
| + |
| +#ifndef CHROME_BROWSER_UI_GTK_TABS_TAB_STRIP_MENU_CONTROLLER_H_ |
| +#define CHROME_BROWSER_UI_GTK_TABS_TAB_STRIP_MENU_CONTROLLER_H_ |
| + |
| +#include "base/memory/scoped_ptr.h" |
| +#include "chrome/browser/ui/gtk/menu_gtk.h" |
| +#include "chrome/browser/ui/tabs/tab_menu_model.h" |
| + |
| +class TabGtk; |
| +class TabStripModel; |
| + |
| +namespace gfx { |
| +class Point; |
| +} |
| + |
| +namespace ui { |
| +class Accelerator; |
| +} |
| + |
| +class TabStripMenuController : public ui::SimpleMenuModel::Delegate, |
|
James Hawkins
2011/05/12 00:53:54
Document the class.
dpapad
2011/05/12 16:37:08
Done.
|
| + public MenuGtk::Delegate { |
| + public: |
| + TabStripMenuController(TabGtk* tab, TabStripModel* model, int index); |
|
James Hawkins
2011/05/12 00:53:54
Document the parameters.
dpapad
2011/05/12 16:37:08
Done.
|
| + virtual ~TabStripMenuController() {} |
| + void RunMenu(const gfx::Point& point, guint32 event_time); |
| + void Cancel(); |
| + |
| + private: |
| + // Overridden from ui::SimpleMenuModel::Delegate: |
| + virtual bool IsCommandIdChecked(int command_id) const; |
| + virtual bool IsCommandIdEnabled(int command_id) const; |
| + virtual bool GetAcceleratorForCommandId(int command_id, |
| + ui::Accelerator* accelerator); |
| + virtual void ExecuteCommand(int command_id); |
| + |
| + GtkWidget* GetImageForCommandId(int command_id) const; |
|
James Hawkins
2011/05/12 00:53:54
// Overridden from ...
dpapad
2011/05/12 16:37:08
Done.
|
| + |
| + // The context menu. |
| + scoped_ptr<MenuGtk> menu_; |
| + |
| + // The Tab the context menu was brought up for. Set to NULL when the menu |
| + // is canceled. |
| + TabGtk* tab_; |
|
James Hawkins
2011/05/12 00:53:54
Document ownership.
dpapad
2011/05/12 16:37:08
No ownership comment implies that it is not owned
James Hawkins
2011/05/12 16:49:48
No. "Absence of evidence..." The correct documenta
dpapad
2011/05/12 17:21:49
Done.
|
| + |
| + // The model. |
| + TabMenuModel model_; |
| + |
| + DISALLOW_COPY_AND_ASSIGN(TabStripMenuController); |
| +}; |
| + |
| +#endif // CHROME_BROWSER_UI_GTK_TABS_TAB_STRIP_MENU_CONTROLLER_H_ |