It is currently December 6th, 2022, 2:55 pm

Snip and Pin to Screen

Skins with graphics and animations
nek
Posts: 77
Joined: November 3rd, 2019, 12:00 am

Snip and Pin to Screen

Post by nek »

Image Image Image

Snip and Pin to Screen

Image

What is Snip and Pin to Screen?
- Snip and Pin to Screen is a Rainmeter skin for Microsoft Windows.
- It is a kind of screenshot (screen capture) tool.
- It is a simple image viewer.
What isn't Snip and Pin to Screen?
- It is not a video recorder.
- It is not a graphics editor.
- It does not have a slideshow functionality.

This skin consists of three parts.
description.png
Viewer
- Use the mouse scroll wheel on the viewer to change pictures
- Drag & drop an image file on the viewer to display


Download

πŸ“¦ SnipAndPinToScreen.rmskin (2 MB, GitHub.com)
SHA256 1635b40d11f7ed4bf46c16f97ce9042b08d0116de6989050010296f369e76e89

Changelog

2022-11-18 (YYYY-MM-DD)
Icon: Added Snip and Pin to Screen\Skin.noTrayIcon.ini.
Icon: Updated TrayIcon.dll plugin (from 155 KB to 1.22 MB, same version number, new file)
Icon: Updated Apps and Open folder menu default items.
Icon: Fixed Changing tray icon functionality was not working.
Viewer: Added Rounded corners option for images.
Viewer: Added Border options.
Viewer: Added Color filter options.
Viewer: Fixed Settings > Show button was not working.
Update Note: Rainmeter Skin Installer window, check βœ… TrayIcon.dll and [Install] (same version number 1.1.0.0, new file)

2022-10-22
Initial release.

Documents

πŸ“™ Snip and Pin to Screen Home

πŸ’‘ On the high resolution monitors like 2560x1440(WQHD), 3840x2160(4K) environment, you need to follow the few steps.
See Excluding the Rainmeter.exe from Windows automatic scaling

Acknowledgments

Snip and Pin to Screen has been created as a Rainmeter skin, inspired by atto (Windows app, c++) by beckorz
App
Rainmeter by Developer team, Brian, jsmorley, Community
Plugin
RunCommand, FileView, HotKey.dll by Brian
ConfigActive, ImageSize by jsmorley
Mouse.dll by NighthawkSLO
Drag&Drop, ConfigActive by TheAzack9
TrayIcon, Focus by deathcrafter
FileChoose by Setsukka
Addon
NirCmd by NirSoft
nircmd.exe (64 bit), SHA256 7160db2b7a6680480e64f0845512d203a575f807831faf9a652aaef0988f876c
filever.exe (32 bit) by Microsoft, SHA256 FF361B98D12F9E1B0F16AAF6248C0431BBDA7AA49912521C6865DFE68C675F30
Fonts
tabler Icons, Material Icons, Fira Mono
Code
Advanced custom skin context menus by jsmorley
Win10 AppliedDPI Registry Value for Scaling (Single Monitor) by eclectic-tech
nek wrote: The skin should work on a high resolution monitor (2560x1440, 4K etc), but I am not sure because I don't have those.
I am glad if you let me know the skin "Snip and Pin to Screen" work or not on your environment.
> My PC: Single monitor, 1920x1080 (96 dpi), Windows 10 Pro 21H1.
You do not have the required permissions to view the files attached to this post.
Last edited by nek on November 17th, 2022, 9:11 pm, edited 6 times in total.
User avatar
Active Colors
Moderator
Posts: 1199
Joined: February 16th, 2012, 3:32 am
Location: Berlin, Germany

Re: Snip and Pin to Screen

Post by Active Colors »

Impressive skin nek. Good work!
nek
Posts: 77
Joined: November 3rd, 2019, 12:00 am

Re: Snip and Pin to Screen

Post by nek »

Active Colors wrote: ↑October 22nd, 2022, 9:09 am Impressive skin nek. Good work!
Thanks again!

