| 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_
|
|
|