package Ġcom . im ang az al ie v . material prefs . dsl . preferences Ċ Ċ import Ġandroid . graphics . drawable . Drawable Ċ import Ġandroidx . annotation . Drawable Res Ċ import Ġandroidx . annotation . String Res Ċ import Ġandroidx . core . content . res . Resources Compat Ċ import Ġcom . im ang az al ie v . material prefs . dsl . Preferences Appearance Ċ import Ġcom . im ang az al ie v . material prefs . dsl . Preferences Marker Ċ import Ġcom . im ang az al ie v . material prefs . dsl . Prefs Container Ċ import Ġcom . im ang az al ie v . material prefs . views . Base Preference View Ċ import Ġjava . lang . IllegalStateException Ċ Ċ @ Preferences Marker Ċ abstract Ġclass ĠBase Preference < P , ĠV Ġ: ĠBase Preference View , ĠT Ġ: ĠAny >( ĊĠĠĠ Ġprivate Ġval Ġappearance Manager : ĠPreferences Appearance , ĊĠĠĠ Ġcontainer : ĠP refs Container , ĊĠĠĠ Ġkey : ĠString Ċ ) Ġ: ĠPreference < P , ĠV , ĠT >( container , Ġkey ) Ġwhere ĠP Ġ: ĠBase Preference < P , ĠV , ĠT > Ġ{ ĊĊĠĠĠ Ġprotected Ġvar Ġtitle : ĠString ? Ġ= Ġnull ĊĠĠĠ Ġprotected Ġvar Ġsummary : ĠString ? Ġ= Ġnull ĊĠĠĠ Ġprotected Ġvar Ġicon : ĠDrawable ? Ġ= Ġnull ĊĊĠĠĠ Ġfun Ġtitle (@ String Res Ġtitle Res Id : ĠInt ) Ġ{ ĊĠĠĠĠĠĠĠ Ġtitle ( context . getString ( title Res Id )) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġtitle ( title : ĠString ) Ġ{ ĊĠĠĠĠĠĠĠ Ġthis . title Ġ= Ġtitle ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġsummary (@ String Res Ġsummary Res Id : ĠInt ) Ġ{ ĊĠĠĠĠĠĠĠ Ġsummary ( context . getString ( summary Res Id )) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġsummary ( summary : ĠString ) Ġ{ ĊĠĠĠĠĠĠĠ Ġthis . summary Ġ= Ġsummary ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġicon (@ Drawable Res Ġicon Res Id : ĠInt ) Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġicon Ġ= ĠResources Compat . get Drawable ( context . resources , Ġicon Res Id , Ġcontext . theme ) !! ĊĠĠĠĠĠĠĠ Ġicon ( icon ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġicon ( icon : ĠDrawable ) Ġ{ ĊĠĠĠĠĠĠĠ Ġthis . icon Ġ= Ġicon ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġinit View ( view : ĠV ) Ġ{ ĊĠĠĠĠĠĠĠ Ġif Ġ( title Ġ== Ġnull ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġthrow ĠIllegalStateException (" The Ġtitle Ġis Ġnot Ġset ") ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġview . setTitle Color ( appearance Manager . get Primary TextColor ()) ĊĠĠĠĠĠĠĠ Ġview . set Summary Color ( appearance Manager . get Secondary TextColor ()) ĊĠĠĠĠĠĠĠ Ġview . setIcon Color ( appearance Manager . get Icons Color ()) ĊĠĠĠĠĠĠĠ Ġview . setTitle ( title ) ĊĠĠĠĠĠĠĠ Ġview . set Summary ( summary ) ĊĠĠĠĠĠĠĠ Ġview . setIcon ( icon ) ĊĠĠĠ Ġ} Ċ Ċ }