It is currently April 20th, 2024, 1:52 am

KeyState

Skins that monitor system information
crosseout
Posts: 11
Joined: February 2nd, 2012, 8:20 pm

Re: CSKeyState

Post by crosseout »

ouch... now I feel awkward having published this:http://crosseout.deviantart.com/#/d4o8dss
simulating keyboard ledlights was what I was going for, I had no idea that it had already been done.. :confused:
User avatar
KreAch3R
Posts: 608
Joined: February 7th, 2011, 7:27 pm
Location: Thessaloniki, GR

Re: CSKeyState

Post by KreAch3R »

jsmorley wrote:
I guess one could put them down on the taskbar set to "stay topmost" so they don't fight the taskbar always wanting to be in front.
2-7-2012 7-32-37 AM.jpg
Very good positioning, it even remids you of where the leds used to be (relatively). I try to avoid using "stay topmost" option, however, even I love the concept of a skin above the taskbar, because of it's persistence to stay topmost even in media player's full mode, or even screensaver. Now that we are talking about it, does your to-do list include a way to disable this? :) Perhaps by detecting a full screen (without taskbar) application?
Inactive, due to life changes. Send me a PM for any question.

Desktop DeviartArt
Image
User avatar
jsmorley
Developer
Posts: 22629
Joined: April 19th, 2009, 11:02 pm
Location: Fort Hunt, Virginia, USA

Re: KeyState

Post by jsmorley »

Dec 17, 2013: Updated the KeyState.dll Rainmeter plugin for some changes to the Rainmeter Plugin API.

New .rmskin in the first post of this thread.
User avatar
ZipD
Posts: 37
Joined: September 10th, 2017, 4:31 pm

Re: KeyState

Post by ZipD »

Hi JS,

Would you be able to build in the functionality to set the state? So far I've been using a powershell script but its really slow.
Bekarfel
Posts: 217
Joined: May 16th, 2012, 5:38 am

Re: KeyState

Post by Bekarfel »

baCK in THe dAY THeRE wAs A PlUgIn fOR wiNaMp tHAT WOUld toGgLE The stAtE of yOur KEyboARd LEdS in TiMe witH THe mUSIC YoU wERE PLaYINg AS A funKY vU meTer. YEah. that wAs A THiNg.
moshi wrote:there are many Rainmeter skins that aren't really useful, so let's add another one.
jsmorley wrote:I have good news and bad news.
First the bad news. [...] We would be happy to have this happen and would love to work with anyone who is feeling ambitious.
Now the good news.
I lied, there isn't any good news...
Brucewh
Posts: 1
Joined: October 14th, 2021, 10:19 am

Re: KeyState

Post by Brucewh »

jsmorley wrote: February 6th, 2012, 12:11 am Dec 17, 2013: Updated my KeyState.dll Rainmeter plugin for some changes to the Rainmeter Plugin API.

This skin will demonstrate how to use the KeyState.dll plugin to display the state of the Caps/Num/Scroll keys. The appropriate 32bit / 64bit version of the plugin will be installed by the .rmskin.

KeyState Plugin Usage:
Simply create a plugin measure using KeyState.dll. The only setting is "KeyName=", which can be "Caps", "Num" or "Scroll". The measure will return either 0 (normal) or 1 (locked).

Code: Select all

[MeasureCAPS]
Measure=Plugin
Plugin=KeyState
KeyName=CAPS
[trim]
In Windows is an Ease of Use/Accessibility option called StickyKeys. It provides the option to lock the toggle keys (Shift, Ctrl, Alt, Win) down until the next keystroke or until unlocked. Optionally, Windows puts a little icon in the ClockTray showing the Up or Down state of these keys. This latter feature is vitally important to users of alternate input and output methods (JAWS® screen reader, braille devices, handwriting recognition, NaturallySpeaking® speech recognition, et. al); how such tools function often changes depending upon the state of the toggle keys.

