Skip to main content
Participant
September 30, 2022
Question

Switch between normal and mixer brush tools, without changing brush

  • September 30, 2022
  • 3 replies
  • 2480 views

Is there a shortcut or something that allows me to switch between brush and mixer brush tools without changing the current brush I'm using? Every time I change to mixer brush it changes back to the brush I last used as a mixer brush, which is very annoying for my process. This means every time I change my brush, I have to select it twice - once as a normal brush tool and once as a mixer brush tool. I want to continue using the same brush shape, just as a mixer brush as well.

 

I have highlighted every time I refer to brush as in seperate brush presets in red, and brush as in brush tools in blue for clarity.

Thank-you

This topic has been closed for replies.

3 replies

c.pfaffenbichler
Community Expert
Community Expert
October 11, 2022

Crude, but it should work. 

(Edit: The Script saves a new Brush Preset and deletes it later on, when watching the Brushes Panel this may become apparent; this does not seem an elegant approach, maybe someone else can come up with a better one.)

 

// switch between paint brush tool and mixer brush tool;
// 2022, use it at your own risk;
var currentTool = getCurrentTool();
if (currentTool == "paintbrushTool") {saveBrushChangeToolDeleteBrush("wetBrushTool")};
else {if (currentTool == "wetBrushTool") {saveBrushChangeToolDeleteBrush("paintbrushTool")}};
function saveBrushChangeToolDeleteBrush (theString) {
var theName = "removeThisBrush";
var idselect = stringIDToTypeID( "select" );
var idbrush = stringIDToTypeID( "brush" );
var idordinal = stringIDToTypeID( "ordinal" );
var idtargetEnum = stringIDToTypeID( "targetEnum" );
var idnull = stringIDToTypeID( "null" );
// =======================================================
    var desc33 = new ActionDescriptor();
        var ref11 = new ActionReference();
        ref11.putClass( idbrush );
    desc33.putReference( idnull, ref11 );
    desc33.putString( stringIDToTypeID( "name" ), theName );
        var ref12 = new ActionReference();
        ref12.putProperty( stringIDToTypeID( "property" ), stringIDToTypeID( "currentToolOptions" ) );
        ref12.putEnumerated( stringIDToTypeID( "application" ), idordinal, idtargetEnum );
    desc33.putReference( stringIDToTypeID( "using" ), ref12 );
    desc33.putBoolean( stringIDToTypeID( "captureSize" ), true );
    desc33.putBoolean( stringIDToTypeID( "captureTool" ), false );
executeAction( stringIDToTypeID( "make" ), desc33, DialogModes.NO );
// =======================================================
    var desc5 = new ActionDescriptor();
        var ref1 = new ActionReference();
        ref1.putClass( stringIDToTypeID( theString ) );
    desc5.putReference( idnull, ref1 );
executeAction( idselect, desc5, DialogModes.NO );
// =======================================================
    var desc34 = new ActionDescriptor();
        var ref13 = new ActionReference();
        ref13.putName( idbrush, theName );
    desc34.putReference( idnull, ref13 );
executeAction( idselect, desc34, DialogModes.NO );
// =======================================================
    var desc35 = new ActionDescriptor();
        var ref14 = new ActionReference();
        ref14.putEnumerated( idbrush, idordinal, idtargetEnum );
    desc35.putReference( idnull, ref14 );
executeAction( stringIDToTypeID( "delete" ), desc35, DialogModes.NO );
};
function getCurrentTool() {
    var ref = new ActionReference(); 
    ref.putProperty (stringIDToTypeID ("property"), stringIDToTypeID ("tool"));
    ref.putEnumerated( charIDToTypeID("capp"), charIDToTypeID("Ordn"), charIDToTypeID("Trgt") ); 
    return typeIDToStringID(executeActionGet(ref).getEnumerationType(stringIDToTypeID('tool')));
    };

 

PECourtejoie
Community Expert
Community Expert
October 4, 2022

Oh, you'd want the opposite of changing just the brush tip while keeping the same tool (CMD+Option click the preset)?

You could try to remove the B keyboard shortcut on the other brush tools Edit>Keyboard shortcuts, select "Tools", and keep only brush and mixer brush, deactivate Shift to toggle them, (Photoshop>Preferences>Tools uncheck Use Shift for tool switch )

This way, each time you press B you toggle between the two tools.
Then CMD+Option click the last brush used in the brushes panel?

I hope this helps...

Participant
October 7, 2022

Thank you for your response, this method certainly makes the proccess more efficient, even if it seems there's no way around having to hunt for the same brush twice if you have a big library. I hope there'll be some way of fixing this with a script or something so I won't mark your response as an answer, but thank you very much anyway.

c.pfaffenbichler
Community Expert
Community Expert
October 4, 2022

I see no option for this except, possibly, a Script. 

And if I recall correctly this might only work out with »plain« round brushes and not with Sampled Brushes.