98 lines
5.5 KiB
C#
Executable File
98 lines
5.5 KiB
C#
Executable File
using Xamarin.Forms;
|
|
|
|
namespace Gallery.UI.Theme
|
|
{
|
|
public abstract class ThemeBase : ResourceDictionary
|
|
{
|
|
public const string FontIconUserFlyout = nameof(FontIconUserFlyout);
|
|
public const string FontIconSparklesFlyout = nameof(FontIconSparklesFlyout);
|
|
public const string FontIconOrderFlyout = nameof(FontIconOrderFlyout);
|
|
public const string FontIconFavoriteFlyout = nameof(FontIconFavoriteFlyout);
|
|
public const string FontIconRefresh = nameof(FontIconRefresh);
|
|
public const string FontIconLove = nameof(FontIconLove);
|
|
public const string FontIconNotLove = nameof(FontIconNotLove);
|
|
public const string FontIconCircleLove = nameof(FontIconCircleLove);
|
|
public const string FontIconOption = nameof(FontIconOption);
|
|
public const string FontIconShare = nameof(FontIconShare);
|
|
public const string FontIconMore = nameof(FontIconMore);
|
|
public const string FontIconCaretCircleLeft = nameof(FontIconCaretCircleLeft);
|
|
public const string FontIconCaretCircleRight = nameof(FontIconCaretCircleRight);
|
|
public const string FontIconCalendarDay = nameof(FontIconCalendarDay);
|
|
public const string FontIconCloudDownload = nameof(FontIconCloudDownload);
|
|
public const string IconCircleCheck = nameof(IconCircleCheck);
|
|
public const string IconCaretDown = nameof(IconCaretDown);
|
|
public const string IconClose = nameof(IconClose);
|
|
|
|
public const string StatusBarStyle = nameof(StatusBarStyle);
|
|
public const string WindowColor = nameof(WindowColor);
|
|
public const string TintColor = nameof(TintColor);
|
|
public const string TextColor = nameof(TextColor);
|
|
public const string SubTextColor = nameof(SubTextColor);
|
|
public const string CardBackgroundColor = nameof(CardBackgroundColor);
|
|
public const string MaskColor = nameof(MaskColor);
|
|
public const string NavColor = nameof(NavColor);
|
|
public const string NavSelectedColor = nameof(NavSelectedColor);
|
|
public const string OptionBackColor = nameof(OptionBackColor);
|
|
public const string OptionTintColor = nameof(OptionTintColor);
|
|
|
|
public const string IconLightFontFamily = nameof(IconLightFontFamily);
|
|
public const string IconRegularFontFamily = nameof(IconRegularFontFamily);
|
|
public const string IconSolidFontFamily = nameof(IconSolidFontFamily);
|
|
//public const string Horizon10 = nameof(Horizon10);
|
|
public const string ScreenBottomPadding = nameof(ScreenBottomPadding);
|
|
|
|
protected void InitResources()
|
|
{
|
|
//Add(Horizon10, StyleDefinition.Horizon10);
|
|
Add(ScreenBottomPadding, StyleDefinition.ScreenBottomPadding);
|
|
|
|
Add(IconLightFontFamily, StyleDefinition.IconLightFontFamily);
|
|
Add(IconRegularFontFamily, StyleDefinition.IconRegularFontFamily);
|
|
Add(IconSolidFontFamily, StyleDefinition.IconSolidFontFamily);
|
|
|
|
var regularFontFamily = StyleDefinition.IconRegularFontFamily;
|
|
var solidFontFamily = StyleDefinition.IconSolidFontFamily;
|
|
|
|
#if __IOS__
|
|
Add(FontIconUserFlyout, GetSolidIcon(StyleDefinition.IconUser, solidFontFamily));
|
|
Add(FontIconSparklesFlyout, GetSolidIcon(StyleDefinition.IconSparkles, solidFontFamily));
|
|
Add(FontIconOrderFlyout, GetSolidIcon(StyleDefinition.IconOrder, solidFontFamily));
|
|
Add(FontIconFavoriteFlyout, GetSolidIcon(StyleDefinition.IconFavorite, solidFontFamily));
|
|
Add(FontIconOption, GetSolidIcon(StyleDefinition.IconOption, solidFontFamily));
|
|
#elif __ANDROID__
|
|
Add(FontIconUserFlyout, ImageSource.FromFile("ic_user"));
|
|
Add(FontIconSparklesFlyout, ImageSource.FromFile("ic_sparkles"));
|
|
Add(FontIconOrderFlyout, ImageSource.FromFile("ic_rank"));
|
|
Add(FontIconFavoriteFlyout, ImageSource.FromFile("ic_bookmark"));
|
|
Add(FontIconOption, ImageSource.FromFile("ic_option"));
|
|
#endif
|
|
|
|
Add(FontIconLove, GetSolidIcon(StyleDefinition.IconLove, solidFontFamily, StyleDefinition.ColorRedBackground));
|
|
Add(FontIconCircleLove, GetSolidIcon(StyleDefinition.IconCircleLove, solidFontFamily, StyleDefinition.ColorRedBackground));
|
|
Add(FontIconRefresh, GetSolidIcon(StyleDefinition.IconRefresh, solidFontFamily));
|
|
Add(FontIconNotLove, GetSolidIcon(StyleDefinition.IconLove, regularFontFamily));
|
|
Add(FontIconShare, GetSolidIcon(StyleDefinition.IconShare, solidFontFamily));
|
|
Add(FontIconMore, GetSolidIcon(StyleDefinition.IconMore, regularFontFamily));
|
|
Add(FontIconCaretCircleLeft, GetSolidIcon(StyleDefinition.IconCaretCircleLeft, solidFontFamily));
|
|
Add(FontIconCaretCircleRight, GetSolidIcon(StyleDefinition.IconCaretCircleRight, solidFontFamily));
|
|
Add(FontIconCalendarDay, GetSolidIcon(StyleDefinition.IconCalendarDay, regularFontFamily));
|
|
Add(FontIconCloudDownload, GetSolidIcon(StyleDefinition.IconCloudDownload, solidFontFamily));
|
|
|
|
Add(IconCircleCheck, StyleDefinition.IconCircleCheck);
|
|
Add(IconCaretDown, StyleDefinition.IconCaretDown);
|
|
Add(IconClose, StyleDefinition.IconClose);
|
|
}
|
|
|
|
private FontImageSource GetSolidIcon(string icon, string family, Color color = default)
|
|
{
|
|
return new FontImageSource
|
|
{
|
|
FontFamily = family,
|
|
Glyph = icon,
|
|
Size = StyleDefinition.FontSizeTitle,
|
|
Color = color
|
|
};
|
|
}
|
|
}
|
|
}
|