For some reasons, minimum requirements of Windows version is 10
- Plugin FileChoose UseNewStyle=1 is for Win10 or greater.
- Context menu > Apps > MS Paint 3D Screen snip Snip & Sketch MS Photos may not work on the old Windows OS.
User avatar
tass_co
Posts: 429
Joined: May 4th, 2020, 3:01 pm
Location: Ankara, TURKEY

Re: Snip and Pin to Screen

Post by tass_co »

nek wrote: ↑October 23rd, 2022, 6:26 am Thanks again!

For some reasons, minimum requirements of Windows version is 10
- Plugin FileChoose UseNewStyle=1 is for Win10 or greater.
- Context menu > Apps > MS Paint 3D Screen snip Snip & Sketch MS Photos may not work on the old Windows OS.
It's a really good skin :great:
I have a question.
Rainmeter crashes because I use a hotkey on another skin.
I think same hotkey.
How can I remove the hotkey?
I couldn't follow it because there are too many ini files.
I don't know where i going from here, but i promise it won't be boring... :great:
nek
Posts: 77
Joined: November 3rd, 2019, 12:00 am

Re: Snip and Pin to Screen

Post by nek »

Hi tass_co
tass_co wrote: ↑October 23rd, 2022, 8:04 pm How can I remove the hotkey?
Hotkey plugin is used while capturing. Could you try this?

1. Snip and Pin to Screen\Capture\Select.ini Line 53-58 Comment out the code

Code: Select all

; [pHotkey_ESCAPE]
; Measure=Plugin
; Plugin=HotKey
; HotKey=ESCAPE
; KeyDownAction=[!DeactivateConfig]
; Disabled=1
2. Snip and Pin to Screen\Capture\Capture.ini Line 153-243 Comment out the code

Code: Select all

; [pHotkey_ESCAPE]
; Measure=Plugin
; Plugin=HotKey
; HotKey=ESCAPE
; KeyDownAction=[!Delay 50][!DeactivateConfig]
; Disabled=1

