// -*- Mode: C++; indent-tabs-mode: nil; tab-width: 2 -*- /* * Copyright 2011 Canonical Ltd. * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version 3, as * published by the Free Software Foundation. * * This program is distributed in the hope that it will be useful, but * WITHOUT ANY WARRANTY; without even the implied warranties of * MERCHANTABILITY, SATISFACTORY QUALITY or FITNESS FOR A PARTICULAR * PURPOSE. See the applicable version of the GNU Lesser General Public * License for more details. * * You should have received a copy of both the GNU Lesser General Public * License version 3 along with this program. If not, see * * * Authored by: Nick Dedekind * */ #ifndef PREVIEWSTYLE_H #define PREVIEWSTYLE_H #include #include #include #include namespace nux { class BaseTexture; class AbstractPaintLayer; } namespace unity { namespace dash { namespace previews { enum class Orientation { UP, DOWN, LEFT, RIGHT }; class Style { public: Style(); ~Style(); static Style& Instance(); int GetNavigatorWidth() const; int GetNavigatorIconSize() const; int GetPreviewWidth() const; int GetPreviewHeight() const; int GetPreviewTopPadding() const; int GetDetailsTopMargin() const; int GetDetailsBottomMargin() const; int GetDetailsRightMargin() const; int GetDetailsLeftMargin() const; int GetPanelSplitWidth() const; int GetSpaceBetweenTitleAndSubtitle() const; int GetActionButtonHeight() const; int GetSpaceBetweenActions() const; int GetActionButtonMaximumWidth() const; int GetDetailsPanelMinimumWidth() const; int GetInfoHintIconSizeWidth() const; int GetInfoHintNameMinimumWidth() const; int GetInfoHintNameMaximumWidth() const; int GetCommentNameMinimumWidth() const; int GetCommentNameMaximumWidth() const; float GetDescriptionLineSpacing() const; int GetDescriptionLineCount() const; int GetRatingWidgetHeight() const; bool GetShadowBackgroundEnabled() const; std::string title_font() const; std::string subtitle_size_font() const; std::string description_font() const; std::string action_font() const; std::string action_extra_font() const; nux::AbstractPaintLayer* GetBackgroundLayer() const; //////////////////////////////// // Application Preview std::string app_license_font() const; std::string app_last_update_font() const; std::string app_copywrite_font() const; std::string info_hint_font() const; std::string info_hint_bold_font() const; std::string user_rating_font() const; std::string no_preview_image_font() const; float GetAppImageAspectRatio() const; int GetAppIconAreaWidth() const; int GetSpaceBetweenIconAndDetails() const; //////////////////////////////// //////////////////////////////// // Music Preview std::string track_font() const; std::string u1_warning_font() const; nux::BaseTexture* GetWarningIcon(); int GetTrackHeight() const; //////////////////////////////// //////////////////////////////// // Movie Preview float GetVideoImageAspectRatio() const; int GetTrackBarHeight() const; int GetMusicDurationWidth() const; int GetStatusIconSize() const; //////////////////////////////// //////////////////////////////// // Social Preview int GetAvatarAreaWidth() const; int GetAvatarAreaHeight() const; std::string content_font() const; //////////////////////////////// nux::BaseTexture* GetNavLeftIcon(); nux::BaseTexture* GetNavRightIcon(); nux::BaseTexture* GetPlayIcon(); nux::BaseTexture* GetPauseIcon(); nux::BaseTexture* GetLockIcon(); nux::BaseTexture* GetSearchSpinIcon(int size = -1); //////////////////////////////// // Payment Preview std::string payment_title_font() const; std::string payment_subtitle_font() const; std::string payment_prize_title_font() const; std::string payment_prize_subtitle_font() const; std::string payment_intro_font() const; std::string payment_form_labels_font() const; std::string payment_form_data_font() const; std::string payment_form_actions_font() const; std::string payment_text_input_font() const; nux::Color payment_error_color() const; int GetPaymentIconAreaWidth() const; int GetPaymentTextInputHeight() const; int GetPaymentLockWidth() const; int GetPaymentLockHeight() const; int GetPaymentHeaderWidth() const; int GetPaymentHeaderSpace() const; int GetPaymentFormSpace() const; ///////////////////////////////// protected: class Impl; std::unique_ptr pimpl; }; } } } #endif //PREVIEWSTYLE_H