X-Git-Url: http://review.tizen.org/git/?a=blobdiff_plain;f=dali-toolkit%2Finternal%2Fvisuals%2Fvisual-url.h;h=8857184e07e05925033a27d1d5ec193453aba7d1;hb=0842e946c925c924a098e72ea963cb7d97a4e1be;hp=d9ed48a8a2a10b833b139069d30a8afbaa92c994;hpb=8cfc7965881ba756bca7bdde98b548200a649bd4;p=platform%2Fcore%2Fuifw%2Fdali-toolkit.git diff --git a/dali-toolkit/internal/visuals/visual-url.h b/dali-toolkit/internal/visuals/visual-url.h index d9ed48a..8857184 100644 --- a/dali-toolkit/internal/visuals/visual-url.h +++ b/dali-toolkit/internal/visuals/visual-url.h @@ -2,7 +2,7 @@ #define DALI_TOOLKIT_INTERNAL_VISUAL_URL_H /* - * Copyright (c) 2017 Samsung Electronics Co., Ltd. + * Copyright (c) 2021 Samsung Electronics Co., Ltd. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -21,17 +21,13 @@ namespace Dali { - namespace Toolkit { - namespace Internal { - class VisualUrl { public: - /** * The type of the URL based on the string contents */ @@ -40,13 +36,16 @@ public: REGULAR_IMAGE, N_PATCH, SVG, - GIF + GIF, + WEBP, + JSON }; - enum Location + enum ProtocolType { - LOCAL, - REMOTE + LOCAL, ///< file in local file system + TEXTURE, ///< texture uploaded to texture manager + REMOTE ///< remote image }; /** @@ -60,19 +59,19 @@ public: * Determines type of visual and whether the url is local or remote * @param[in] url The URL to store and resolve */ - VisualUrl( const std::string& url ); + VisualUrl(const std::string& url); /** * Copy constructor * @param[in] url The VisualUrl to copy */ - VisualUrl( const VisualUrl& url ); + VisualUrl(const VisualUrl& url); /** * Assignment operator * @param[in] url The VisualUrl to copy */ - VisualUrl& operator=( const VisualUrl& url ); + VisualUrl& operator=(const VisualUrl& url); /** * Get the full URL @@ -90,7 +89,7 @@ public: * Is the URL is local to the device, or remote? * @return the location of the resource */ - Location GetLocation() const; + ProtocolType GetProtocolType() const; /** * Is the URL valid? @@ -99,17 +98,28 @@ public: bool IsValid() const; /** - * @return true if the location is LOCAL + * @return true if the location is LOCAL, i.e. is loadable from local file system */ - bool IsLocal() const; + bool IsLocalResource() const; + + /** + * @return the location part of the url + */ + std::string GetLocation() const; + + /** + * Helper to create a URL of type TEXTURE + * @param location the location of the texture + * @return the Url + */ + static std::string CreateTextureUrl(const std::string& location); private: - std::string mUrl; - Type mType; - Location mLocation; + std::string mUrl; + Type mType; + ProtocolType mLocation; }; - } // namespace Internal } // namespace Toolkit