; ; Moving/Resizing Capture Area with keyboard.
; ; KEY_CTRL_STATE={0|1} | 0=move, 1=resize
; ; KEY_ARROW_STATE={0-4} | 1=left, 2=up, 3=right, 4=down
; ; KEYBOARD_INCREMENT={1|10} | 1=shift keyup, 10=shift keydown
; [aMoveResize]
; Measure=String
; DynamicVariables=1
; Group=gAction
; IfConditionMode=1
; ;; Moving
; IfCondition=(0=#KEY_CTRL_STATE#)&&(1=#KEY_ARROW_STATE#)
; IfTrueAction=[!Move (#CURRENTCONFIGX#-#KEYBOARD_INCREMENT#) #CURRENTCONFIGY#]
; IfCondition2=(0=#KEY_CTRL_STATE#)&&(2=#KEY_ARROW_STATE#)
; IfTrueAction2=[!Move #CURRENTCONFIGX# (#CURRENTCONFIGY#-#KEYBOARD_INCREMENT#)]
; IfCondition3=(0=#KEY_CTRL_STATE#)&&(3=#KEY_ARROW_STATE#)
; IfTrueAction3=[!Move (#CURRENTCONFIGX#+#KEYBOARD_INCREMENT#) #CURRENTCONFIGY#]
; IfCondition4=(0=#KEY_CTRL_STATE#)&&(4=#KEY_ARROW_STATE#)
; IfTrueAction4=[!Move #CURRENTCONFIGX# (#CURRENTCONFIGY#+#KEYBOARD_INCREMENT#)]
; ;; Resizing
; IfCondition5=(1=#KEY_CTRL_STATE#)&&(1=#KEY_ARROW_STATE#)
; IfTrueAction5=[!SetVariable CAPTUREAREA_W_CURRENT (Clamp(#CAPTUREAREA_W_CURRENT#-#KEYBOARD_INCREMENT#,Round(30*#$#),#VSCREENAREAWIDTH#))][!SetOption CaptureArea DynamicVariables 0][!UpdateMeter CaptureArea][!CommandMeasure sScript "grips_update()"][!CommandMeasure sScript "buttons_update()"][!Redraw]
; IfCondition6=(1=#KEY_CTRL_STATE#)&&(2=#KEY_ARROW_STATE#)
; IfTrueAction6=[!SetVariable CAPTUREAREA_H_CURRENT (Clamp(#CAPTUREAREA_H_CURRENT#-#KEYBOARD_INCREMENT#,Round(30*#$#),#VSCREENAREAHEIGHT#))][!SetOption CaptureArea DynamicVariables 0][!UpdateMeter CaptureArea][!CommandMeasure sScript "grips_update()"][!CommandMeasure sScript "buttons_update()"][!Redraw]
; IfCondition7=(1=#KEY_CTRL_STATE#)&&(3=#KEY_ARROW_STATE#)
; IfTrueAction7=[!SetVariable CAPTUREAREA_W_CURRENT (Clamp(#CAPTUREAREA_W_CURRENT#+#KEYBOARD_INCREMENT#,Round(30*#$#),#VSCREENAREAWIDTH#))][!SetOption CaptureArea DynamicVariables 0][!UpdateMeter CaptureArea][!CommandMeasure sScript "grips_update()"][!CommandMeasure sScript "buttons_update()"][!Redraw]
; IfCondition8=(1=#KEY_CTRL_STATE#)&&(4=#KEY_ARROW_STATE#)
; IfTrueAction8=[!SetVariable CAPTUREAREA_H_CURRENT (Clamp(#CAPTUREAREA_H_CURRENT#+#KEYBOARD_INCREMENT#,Round(30*#$#),#VSCREENAREAHEIGHT#))][!SetOption CaptureArea DynamicVariables 0][!UpdateMeter CaptureArea][!CommandMeasure sScript "grips_update()"][!CommandMeasure sScript "buttons_update()"][!Redraw]
; Disabled=1
; [pHotkey_LSHIFT]
; Measure=Plugin
; Plugin=Hotkey
; HotKey=LSHIFT
; KeyDownAction=[!SetVariable KEYBOARD_INCREMENT 10]
; KeyUpAction=[!SetVariable KEYBOARD_INCREMENT 1]
; Disabled=1
; [pHotkey_RSHIFT]
; Measure=Plugin
; Plugin=Hotkey
; HotKey=RSHIFT
; KeyDownAction=[!SetVariable KEYBOARD_INCREMENT 10]
; KeyUpAction=[!SetVariable KEYBOARD_INCREMENT 1]
; Disabled=1
; [pHotkey_LCTRL]
; Measure=Plugin
; Plugin=Hotkey
; HotKey=LCTRL
; KeyDownAction=[!SetVariable KEY_CTRL_STATE 1]
; KeyUpAction=[!SetVariable KEY_CTRL_STATE 0]
; Disabled=1
; [pHotkey_RCTRL]
; Measure=Plugin
; Plugin=Hotkey
; HotKey=RCTRL
; KeyDownAction=[!SetVariable KEY_CTRL_STATE 1]
; KeyUpAction=[!SetVariable KEY_CTRL_STATE 0]
; Disabled=1
; [pHotkey_LEFT]
; Measure=Plugin
; Plugin=Hotkey
; HotKey=LEFT
; KeyDownAction=[!SetVariable KEY_ARROW_STATE 1][!UpdateMeasure aMoveResize]
; KeyUpAction=[!SetVariable KEY_ARROW_STATE 0]
; Disabled=1
; [pHotkey_UP]
; Measure=Plugin
; Plugin=Hotkey
; HotKey=UP
; KeyDownAction=[!SetVariable KEY_ARROW_STATE 2][!UpdateMeasure aMoveResize]
; KeyUpAction=[!SetVariable KEY_ARROW_STATE 0]
; Disabled=1
; [pHotkey_RIGHT]
; Measure=Plugin
; Plugin=Hotkey
; HotKey=RIGHT
; KeyDownAction=[!SetVariable KEY_ARROW_STATE 3][!UpdateMeasure aMoveResize]
; KeyUpAction=[!SetVariable KEY_ARROW_STATE 0]
; Disabled=1
; [pHotkey_DOWN]
; Measure=Plugin
; Plugin=Hotkey
; HotKey=DOWN
; KeyDownAction=[!SetVariable KEY_ARROW_STATE 4][!UpdateMeasure aMoveResize]
; KeyUpAction=[!SetVariable KEY_ARROW_STATE 0]
; Disabled=1
3. Snip and Pin to Screen\Capture\Capture.ini Line 477-478 modify the code

Code: Select all

; OnFocusAction=[!CommandMeasure sScript "toggle_hotkey(1)"]
; OnUnfocusAction=[!UpdateMeasure aUnFocus][!CommandMeasure sScript "toggle_hotkey(0)"]
OnUnfocusAction=[!UpdateMeasure aUnFocus]
πŸ’‘ The default location of the skin installed
C:\Users\%UserName%\Documents\Rainmeter\Skins\Snip and Pin to Screen
User avatar
tass_co
Posts: 429
Joined: May 4th, 2020, 3:01 pm
Location: Ankara, TURKEY

Re: Snip and Pin to Screen

Post by tass_co »

nek wrote: ↑October 24th, 2022, 1:21 am Hi tass_co
Hotkey plugin is used while capturing. Could you try this?
Even though I removed the lines you wrote, the crash continues :-(

GIF 24.10.2022 09-13-23.gif

I use Shift+Ctrl+Alt+G to activate my own skin and when i used this hotkey Rainmeter is crash...

My Hotkey code lines

Code: Select all

RC=[!CommandMeasure "MeasurePath" "IndexUp"][!CommandMeasure "MeasurePath" "IndexUp"]
.
.
[MeaShow]
Measure=Plugin
Plugin=Hotkey
Hotkey=SHIFT CTRL ALT G
KeyUpAction=#RC#[!Zpos "2"][!Move ([MeaMX]-115) ([MeaMY]-100)]#RC#[!ToggleMeterGroup BtnP]#RC#[!ToggleConfig "PopupDock v5\Player" "Player.ini"][!Move ([MeaMX]-89) ([MeaMY]+105) "PopupDock v5\Player"]#RC#[!SetVariable Again "2"][!SetVariable Again1 "1"][!Update *][!Redraw]
DynamicVariables=1
.
.
You do not have the required permissions to view the files attached to this post.
I don't know where i going from here, but i promise it won't be boring... :great:
nek
Posts: 77
Joined: November 3rd, 2019, 12:00 am

Re: Snip and Pin to Screen

Post by nek »

tass_co wrote: ↑October 24th, 2022, 6:31 am Even though I removed the lines you wrote, the crash continues
It seems that loading Snip and Pin to Screen\Skin.ini cause immediately Rainmeter.exe to crash.
Do you see the Snip and Pin to Screen icon on the notification area after the skin is loaded?

Could you replace Skin.ini and Config.inc files under the Rainmeter\Skins\Snip and Pin to Screen and
load the Snip and Pin to Screen\Skin.ini again?
If it works the icon will be appeared at the top-left of the desktop.

Skin.DesktopIcon.zip
The files are modified to...
Snip and Pin to Screen\Skin.ini Line 176-182 Commented out the code | Disabled TrayIcon plugin

Code: Select all

; [pTrayIcon]
; Measure=Plugin
; Plugin=TrayIcon
; IconName=#@#Images\snipinw_#ICON_TYPE#.ico
; ToolTipText=Snip and Pin to Screen#CRLF##TOOLTIP_TEXT#
; LeftMouseUpAction=[!UpdateMeasure aStartCapture]
; RightMouseUpAction=[!UpdateMeasure aMenuBuilder][!SkinCustomMenu]
Snip and Pin to Screen\Config.inc Line 54 Modified the code | Enable Desktop icon for the skin

Code: Select all

SETTINGS_STATE=6

If Rainmeter.exe still keeps crashing and you have enough time, please follow the few steps.
- Save the current skin layout. | Manage Rainmeter > Layouts tab > βœ… Exclude unloaded skins, Name: something > [Save]
- Unload the skins as possible. (Minimize which skin are related to crashing issues)
- Manage Rainmeter > Settings tab > βœ… Debug mode, βœ… Log to file
- About Rainmeter > Version tab > [Copy to clipbooard]
You do not have the required permissions to view the files attached to this post.
Last edited by nek on October 26th, 2022, 5:56 am, edited 1 time in total.
User avatar
tass_co
Posts: 429
Joined: May 4th, 2020, 3:01 pm
Location: Ankara, TURKEY

Re: Snip and Pin to Screen

Post by tass_co »

nek wrote: ↑October 24th, 2022, 9:11 am It seems that loading Snip and Pin to Screen\Skin.ini cause immediately Rainmeter.exe to crash.
There is no problem loading. I can use your skin normally. When i pressing the Hotkey button, freezes and eventually Rainmeter crashes (The screen goes black as when taking a screenshot).
GIF 24.10.2022 15-00-33.gif

I think the problem is related to Hotkey or Capture application.
For this, I wanted to cancel the Hotkey and try, but the result was negative :oops:
You do not have the required permissions to view the files attached to this post.
I don't know where i going from here, but i promise it won't be boring... :great:
nek
Posts: 77
Joined: November 3rd, 2019, 12:00 am

Re: Snip and Pin to Screen

Post by nek »

tass_co wrote: ↑October 24th, 2022, 11:59 am There is no problem loading. I can use your skin normally. When i pressing the Hotkey button, freezes and eventually Rainmeter crashes (The screen goes black as when taking a screenshot).
Could you try this?
Snip and Pin to Screen.noHotKeys.zip
0. Unload Snip and Pin to Screen\Skin.ini, Snip and Pin to Screen\Viewer.1\Skin.ini
1. Load Snip and Pin to Screen.noHotKeys\Skin.Mini.ini and press SHIFT CTRL ALT G
2. Load Snip and Pin to Screen.noHotKeys\Skin.ini and press SHIFT CTRL ALT G

Let me know 1. and 2. cause Rainmeter.exe crashing.

and more info.
About Rainmeter > Version tab > [Copy to clipbooard]
You do not have the required permissions to view the files attached to this post.
User avatar
tass_co
Posts: 429
Joined: May 4th, 2020, 3:01 pm
Location: Ankara, TURKEY

Re: Snip and Pin to Screen

Post by tass_co »

nek wrote: ↑October 24th, 2022, 2:51 pm Could you try this?
Snip and Pin to Screen.noHotKeys.zip
0. Unload Snip and Pin to Screen\Skin.ini, Snip and Pin to Screen\Viewer.1\Skin.ini
1. Load Snip and Pin to Screen.noHotKeys\Skin.Mini.ini and press SHIFT CTRL ALT G
2. Load Snip and Pin to Screen.noHotKeys\Skin.ini and press SHIFT CTRL ALT G

Let me know 1. and 2. cause Rainmeter.exe crashing.

and more info.
About Rainmeter > Version tab > [Copy to clipbooard]
Crashes continue in steps 1. and 2.
Also changing the hotkey combination did not change the result either.

Code: Select all

Rainmeter 4.5.16.3687 (64-bit)
Language: English (1033)
Build time: 2022-09-20 16:53:41
Windows 10 Pro 21H2 (build 19044.2130) 64-bit - Turkish (1055)
Path: C:\Program Files\Rainmeter\
SkinPath: C:\Users\Hasan Tahsin\Documents\Rainmeter\Skins\
SettingsPath: C:\Users\Hasan Tahsin\AppData\Roaming\Rainmeter\
IniFile: C:\Users\Hasan Tahsin\AppData\Roaming\Rainmeter\Rainmeter.ini
I don't know where i going from here, but i promise it won't be boring... :great: