1// Copyright 2013 The Chromium Authors. All rights reserved.
2// Use of this source code is governed by a BSD-style license that can be
3// found in the LICENSE file.
4
5#ifndef CHROME_BROWSER_UI_TRANSLATE_LANGUAGE_COMBOBOX_MODEL_H_
6#define CHROME_BROWSER_UI_TRANSLATE_LANGUAGE_COMBOBOX_MODEL_H_
7
8#include "base/basictypes.h"
9#include "base/compiler_specific.h"
10#include "base/memory/scoped_ptr.h"
11#include "base/strings/string16.h"
12#include "ui/base/models/combobox_model.h"
13
14class TranslateBubbleModel;
15
16// The model for the combobox to select a language. This is used for Translate
17// user interface to select language.
18class LanguageComboboxModel : public ui::ComboboxModel {
19 public:
20  LanguageComboboxModel(int default_index,
21                        TranslateBubbleModel* model);
22  virtual ~LanguageComboboxModel();
23
24  // Overridden from ui::ComboboxModel:
25  virtual int GetItemCount() const OVERRIDE;
26  virtual base::string16 GetItemAt(int index) OVERRIDE;
27  virtual int GetDefaultIndex() const OVERRIDE;
28
29 private:
30  const int default_index_;
31  TranslateBubbleModel* model_;
32
33  DISALLOW_COPY_AND_ASSIGN(LanguageComboboxModel);
34};
35
36#endif  // CHROME_BROWSER_UI_TRANSLATE_LANGUAGE_COMBOBOX_MODEL_H_
37