Beispiel #1
0
 public static DWMCOLORIZATIONPARAMS DwmGetColorizationParameters()
 {
   var delegateForFunctionPointer = (DwmGetColorizationParametersDelegate)Marshal.GetDelegateForFunctionPointer(GetProcAddressByOrdinal(LoadLibrary("dwmapi"), 0x7f), typeof(DwmGetColorizationParametersDelegate));
   var dwmColorParams = new DWMCOLORIZATIONPARAMS();
   delegateForFunctionPointer(ref dwmColorParams);
   return dwmColorParams;
 }
Beispiel #2
0
        private void tmrColor_Tick(object sender, EventArgs e)
        {
            try
            {
                DWMCOLORIZATIONPARAMS c = DwmGetColorizationParameters();
                int r;
                int g;
                int b;

                byte[] bb = BitConverter.GetBytes(c.ColorizationColor);

                Color cc = Color.FromArgb(bb[3], bb[2], bb[1], bb[0]);
                cc = Color.FromArgb(255, cc.R, cc.G, cc.B);

                double h;
                double s;
                double v;

                ColorToHSV(cc, out h, out s, out v);
                v  = Math.Min(1, v + 0.1);
                cc = ColorFromHSV(h, s, v);
                v  = Math.Min(1, v + 0.5);
                Color cc2 = ColorFromHSV(h, s, v);
                updateAllColors(cc, cc2);
            }
            catch (Exception ex)
            {
            }
        }
Beispiel #3
0
        public static DWMCOLORIZATIONPARAMS DwmGetColorizationParameters()
        {
            DwmGetColorizationParametersDelegate delegateForFunctionPointer = (DwmGetColorizationParametersDelegate)Marshal.GetDelegateForFunctionPointer(GetProcAddressByOrdinal(LoadLibrary("dwmapi"), 0x7f), typeof(DwmGetColorizationParametersDelegate));
            DWMCOLORIZATIONPARAMS dwmColorParams = new DWMCOLORIZATIONPARAMS();

            delegateForFunctionPointer(ref dwmColorParams);
            return(dwmColorParams);
        }
Beispiel #4
0
        private static Color GetWindowColorizationColor(bool opaque)
        {
            var par = new DWMCOLORIZATIONPARAMS();

            Native.DwmGetColorizationParameters(ref par);

            return(Color.FromArgb(
                       (byte)(opaque ? 255 : par.ColorizationColor >> 24),
                       (byte)(par.ColorizationColor >> 16),
                       (byte)(par.ColorizationColor >> 8),
                       (byte)par.ColorizationColor));
        }
Beispiel #5
0
            public static Color GetWindowColorizationColor()
            {
                DWMCOLORIZATIONPARAMS dwmColorParams = default(DWMCOLORIZATIONPARAMS);

                DwmGetColorizationParameters(ref dwmColorParams);

                return(Color.FromArgb(
                           (byte)(dwmColorParams.ColorizationColor >> 24),
                           (byte)(dwmColorParams.ColorizationColor >> 16),
                           (byte)(dwmColorParams.ColorizationColor >> 8),
                           (byte)(dwmColorParams.ColorizationColor)
                           ));
            }
Beispiel #6
0
        private static Color GetWindowColorizationColor(bool opaque)
        {
            DWMCOLORIZATIONPARAMS dwmparams = new DWMCOLORIZATIONPARAMS();

            DwmGetColorizationParameters(ref dwmparams);

            return(Color.FromArgb(
                       (byte)(opaque ? 255 : 156 /*dwmparams.ColorizationColor >> 24*/),
                       (byte)(dwmparams.ColorizationColor >> 16),
                       (byte)(dwmparams.ColorizationColor >> 8),
                       (byte)dwmparams.ColorizationColor
                       ));
        }
Beispiel #7
0
        private static IEnumerable <ColorModel> GetDwmColorModels(DWMCOLORIZATIONPARAMS colorizationParams)
        {
            const string classification = "DwmColorization";

            var frameColor = ToColor(colorizationParams.ColorizationColor);

            yield return(new ColorModel(classification, "ColorizationColor", frameColor));

            var baseColor    = Color.FromRgb(217, 217, 217);
            var blendedColor = BlendColor(frameColor, baseColor, 100 - colorizationParams.ColorizationColorBalance);

            yield return(new ColorModel(classification, "ColorizationColor (balanced)", blendedColor));
        }
Beispiel #8
0
        public static DWMCOLORIZATIONPARAMS DwmGetColorizationParameters()
        {
            DwmGetColorizationParametersDelegate fnDwmGetColorizationParametersDelegate;

            IntPtr hMod = LoadLibrary("dwmapi");
            IntPtr fn = GetProcAddressByOrdinal(hMod, 127);

            fnDwmGetColorizationParametersDelegate = (DwmGetColorizationParametersDelegate)Marshal.GetDelegateForFunctionPointer(
                fn, typeof(DwmGetColorizationParametersDelegate));

            DWMCOLORIZATIONPARAMS dp = new DWMCOLORIZATIONPARAMS();
            fnDwmGetColorizationParametersDelegate(ref dp);

            return dp;
        }
Beispiel #9
0
        private static Color GetWindowColorizationColor(bool opaque)
        {
            DWMCOLORIZATIONPARAMS parms = new DWMCOLORIZATIONPARAMS();

            DWMNativeMethods.DwmGetColorizationParameters(ref parms);

            //Color.FromArgb(parms.ColorizationColor);
            return(Color.FromArgb
                   (
                       (byte)(opaque ? 255 : (parms.ColorizationColor >> 24) / 2),
                       (byte)(parms.ColorizationColor >> 16),
                       (byte)(parms.ColorizationColor >> 8),
                       (byte)parms.ColorizationColor
                   ));
        }
Beispiel #10
0
        public ColorsModel()
        {
            var colorType   = typeof(Color);
            var colorModels = typeof(SystemColors).GetProperties().Where(pi => pi.PropertyType == colorType)
                              .Select(pi => new ColorModel("SystemColor", pi.Name, (Color)pi.GetValue(null)));

            var colorizationParams = new DWMCOLORIZATIONPARAMS();

            DwmGetColorizationParameters(ref colorizationParams);

            _colorModels =
                colorModels.Union(GetDwmColorModels(colorizationParams))
                .OrderBy(m => m.Classification)
                .ThenBy(m => m.Name)
                .ToList();
        }
Beispiel #11
0
 internal static extern void DwmGetColorizationParameters(ref DWMCOLORIZATIONPARAMS dp);
Beispiel #12
0
 public static extern void DwmGetColorizationParameters([In][Out] ref DWMCOLORIZATIONPARAMS dp);
Beispiel #13
0
 [DllImport("Dwmapi.dll", EntryPoint = "#127")] // Undocumented API
 private static extern int DwmGetColorizationParameters(out DWMCOLORIZATIONPARAMS parameters);
Beispiel #14
0
 internal static extern void DwmGetColorizationParameters(ref DWMCOLORIZATIONPARAMS dp);
Beispiel #15
0
 private static extern void DwmGetColorizationParameters(ref DWMCOLORIZATIONPARAMS dwmColorParams);
Beispiel #16
0
 private static extern int DwmGetColorizationParameters(out DWMCOLORIZATIONPARAMS parameters);
Beispiel #17
0
 public static void DwmGetColorizationParameters(ref DWMCOLORIZATIONPARAMS parms)
 {
     NotImplemented(MethodBase.GetCurrentMethod());
 }
Beispiel #18
0
 public static extern void DwmGetColorizationParameters(ref DWMCOLORIZATIONPARAMS parameters);