It is currently May 27th, 2019, 12:12 am

ColorPickerPlus 1.0.0

Post your work-in-progress and completed skins to share and discuss.
User avatar
raiguard
Posts: 612
Joined: June 25th, 2015, 7:02 pm
Location: The Sky, USA

ColorPickerPlus 1.0.0

raiguard » April 14th, 2019, 8:52 pm

Image

ColorPickerPlus is an advanced color picker built entirely in Rainmeter. It is designed both to be used as a standalone tool for skin developers, and as a method of allowing users of your suite to customize your suite's color options. The skin is entirely portable, so you can just copy the ColorPickerPlus folder into your suite and it will work out-of-the-box with no issues (assuming that you have the necessary plugins, of course!)

The skin is designed to be as extensible as possible, and includes detailed documentation of the skin code. The skin also includes instructions for integrating the picker into your own suite.

REQUIRES RAINMETER 4.3 OR NEWER
REQUIRES .NET FRAMEWORK 4.5 OR NEWER

Download latest release (v1.0.0)
Older versions

ColorPickerPlus on GitHub

Features
- Draggable HSB and RGB sliders
- Use the mouse wheel for fine-tuning
- Pick a color from the color spectrum
- Manually input an RGB or HEX color string
- Use the eyedropper tool to pick a color from anywhere on your screen, using the arrow keys for pixel-perfect selection
- Minimize to the corner of your desktop to keep it handy, but unobstrusive
- Copy RGB HSB, or HEX string to clipboard
- Configurable finish action for integrating into a suite

Attributions
ColorPicker by jsmorley
CursorColor plugin by jsmorley
Mouse plugin by NighthawkSLO
HotKey plugin by Brian
NirCMD by NirSoft
FontAwesome by FortAwesome

Implementing ColorPickerPlus
If you wish to implement ColorPickerPlus as a color picker for your suite, simply copy the ColorPickerPlus skins folder and place it somewhere in your suite's skins folder. Then create a meter that, when clicked, will activate the skin:

LeftMouseUpAction=[!ActivateConfig "#CURRENTCONFIG#\ColorPickerPlus" "ColorPickerPlus.ini"]

You will also want to configure baseColor and finishAction as well. A common practice might be to set baseColor to the current value of the color you're changing, and set finishAction to write the resulting color into an external .INC file.

Code: Select all

; To incorporate ColorPickerPlus into your suite, you can either change these options directly, or you can use !WriteKeyValue bangs from another skin to change these values.
; This value determines the starting color that will be compared to in the color preview
baseColor=194,0,223
; This value determines what will happen when you click the "Save" icon. Color values are accessed through inline LUA, using the syntax [&MeasureScript:GetColor('cur_rgb')]. Available colors are:
; 'cur_r', 'cur_g', 'cur_b' - individual rgb components
; 'cur_rgb' - the current RGB string (r,g,b)
; 'cur_hue', 'cur_sat', 'cur_bri' - individual HSB values as floats (0-1)
; 'cur_hsb' - current HSB values as floats (0-1), separated by commas (h,s,l)
; 'disp_hue', 'disp_sat', 'disp_bri' - current HSB values formatted to make sense to humans (degrees for hue, percentage for sat and bri)
; 'disp_hsb' - the previous values formatted into a comma-separated string (deg,%,%)
; 'cur_hex' - the current RGB value in hexadecimal format (FFFFFF)
; There are some other values that you could access, if for some reason you wanted to. To see what colors you can retrieve, study the ColorPickerPlus.lua script.
finishAction=[!WriteKeyValue Variables color1 "[&MeasureScript:GetColor('cur_rgb')]" "#ROOTCONFIGPATH#Settings.inc"]
Here is an example skin demonstrating how you could implement ColorPickerPlus:
ColorPickerPlus_Demo_1.0.0.rmskin
You do not have the required permissions to view the files attached to this post.
”We are pretty sure that r2922 resolves the regression in resolution caused by a reversion to a revision.” - jsmorley, 2017
soyelrafa
Posts: 73
Joined: March 1st, 2017, 3:09 pm

Re: ColorPickerPlus 1.0.0

soyelrafa » April 18th, 2019, 1:10 pm

This looks amazing, thanks you!