Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(343)

Unified Diff: views/controls/combo_box.h

Issue 113991: Make Combobox portable (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src/
Patch Set: '' Created 11 years, 7 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « chrome/browser/views/select_profile_dialog.cc ('k') | views/controls/combo_box.cc » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: views/controls/combo_box.h
===================================================================
--- views/controls/combo_box.h (revision 17310)
+++ views/controls/combo_box.h (working copy)
@@ -1,80 +0,0 @@
-// Copyright (c) 2006-2008 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 VIEWS_CONTROLS_COMBO_BOX_H_
-#define VIEWS_CONTROLS_COMBO_BOX_H_
-
-#include "views/controls/native_control.h"
-
-namespace views {
-////////////////////////////////////////////////////////////////////////////////
-//
-// ComboBox is a basic non editable combo box. It is initialized from a simple
-// model.
-//
-////////////////////////////////////////////////////////////////////////////////
-class ComboBox : public NativeControl {
- public:
- class Model {
- public:
- // Return the number of items in the combo box.
- virtual int GetItemCount(ComboBox* source) = 0;
-
- // Return the string that should be used to represent a given item.
- virtual std::wstring GetItemAt(ComboBox* source, int index) = 0;
- };
-
- class Listener {
- public:
- // This is invoked once the selected item changed.
- virtual void ItemChanged(ComboBox* combo_box,
- int prev_index,
- int new_index) = 0;
- };
-
- // |model is not owned by the combo box.
- explicit ComboBox(Model* model);
- virtual ~ComboBox();
-
- // Register |listener| for item change events.
- void SetListener(Listener* listener);
-
- // Overridden from View.
- virtual gfx::Size GetPreferredSize();
- virtual bool OverrideAccelerator(const Accelerator& accelerator);
-
- // Overridden from NativeControl
- virtual HWND CreateNativeControl(HWND parent_container);
- virtual LRESULT OnCommand(UINT code, int id, HWND source);
- virtual LRESULT OnNotify(int w_param, LPNMHDR l_param);
-
- // Inform the combo box that its model changed.
- void ModelChanged();
-
- // Set / Get the selected item.
- void SetSelectedItem(int index);
- int GetSelectedItem();
-
- private:
- // Update a combo box from our model.
- void UpdateComboBoxFromModel(HWND hwnd);
-
- // Our model.
- Model* model_;
-
- // The current selection.
- int selected_item_;
-
- // Item change listener.
- Listener* listener_;
-
- // The min width, in pixels, for the text content.
- int content_width_;
-
- DISALLOW_EVIL_CONSTRUCTORS(ComboBox);
-};
-
-} // namespace views
-
-#endif // VIEWS_CONTROLS_COMBO_BOX_H_
« no previous file with comments | « chrome/browser/views/select_profile_dialog.cc ('k') | views/controls/combo_box.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698