For those of us who depend on these tools, three things would be great additions to your creation.
  1. Add the other toggle keys.
  2. Add an indication (a red or gray circle around the indicator, mayhap) of each key's lock state.
  3. An "always on top" option that keeps KeyState on top of all windows.
Last edited by SilverAzide on October 14th, 2021, 1:36 pm, edited 1 time in total.
Reason: Fixed quote
User avatar
Neocube
Posts: 8
Joined: October 14th, 2021, 7:34 pm
Location: USA

Re: CSKeyState

Post by Neocube »

jsmorley wrote: February 7th, 2012, 12:35 pm I guess one could put them down on the taskbar set to "stay topmost" so they don't fight the taskbar always wanting to be in front.

2-7-2012 7-32-37 AM.jpg
I like yours as it would be better looking in the taskbar area. Do you have it posted for download or is it a personal item?
User avatar
sl23
Posts: 1140
Joined: February 17th, 2011, 7:45 pm
Location: a Galaxy S7 far far away

Re: KeyState

Post by sl23 »

Thanks for the plugin and skin. I changed this to use shape meters... :D

Code: Select all

[Rainmeter]
Update=1000
DynamicWindowSize=1
AccurateText=1

[Metadata]
Name=KeyState
Author=JSMorley - Edited by sl23
Information=Demonstration of the KeyState.dll plugin for Rainmeter.||Valid values for option KeyName=|CAPS|NUM|SCROLL||Plugin returns 1 if the key is "locked" and 0 if not.||Plugin .dll files for x32 and x64 are contained in the skin folder for use in distribution of your own .rmskin.
License=Creative Commons Attribution-Non-Commercial-Share Alike 3.0
Version=2022.4.21

[Variables]
BgFill=0,0,0,200
Blue2=164,164,255,210
Green2=130,230,130,224
Red2=200,100,100
White60=255,255,255,60

[mCaps]
Measure=Plugin
Plugin=KeyState
KeyName=CAPS
IfEqualValue=0
IfEqualAction=[!SetOption CAPS StrokeAlpha "StrokeColor #White60#"][!UpdateMeter *][!Redraw]
IfAboveValue=0
IfAboveAction=[!SetOption CAPS StrokeAlpha "StrokeColor #Blue2#"][!UpdateMeter *][!Redraw]

[mNum]
Measure=Plugin
Plugin=KeyState
KeyName=NUM
IfEqualValue=0
IfEqualAction=[!SetOption NUM StrokeAlpha "StrokeColor #White60#"][!UpdateMeter *][!Redraw]
IfAboveValue=0
IfAboveAction=[!SetOption NUM StrokeAlpha "StrokeColor #Red2#"][!UpdateMeter *][!Redraw]

[mScroll]
Measure=Plugin
Plugin=KeyState
KeyName=SCROLL
IfEqualValue=0
IfEqualAction=[!SetOption SCR StrokeAlpha "StrokeColor #White60#"][!UpdateMeter *][!Redraw]
IfAboveValue=0
IfAboveAction=[!SetOption SCR StrokeAlpha "StrokeColor #Green2#"][!UpdateMeter *][!Redraw]

[KeyStateBg]
Shape=Ellipse 0,0,7 | FillColor #BgFill# | StrokeWidth 3 | Extend StrokeAlpha
StrokeAlpha=StrokeColor #White60#
DynamicVariables=1
ToolTipText=#CURRENTSECTION#
X=20r
Y=r

[CAPS]
Meter=Shape
MeterStyle=KeyStateBg
X=9
Y=9

[NUM]
Meter=Shape
MeterStyle=KeyStateBg

[SCR]
Meter=Shape
MeterStyle=KeyStateBg
- MuLab -
User avatar
DissonantSynth
Posts: 2
Joined: October 8th, 2023, 1:49 am

Re: KeyState

Post by DissonantSynth »

Incredibly cool! Thanks so much for sharing!