/* Ċ Ġ* ĠCopyright Ġ 2 0 2 0 Ġ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 . Ċ Ġ*/ Ċ Ċ package Ġandroidx . we ar . watch face . style Ċ Ċ import Ġandroid . graphics . drawable . Icon Ċ import Ġandroid . os . Bundle Ċ Ċ /** ĠA ĠList Style Category Ġrepresents Ġa Ġcategory Ġwith Ġoptions Ġselected Ġfrom Ġa ĠList . Ġ*/ Ċ open Ġclass ĠList User Style Category Ġ: ĊĠĠĠ ĠUser Style Category Ġ{ ĊĊĠĠĠ Ġinternal Ġcompanion Ġobject Ġ{ ĊĠĠĠĠĠĠĠ Ġinternal Ġconst Ġval ĠC ATEG ORY _ TYPE Ġ= Ġ" List User Style Category " ĊĠĠĠĠĠĠĠ Ġinternal Ġconst Ġval ĠOPTION _ TYPE Ġ= Ġ" List Option " ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Jvm Over loads ĊĠĠĠ Ġconstructor Ġ( ĊĠĠĠĠĠĠĠ Ġ/** ĠIdentifier Ġfor Ġthe Ġelement , Ġmust Ġbe Ġunique . Ġ*/ ĊĠĠĠĠĠĠĠ Ġid : ĠString , ĊĊĠĠĠĠĠĠĠ Ġ/** ĠLocal ized Ġhuman Ġreadable Ġname Ġfor Ġthe Ġelement , Ġused Ġin Ġthe Ġuser Style Ġselection ĠUI . Ġ*/ ĊĠĠĠĠĠĠĠ ĠdisplayName : ĠString , ĊĊĠĠĠĠĠĠĠ Ġ/** ĠLocal ized Ġdescription Ġstring Ġdisplayed Ġunder Ġthe ĠdisplayName . Ġ*/ ĊĠĠĠĠĠĠĠ Ġdescription : ĠString , ĊĊĠĠĠĠĠĠĠ Ġ/** ĠIcon Ġfor Ġuse Ġin Ġthe Ġuser Style Ġselection ĠUI . Ġ*/ ĊĠĠĠĠĠĠĠ Ġicon : ĠIcon ?, ĊĊĠĠĠĠĠĠĠ Ġ/** ĠList Ġof Ġall Ġoptions Ġfor Ġthis ĠList User Style Category . Ġ*/ ĊĠĠĠĠĠĠĠ Ġoptions : ĠList < List Option >, ĊĊĠĠĠĠĠĠĠ Ġ/** ĊĠĠĠĠĠĠĠĠ Ġ* ĠUsed Ġby Ġthe Ġstyle Ġconfiguration ĠUI . ĠDescri bes Ġwhich Ġrendering Ġlayer Ġthis Ġstyle Ġaffects . ĊĠĠĠĠĠĠĠĠ Ġ* ĠMust Ġbe Ġeither Ġ 0 Ġ( for Ġa Ġstyle Ġchange Ġwith Ġno Ġvisual Ġeffect , Ġe . g . Ġsound Ġcontrols ) Ġor Ġa ĊĠĠĠĠĠĠĠĠ Ġ* Ġcombination Ġof Ġ{@ link Ġ# LAYER _ WATCH _ FACE _ BASE }, Ġ{@ link Ġ# LAYER _ COMP LIC AT ONS }, Ġ{@ link ĊĠĠĠĠĠĠĠĠ Ġ* Ġ# LAYER _ UPPER }. ĊĠĠĠĠĠĠĠĠ Ġ*/ ĊĠĠĠĠĠĠĠ Ġlayer Flags : ĠInt , ĊĊĠĠĠĠĠĠĠ Ġ/** ĠThe Ġdefault Ġoption , Ġused Ġwhen Ġdata Ġisn 't Ġpersisted . Ġ*/ ĊĠĠĠĠĠĠĠ Ġdefault Option : ĠList Option Ġ= Ġoptions . first () ĊĠĠĠ Ġ) Ġ: Ġsuper ( id , ĠdisplayName , Ġdescription , Ġicon , Ġoptions , Ġdefault Option , Ġlayer Flags ) ĊĊĠĠĠ Ġinternal Ġconstructor ( bundle : ĠBundle ) Ġ: Ġsuper ( bundle ) ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* ĠRepresents Ġchoice Ġwithin Ġa Ġ{@ link ĠList User Style Category }, Ġthese Ġmust Ġbe Ġenum erated Ġup Ġfront . ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġopen Ġclass ĠList Option Ġ: ĠOption Ġ{ ĊĠĠĠĠĠĠĠ Ġ/** ĠLocal ized Ġhuman Ġreadable Ġname Ġfor Ġthe Ġsetting , Ġused Ġin Ġthe Ġuser Style Ġselection ĠUI . Ġ*/ ĊĠĠĠĠĠĠĠ Ġval ĠdisplayName : ĠString ĊĊĠĠĠĠĠĠĠ Ġ/** ĊĠĠĠĠĠĠĠĠ Ġ* ĠIcon Ġfor Ġuse Ġin Ġthe Ġuser Style Ġselection ĠUI . ĊĠĠĠĠĠĠĠĠ Ġ*/ ĊĠĠĠĠĠĠĠ Ġval Ġicon : ĠIcon ? ĊĊĠĠĠĠĠĠĠ Ġconstructor ( id : ĠString , ĠdisplayName : ĠString , Ġicon : ĠIcon ?) Ġ: Ġsuper ( id ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġthis . displayName Ġ= ĠdisplayName ĊĠĠĠĠĠĠĠĠĠĠĠ Ġthis . icon Ġ= Ġicon ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġinternal Ġcompanion Ġobject Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġinternal Ġconst Ġval ĠKEY _ DISPLAY _ NAME Ġ= Ġ" KEY _ DISPLAY _ NAME " ĊĠĠĠĠĠĠĠĠĠĠĠ Ġinternal Ġconst Ġval ĠKEY _ ICON Ġ= Ġ" KEY _ ICON " ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġinternal Ġconstructor ( bundle : ĠBundle ) Ġ: Ġsuper ( bundle ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠdisplayName Ġ= Ġbundle . getString ( KEY _ DISPLAY _ NAME ) !! ĊĠĠĠĠĠĠĠĠĠĠĠ Ġicon Ġ= Ġbundle . get Parcelable ( KEY _ ICON ) ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġfinal Ġoverride Ġfun ĠwriteTo Bundle ( bundle : ĠBundle ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġsuper . writeTo Bundle ( bundle ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġbundle . putString ( KEY _ DISPLAY _ NAME , ĠdisplayName ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġbundle . put Parcelable ( KEY _ ICON , Ġicon ) ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġoverride Ġfun Ġget Option Type () Ġ= ĊĠĠĠĠĠĠĠĠĠĠĠ ĠOPTION _ TYPE ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġget Category Type () Ġ= ĊĠĠĠĠĠĠĠ ĠC ATEG ORY _ TYPE Ċ } Ċ