Skip to main content
Participant
September 30, 2022
Question

Switch between normal and mixer brush tools, without changing brush

  • September 30, 2022
  • 3 replies
  • 2474 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...

PECourtejoie
Community Expert
Community Expert
October 7, 2022

Hi, @FantonHike does this workaround solve your issue?

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.