172a454cd3513ac24fbdd0e0cb9ad70b86a99b801Kristian Monsen// Copyright (c) 2011 The Chromium Authors. All rights reserved. 23345a6884c488ff3a535c2c9acdd33d74b37e311Iain Merrick// Use of this source code is governed by a BSD-style license that can be 33345a6884c488ff3a535c2c9acdd33d74b37e311Iain Merrick// found in the LICENSE file. 43345a6884c488ff3a535c2c9acdd33d74b37e311Iain Merrick 53345a6884c488ff3a535c2c9acdd33d74b37e311Iain Merrick#ifndef CHROME_BROWSER_AUTOFILL_SELECT_CONTROL_HANDLER_H_ 63345a6884c488ff3a535c2c9acdd33d74b37e311Iain Merrick#define CHROME_BROWSER_AUTOFILL_SELECT_CONTROL_HANDLER_H_ 73345a6884c488ff3a535c2c9acdd33d74b37e311Iain Merrick#pragma once 83345a6884c488ff3a535c2c9acdd33d74b37e311Iain Merrick 9ddb351dbec246cf1fab5ec20d2d5520909041de1Kristian Monsen#include "chrome/browser/autofill/field_types.h" 10ddb351dbec246cf1fab5ec20d2d5520909041de1Kristian Monsen#include "base/string16.h" 113345a6884c488ff3a535c2c9acdd33d74b37e311Iain Merrick 123345a6884c488ff3a535c2c9acdd33d74b37e311Iain Merrickclass FormGroup; 133345a6884c488ff3a535c2c9acdd33d74b37e311Iain Merrick 143345a6884c488ff3a535c2c9acdd33d74b37e311Iain Merricknamespace webkit_glue { 15ddb351dbec246cf1fab5ec20d2d5520909041de1Kristian Monsenstruct FormField; 163345a6884c488ff3a535c2c9acdd33d74b37e311Iain Merrick} // namespace webkit_glue 173345a6884c488ff3a535c2c9acdd33d74b37e311Iain Merrick 183345a6884c488ff3a535c2c9acdd33d74b37e311Iain Merricknamespace autofill { 193345a6884c488ff3a535c2c9acdd33d74b37e311Iain Merrick 203345a6884c488ff3a535c2c9acdd33d74b37e311Iain Merrick// Fills a select-one control with the appropriate value from |form_group|. 213345a6884c488ff3a535c2c9acdd33d74b37e311Iain Merrick// Finds the matching value for field types that we know contain different 223345a6884c488ff3a535c2c9acdd33d74b37e311Iain Merrick// variations of a value, e.g., (tx, TX, Texas) or credit card expiration 233345a6884c488ff3a535c2c9acdd33d74b37e311Iain Merrick// months, e.g., (04, April). 2472a454cd3513ac24fbdd0e0cb9ad70b86a99b801Kristian Monsenvoid FillSelectControl(const FormGroup& form_group, 25ddb351dbec246cf1fab5ec20d2d5520909041de1Kristian Monsen AutofillFieldType type, 263345a6884c488ff3a535c2c9acdd33d74b37e311Iain Merrick webkit_glue::FormField* field); 273345a6884c488ff3a535c2c9acdd33d74b37e311Iain Merrick 28ddb351dbec246cf1fab5ec20d2d5520909041de1Kristian Monsen// Returns true if |value| is a valid US state name or abbreviation. It is case 29ddb351dbec246cf1fab5ec20d2d5520909041de1Kristian Monsen// insensitive. Valid for US states only. 30ddb351dbec246cf1fab5ec20d2d5520909041de1Kristian Monsenbool IsValidState(const string16& value); 31ddb351dbec246cf1fab5ec20d2d5520909041de1Kristian Monsen 323345a6884c488ff3a535c2c9acdd33d74b37e311Iain Merrick} // namespace autofill 333345a6884c488ff3a535c2c9acdd33d74b37e311Iain Merrick 343345a6884c488ff3a535c2c9acdd33d74b37e311Iain Merrick#endif // CHROME_BROWSER_AUTOFILL_SELECT_CONTROL_HANDLER_H_ 35