<?xml version="1.0" encoding="utf-8"?>
<!-- Copyright (C) 2008 The Android Open Source Project

     Licensed under the Apache License, Version 2.0 (the "License");
     you may not use this file except in compliance with the License.
     You may obtain a copy of the License at

          http://www.apache.org/licenses/LICENSE-2.0

     Unless required by applicable law or agreed to in writing, software
     distributed under the License is distributed on an "AS IS" BASIS,
     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
     See the License for the specific language governing permissions and
     limitations under the License.
-->
<resources>
    <!-- The EditText for entries in the ContactEditFragment -->
    <item type="id" name="data"/>
    <item type="id" name="header_phones"/>
    <item type="id" name="dialog_sync_add"/>

    <!-- For vcard.ImportVCardActivity -->
    <item type="id" name="dialog_searching_vcard"/>
    <item type="id" name="dialog_sdcard_not_found"/>
    <item type="id" name="dialog_vcard_not_found"/>
    <item type="id" name="dialog_select_import_type"/>
    <item type="id" name="dialog_select_one_vcard"/>
    <item type="id" name="dialog_select_multiple_vcard"/>
    <item type="id" name="dialog_cache_vcard"/>
    <item type="id" name="dialog_io_exception"/>
    <item type="id" name="dialog_error_with_message"/>

    <!-- For vcard.CancelActivity -->
    <item type="id" name="dialog_cancel_confirmation"/>
    <item type="id" name="dialog_cancel_failed"/>

    <!-- For ContactDeletionInteraction -->
    <item type="id" name="dialog_delete_contact_confirmation"/>
    <item type="id" name="dialog_delete_contact_loader_id" />

    <!-- For ExportVCardActivity -->
    <item type="id" name="dialog_export_confirmation"/>
    <item type="id" name="dialog_exporting_vcard"/>
    <item type="id" name="dialog_fail_to_export_with_reason"/>

    <!-- For PhoneNumberInteraction -->
    <item type="id" name="dialog_phone_number_call_disambiguation"/>

    <!-- For PhoneNumberMessageSendInteraction -->
    <item type="id" name="dialog_phone_number_message_disambiguation"/>

    <!-- Dialog Manager Ids -->
    <item type="id" name="dialog_manager_id_1"/>
    <item type="id" name="dialog_manager_id_2"/>

    <!-- Loader ID for contact filters -->
    <item type="id" name="contact_list_filter_loader" />

    <!-- Dialog ID for the date picker in event (birthday) editors -->
    <item type="id" name="dialog_event_date_picker" />

    <!-- An ID to be used for contents of a custom dialog so that its state be preserved -->
    <item type="id" name="custom_dialog_content" />
</resources>
