1// Copyright (c) 2011 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_VIEWS_AUTOCOMPLETE_AUTOCOMPLETE_RESULT_VIEW_MODEL_H_ 6#define CHROME_BROWSER_UI_VIEWS_AUTOCOMPLETE_AUTOCOMPLETE_RESULT_VIEW_MODEL_H_ 7#pragma once 8 9class SkBitmap; 10 11// An interface implemented by an object that provides data to populate 12// individual result views. 13class AutocompleteResultViewModel { 14 public: 15 // Returns true if the index is selected. 16 virtual bool IsSelectedIndex(size_t index) const = 0; 17 18 // Returns true if the index is hovered. 19 virtual bool IsHoveredIndex(size_t index) const = 0; 20 21 // If |index| is a match from an extension, returns the extension icon; 22 // otherwise returns NULL. 23 virtual const SkBitmap* GetIconIfExtensionMatch(size_t index) const = 0; 24}; 25 26#endif // CHROME_BROWSER_UI_VIEWS_AUTOCOMPLETE_AUTOCOMPLETE_RESULT_VIEW_MODEL_H_ 27