1<?xml version="1.0" encoding="utf-8"?>
2<!--
3  ~ Copyright 2018 The Android Open Source Project
4  ~
5  ~ Licensed under the Apache License, Version 2.0 (the "License");
6  ~ you may not use this file except in compliance with the License.
7  ~ You may obtain a copy of the License at
8  ~
9  ~      http://www.apache.org/licenses/LICENSE-2.0
10  ~
11  ~ Unless required by applicable law or agreed to in writing, software
12  ~ distributed under the License is distributed on an "AS IS" BASIS,
13  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14  ~ See the License for the specific language governing permissions and
15  ~ limitations under the License.
16  -->
17
18<resources>
19    <attr name="icon" format="reference"/>
20    <attr name="mute_icon" format="reference"/>
21    <attr name="selectedIcon" format="reference"/>
22    <attr name="intent" format="string"/>
23    <attr name="longIntent" format="string"/>
24    <attr name="selectedAlpha" format="float" />
25    <attr name="unselectedAlpha" format="float" />
26
27    <!-- Custom attributes to configure hvac values -->
28    <declare-styleable name="AnimatedTemperatureView">
29        <attr name="hvacAreaId" format="integer"/>
30        <attr name="hvacPropertyId" format="integer"/>
31        <attr name="hvacTempFormat" format="string"/>
32        <!-- how far away the animations should center around -->
33        <attr name="hvacPivotOffset" format="dimension"/>
34        <attr name="hvacMinValue" format="float"/>
35        <attr name="hvacMaxValue" format="float"/>
36        <attr name="hvacMinText" format="string|reference"/>
37        <attr name="hvacMaxText" format="string|reference"/>
38        <attr name="android:gravity"/>
39        <attr name="android:minEms"/>
40        <attr name="android:textAppearance"/>
41    </declare-styleable>
42
43    <declare-styleable name="SeatTemperatureLevelButton">
44        <attr name="seatTemperatureType">
45            <enum name="heating" value="1"/>
46            <enum name="cooling" value="-1"/>
47        </attr>
48        <!-- List of drawables that will be shown when the seat heat level button is clicked.
49             This list should have exactly R.integer.hvac_seat_heat_level_count items.
50             The first item should have the "off" drawable. -->
51        <attr name="seatTemperatureIconDrawableList" format="reference"/>
52    </declare-styleable>
53
54    <!-- Allow for custom attribs to be added to a nav button -->
55    <declare-styleable name="CarSystemBarButton">
56        <!-- intent to start when button is click -->
57        <attr name="intent" />
58        <!-- intent to start when a long press has happened -->
59        <attr name="longIntent" />
60        <!-- start the intent as a broad cast instead of an activity if true-->
61        <attr name="broadcast" format="boolean"/>
62        <!-- Alpha value to used when in selected state.  Defaults 1f  -->
63        <attr name="selectedAlpha" />
64        <!-- Alpha value to used when in un-selected state.  Defaults 0.7f  -->
65        <attr name="unselectedAlpha" />
66        <!-- icon to be rendered when in selected state -->
67        <attr name="selectedIcon" />
68        <!-- icon to be rendered (drawable) -->
69        <attr name="icon"/>
70        <!-- categories that will be added as extras to the fired intents -->
71        <attr name="categories" format="string"/>
72        <!-- package names that will be added as extras to the fired intents -->
73        <attr name="packages" format="string" />
74        <!-- componentName names that will be used for detecting selected state -->
75        <attr name="componentNames" format="string" />
76        <!-- whether to highlight the button when selected. Defaults false -->
77        <attr name="showMoreWhenSelected" format="boolean" />
78        <!-- whether to highlight the button when selected. Defaults false -->
79        <attr name="highlightWhenSelected" format="boolean" />
80        <!-- whether to show the icon of the app currently associated this button's role. Only
81             relevant for buttons associated to specific roles (e.g.: AssistantButton).
82             Defaults false -->
83        <attr name="useDefaultAppIconForRole" format="boolean"/>
84        <!-- whether to clear the back stack when this button is pressed. Only relevant for buttons
85             that have declared an intent that isn't used as a broadcast
86             (i.e. CarSystemBarButton_intent is defined, CarSystemBarButton_broadcast is false).
87             Defaults false. -->
88        <attr name="clearBackStack" format="boolean"/>
89        <!-- whether to toggle selected state when button is clicked. Defaults false -->
90        <attr name="toggleSelected" format="boolean" />
91    </declare-styleable>
92
93    <!-- Custom attributes to configure HVAC values -->
94    <declare-styleable name="HvacView">
95        <attr name="hvacAreaId" format="integer"/>
96        <attr name="hvacPropertyId" format="integer"/>
97        <attr name="hvacTempFormat" format="string"/>
98        <attr name="hvacToggleOnButtonDrawable" format="reference"/>
99        <attr name="hvacToggleOffButtonDrawable" format="reference"/>
100        <!-- Whether the given HvacView must be turned off if the HVAC power is off.
101               Defaults to true. -->
102        <attr name="hvacTurnOffIfPowerOff" format="boolean" />
103        <!-- Whether the given HvacView must be turned off if the HVAC Auto mode is on.
104               Defaults to false. -->
105        <attr name="hvacTurnOffIfAutoOn" format="boolean" />
106    </declare-styleable>
107
108    <declare-styleable name="HvacIntegerToggleButton">
109        <attr name="invalidValue" format="integer"/>
110        <attr name="onValue" format="integer"/>
111        <attr name="offValue" format="integer"/>
112        <!-- Whether the given HvacView can be toggled off. This attribute can be useful when a
113             group of HvacToggleButtons should be used in a radio button like manner (i.e. only one
114             can be selected at a time, an option MUST be selected).
115               Defaults to false. -->
116        <attr name="preventToggleOff" format="boolean" />
117    </declare-styleable>
118
119    <declare-styleable name="carVolumeItems"/>
120    <declare-styleable name="carVolumeItems_item">
121        <!-- Align with AudioAttributes.USAGE_* -->
122        <attr name="usage">
123            <enum name="unknown" value="0"/>
124            <enum name="media" value="1"/>
125            <enum name="voice_communication" value="2"/>
126            <enum name="voice_communication_signalling" value="3"/>
127            <enum name="alarm" value="4"/>
128            <enum name="notification" value="5"/>
129            <enum name="notification_ringtone" value="6"/>
130            <enum name="notification_communication_request" value="7"/>
131            <enum name="notification_communication_instant" value="8"/>
132            <enum name="notification_communication_delayed" value="9"/>
133            <enum name="notification_event" value="10"/>
134            <enum name="assistance_accessibility" value="11"/>
135            <enum name="assistance_navigation_guidance" value="12"/>
136            <enum name="assistance_sonification" value="13"/>
137            <enum name="game" value="14"/>
138            <!-- hidden, do not use -->
139            <!-- enum name="virtual_source" value="15"/ -->
140            <enum name="assistant" value="16"/>
141            <enum name="call_assistant" value="17"/>
142            <enum name="emergency" value="1000"/>
143            <enum name="safety" value="1001"/>
144            <enum name="vehicle_status" value="1002"/>
145            <enum name="announcement" value="1003"/>
146        </attr>
147
148        <!-- Icon resource ids to render on UI -->
149        <attr name="icon" />
150        <attr name="mute_icon" />
151    </declare-styleable>
152
153    <declare-styleable name="SystemUIQCView">
154        <attr name="remoteQCProvider" format="string"/>
155        <attr name="localQCProvider" format="string"/>
156    </declare-styleable>
157
158    <declare-styleable name="QCFooterButton">
159        <attr name="intent" format="string"/>
160        <attr name="disableWhileDriving" format="boolean"/>
161    </declare-styleable>
162</resources>
163