Mini Kabibi Habibi
// Copyright 2023 Adobe Systems Incorporated
// Menu constants brought in as variables.
mStandardBrushMode = 800;
mFullBrushMode = 801;
m_adj_brush_adjustment_popup = 3800 ;
// View IDs.
// If this was eve2, we could do @k_adj_brush_tool_popup_view_str; this isn't so...
kAdjustmentView = 'adjR' ;
// Tool tips.
// vAdjustment = '$$$/PaintTools/ToolTips/AdjustmentPopup=Choose adjustment type to apply';
font = static_small_font;
vBlendPopupFixedWidth = gBlendPopupFixedWidth + 30;
view ( class_name: 'adj_brush_tool_options', view_id: 'panl', width: gOptionsPanelWidth, height: gOptionsPanelHeight,
placement:place_row, spacing: gGap, child_vertical: align_center,
margin_width: gOptionsMarginWidth, margin_height: gOptionsMarginHeight)
{
// Adjustments dropdown
group ( placement: place_row, tooltip: '', spacing: 4, margin_height: 0 )
{
popup(view_id: kAdjustmentView,
edit_display_format: '$$$/private/ZStringSize/FormatString=XXXXXXXXXXXXXXXXXXXXXXXXX',
tooltip: '$$$/PaintTools/ToolTips/AdjustmentPopup=Choose adjustment type to apply',
resource_id: m_adj_brush_adjustment_popup,
width: 150,
horizontal: align_left); // adjustments
view (class_name: 'TNarrowGroupSeparator', width:1, height: gOptionsPanelGroupBarHeight, vertical: align_center);
// 'Subtract from adjustment' toggle
view ( class_name: gIconButtonClass, spacing: 0, margin: 1 )
{
group ( placement: place_row, spacing: 0, margin: 1, frame: gIconButtonOtherButtonFrame )
{
icon_button (class_name: 'TPunchButton',
width: gToolOptionsIconWidth, height: gToolOptionsIconHeight,
view_id: 'subT',
tooltip: '$$$/AdjustmentBrushTool/ToolTips/SubtractFromAdjustment=Subtract from mask areas to remove adjustment from areas of the image',
initial_value: 0, icon_root_name: 'CxUI_MaskBrushMinus');
icon_button (class_name: 'TPunchButton',
width: gToolOptionsIconWidth, height: gToolOptionsIconHeight,
view_id: 'addT',
tooltip: '$$$/AdjustmentBrushTool/ToolTips/AddToAdjustment=Add to mask areas to apply adjustment to more of the image',
initial_value: 0, icon_root_name: 'CxUI_MaskBrushPlus');
}
}
view (class_name: 'TNarrowGroupSeparator', width:1, height: gOptionsPanelGroupBarHeight, vertical: align_center);
// Brush Preset Flyout
group(spacing:gSmallGap, placement: place_row, child_vertical: align_center, tooltip: '$$$/PaintTools/ToolTips/ClickPaintingBrush=Click to open the Brush Preset picker')
{
view (class_name: 'TToolBrushPreview', view_id: 'bprv', width:gBrushPreviewWidth, height:gBrushPreviewHeight);
}
// 'Pressure as size' button
view ( class_name: gIconButtonClass, spacing: 0, margin: 1 )
{
group ( spacing: 0, margin: 1, frame: gIconButtonOtherButtonFrame )
{
icon_button (class_name: 'TPunchButton',
width: gToolOptionsIconWidth, height: gToolOptionsIconHeight,
view_id: 'sPrs',
tooltip: '$$$/BrushOptions/Pressure=Always use Pressure for Size. When off, Brush Preset controls pressure',
initial_value: 0, icon_root_name: 'ToolPenPressure');
}
}
view (class_name: 'TNarrowGroupSeparator', width:1, height: gOptionsPanelGroupBarHeight, vertical: align_center);
// 'Apply to object' button
icon_button (class_name: 'TPunchButton',
width: gToolOptionsIconWidth, height: gToolOptionsIconHeight,
view_id: 'atob',
tooltip: '$$$/AdjustmentBrushTool/ToolTips/ApplyToObject=Choose an object and have the adjustment applied to it',
initial_value: 0, icon_root_name: 'ToolMagicLasso');
view (class_name: 'TNarrowGroupSeparator', width:1, height: gOptionsPanelGroupBarHeight, vertical: align_center);
// 'Overlay' checkbox
view ( class_name: gIconButtonClass, spacing: 0, margin: 1 )
{
group( placement: place_row )
{
check_box(view_id: 'oVrl', class_name: 'TMiniCheckBox',
name: '$$$/AdjustmentBrushOptions/Overlay=Overlay',
tooltip: '$$$/AdjustmentBrushOptions/ToolTips/AutomaticOverlay=Turn the overlay on or off to quickly see the affected areas');
}
}
}
view (class_name: 'TNarrowGroupSeparator', width:1, height: gOptionsPanelGroupBarHeight, vertical: align_center);
// Opacity popup
control(class_name: 'TBlendReadout', placement: place_row, view_id: 'blen', enabled: false, child_vertical: align_center, tooltip: '$$$/PaintTools/ToolTips/BlendingReadout=Blend')
{
group(spacing:gGap, placement: place_row, child_vertical: align_center,
tooltip: '$$$/PaintTools/ToolTips/Opacity=Set opacity for stroke')
{
static_text(view_id: 'stit', class_name: 'THotText', horizontal:align_right,
name: gSliderLabelOpacity);
popup_edit_slider (view_id: 'pusl',
placement: place_row,
edit_class_name: 'TUnitsFixedPoint',
edit_display_format: gOpacityEditFormat,
edit_view_id: 'cell',
slider_view_id: 'tbib');
}
}
// 'Pressure as opacity' button
view ( class_name: gIconButtonClass, spacing: 0, margin: 1 )
{
group ( spacing: 0, margin: 1, frame: gIconButtonOtherButtonFrame )
{
icon_button (class_name: 'TPunchButton',
width: gToolOptionsIconWidth, height: gToolOptionsIconHeight,
view_id: 'oPrs',
tooltip: '$$$/BrushOptions/ToolTips/PressureOpacity=Always use Pressure for Opacity. When off, Brush Preset controls pressure', initial_value: 0, icon_root_name: 'ToolPenPressureOpacity');
}
}
view (class_name: 'TNarrowGroupSeparator', width:1, height: gOptionsPanelGroupBarHeight, vertical: align_center);
// Flow popup
control(view_id: 'flow', class_name: 'TSliderReadout', spacing:gSmallGap, placement: place_row, child_vertical: align_center, tooltip: '$$$/PaintTools/ToolTips/Flow=Set flow rate for stroke')
{
static_text(view_id: 'stit', class_name: 'THotText', horizontal:align_right, name: gSliderLabelFlow);
popup_edit_slider (view_id: 'pusl',
placement: place_row,
edit_class_name: 'TUnitsFixedPoint',
edit_display_format: gToolsFlowFormat,
edit_view_id: 'cell',
slider_view_id: 'tbib');
}
// 'Airbrush buildup' button
view ( class_name: gIconButtonClass, spacing: 0, margin: 1 )
{
group ( spacing: 0, margin: 1, frame: gIconButtonOtherButtonFrame )
{
icon_button (class_name: 'TPunchButton',
width: gToolOptionsIconWidth, height: gToolOptionsIconHeight,
view_id: 'airb',
tooltip: '$$$/BrushOptions/ToolTips/AirbrushBuildup=Enable airbrush-style build-up effects',
initial_value: 0, icon_root_name: 'AirbrushMode');
}
}
}
// Footer - Copyright 2023 Adobe Systems Incorporated