Example #1
0
 /// <summary>
 /// Creates ThemeLoader.
 /// </summary>
 /// <since_tizen> 8 </since_tizen>
 /// <exception cref="OutOfMemoryException">Failed to create handle.</exception>
 public ThemeLoader()
 {
     Interop.ThemeManager.ErrorCode err = Interop.ThemeManager.LoaderCreate(out _loaderHandle);
     if (err != Interop.ThemeManager.ErrorCode.None)
     {
         throw Interop.ThemeManager.ThemeManagerErrorFactory.GetException(err, "Failed to create themeloader");
     }
 }
Example #2
0
        /// <summary>
        /// Loads theme.
        /// </summary>
        /// <since_tizen> 8 </since_tizen>
        /// <exception cref="ArgumentException">Thrown when failed because of an invalid argument.</exception>
        public Theme LoadTheme(string id)
        {
            IntPtr _themeHandle;

            Interop.ThemeManager.ErrorCode err = Interop.ThemeManager.LoaderLoadTheme(_loaderHandle, id, out _themeHandle);
            if (err != Interop.ThemeManager.ErrorCode.None)
            {
                throw Interop.ThemeManager.ThemeManagerErrorFactory.GetException(err, "Failed to load theme");
            }

            return(new Theme(_themeHandle));
        }
Example #3
0
        /// <summary>
        /// Gets bundle of theme IDs.
        /// </summary>
        /// <since_tizen> 8 </since_tizen>
        /// <exception cref="ArgumentException">Thrown when failed because of an invalid argument.</exception>
        /// <exception cref="OutOfMemoryException">Thrown when failed because of out of memory.</exception>
        public IEnumerable <string> QueryIds()
        {
            IntPtr ids;

            string[] stringArray;
            int      count;

            Interop.ThemeManager.ErrorCode err = Interop.ThemeManager.LoaderQueryId(_loaderHandle, out ids, out count);
            if (err != Interop.ThemeManager.ErrorCode.None)
            {
                throw Interop.ThemeManager.ThemeManagerErrorFactory.GetException(err, "Failed to query ids");
            }

            IntPtrToStringArray(ids, count, out stringArray);
            return(stringArray);
        }
Example #4
0
            internal static Exception GetException(Interop.ThemeManager.ErrorCode err, string message)
            {
                string errMessage = string.Format("{0} err = {1}", message, err);

                Log.Warn(LogTag, errMessage);
                switch (err)
                {
                case Interop.ThemeManager.ErrorCode.InvalidParameter:
                    return(new ArgumentException(errMessage));

                case Interop.ThemeManager.ErrorCode.PermissionDenied:
                    return(new UnauthorizedAccessException(errMessage));

                case Interop.ThemeManager.ErrorCode.IoError:
                default:
                    return(new InvalidOperationException(errMessage));
                }
            }