Posted on January 4, 2009 in C#, Photoshop by adminComments

Thank you for your comments. I updated the version and now it works perfectly.
1.0 - First version (buggy, was sometimes hanging system on exit)
1.1 - Bug fixed. You can now open and close Photoshop at anytime


Recently I decided to do a little drawing, and I took a look at all nice keyboard shortcuts of Photoshop that make life easier (like shown in this blog for example).

Unfortunately, one of the most important features of Photoshop has no shortcut: changing the current color with color picker ! Everytime I want to change color, I have to travel through my whole 24” screen, just to click on this stupid square !

Impossible to draw anymore, I decided to create a program to click on the square instead of me, when it detects a keyboard shortcut. Well it took me some time, but the result is quite useful. All you have to do is launch the program after Photoshop is launched, configure shortcuts you like (clicking in the yellow box and then typing combination), and keep “tools” toolbar or “color” tab visible (otherwise there will be nowhere to click !). The toolbar can be anywhere, on another screen or so.

The application can be minimized on system tray, and remembers shortcut keys between launches. It has been tested on Photoshop CS3 on Windows XP. Feel free to post comment if you have any suggestion.

♦ Download Version 1.1 ♦

Here is an example of fullscreen mode, with either tools toolbar or color tab (F6) visible, so the shortcuts work.

Posted on August 13, 2008 in C#, Programming by adminComments

In C++ projects using Visual Studio 2005, it was common to perform a different “Post-Build step” in Debug and Release (for example, copy final files to a release folder, launch an installer…).

In C# projects, Microsoft decided to remove these “per-configuration” build events. The “Event” script must be the same for every configuration. A workaround for this is tu use batch file functions top differentiate targets:

REM Here, do things for both configurations

IF NOT "$(ConfigurationName)"=="Debug" Goto :NotDebug
REM Here, do things only for debug

:NotDebug
IF NOT "$(ConfigurationName)"=="Release" Goto :NotRelease
REM Here, do things only for debug
:NotRelease

That’s as simple !