blob: 9912e3cbeddda5a7712894c94f6a9e6d1a5d8e0c [file] [log] [blame]
[email protected]0cf64142013-10-19 13:52:391// 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
Haohao Wanga35a46f2019-05-07 23:47:025#ifndef CHROME_BROWSER_UI_TRANSLATE_TARGET_LANGUAGE_COMBOBOX_MODEL_H_
6#define CHROME_BROWSER_UI_TRANSLATE_TARGET_LANGUAGE_COMBOBOX_MODEL_H_
[email protected]0cf64142013-10-19 13:52:397
dcheng9603ab92016-04-08 04:17:328#include <memory>
Jan Wilken Dörriead587c32021-03-11 14:09:279#include <string>
dcheng9603ab92016-04-08 04:17:3210
Keishi Hattori0e45c022021-11-27 09:25:5211#include "base/memory/raw_ptr.h"
[email protected]0cf64142013-10-19 13:52:3912#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.
Haohao Wanga35a46f2019-05-07 23:47:0218class TargetLanguageComboboxModel : public ui::ComboboxModel {
[email protected]0cf64142013-10-19 13:52:3919 public:
Haohao Wanga35a46f2019-05-07 23:47:0220 TargetLanguageComboboxModel(int default_index, TranslateBubbleModel* model);
Peter Boström53c6c5952021-09-17 09:41:2621
22 TargetLanguageComboboxModel(const TargetLanguageComboboxModel&) = delete;
23 TargetLanguageComboboxModel& operator=(const TargetLanguageComboboxModel&) =
24 delete;
25
Haohao Wanga35a46f2019-05-07 23:47:0226 ~TargetLanguageComboboxModel() override;
[email protected]0cf64142013-10-19 13:52:3927
28 // Overridden from ui::ComboboxModel:
dcheng5dd5ff62014-10-21 12:42:3829 int GetItemCount() const override;
Jan Wilken Dörrie3f97e292021-03-11 18:07:1430 std::u16string GetItemAt(int index) const override;
dcheng5dd5ff62014-10-21 12:42:3831 int GetDefaultIndex() const override;
[email protected]0cf64142013-10-19 13:52:3932
33 private:
34 const int default_index_;
Keishi Hattori0e45c022021-11-27 09:25:52