Mini Kabibi Habibi

Current Path : C:/Program Files/Adobe/Adobe Photoshop 2025/Required/layouts/Fill/Dialogs/
Upload File :
Current File : C:/Program Files/Adobe/Adobe Photoshop 2025/Required/layouts/Fill/Dialogs/syntheticFillPanel.eve

layout syntheticFillPanel
{
    constant:
        panelWidth : gPropertiesPaletteWidth - gScrollerInset;
        contentWidth : panelWidth; // - gOptionsMarginWidth * 2;

        bar_button_height: 35;
        bar_button_width:  38;
        text_button_height: bar_button_height - 8;
        
        grid_button_width: 32;
        grid_button_height: 32;
        
        ai_policy_icon_width: 18;
        ai_policy_icon_height: 18;
        
        text_size: 10;

	interface:
        showAiPolicy : false;
        showVariations : true;
        showGeneration : true;
        discloseVariations : true;
        discloseDummy : true;
        showSourceTool : false;
        smallThumbSize : true;
        showServicePickerButton: false;
        selectedService: @Clio;
        showFourGridButton <== smallThumbSize;
        showNineGridButton <== !smallThumbSize;
        showReferenceImageTray : true;
        showOptionsFlyoutButton : false;
        showGenerateImageFlyoutButton : false;
        showGenFillReferenceFlyoutButton : true;
        showGenerateImageReferenceFlyoutButton : false;
        showIsolateSubjectButton : false;
        showPromptBox : true;

    view synthetic_fill_panel(placement: place_column,
                              font: staticSmallFont,
                              margin: gOptionsMarginWidth,
                              spacing: gGap,
                              width: panelWidth,
                              noGrowVertical: true)
    {
        synthetic_fill_view(identifier: @syntheticFillView, horizontal: align_fill, placement: place_column, spacing: gGap)
        {
            TOptional(bind: @showGeneration, horizontal: align_fill)
            {
                TOptional(bind: @showPromptBox) {
                    row(horizontal: align_fill, vertical: align_fill) {
                        TStaticText(horizontal: align_left, vertical: align_bottom, name: '$$$/SyntheticFill/PromptLabel=Prompt:');

                        TOptional(bind: @showServicePickerButton, horizontal: align_right, vertical: align_bottom) {
                            TFlyoutIconButton(identifier : @servicePickerFlyoutButton,
                                    horizontal: align_right,
                                    vertical: align_bottom,
                                    width: 200,
                                    name: '$$$/SyntheticTextToImage/Settings/AdobeFirefly/Title=Adobe Firefly',
                                    spacing: gSmallGap,
                                    flyoutControlId: @servicePickerFlyout,
                                    tooltip: '$$$/SyntheticFillPanel/ServicePicker/Tooltip=Choose a model.')
                            {
                            TCustomDrawFlyoutControl(identifier: @servicePickerFlyout, vertical: align_bottom,
                                                        width: 220, height: 25);
                            }
                        }
                    }

                    synthetic_fill_prompt(identifier: @promptEditText, width: contentWidth + 45, maxChars: 500, lines: 5, verticalResizeBehavior: sizeSuperView);
                }
                
                row(horizontal: align_fill)
                {
                    TOptional(bind: @showSourceTool, horizontal: align_fill)
                    {
                        synthetic_fill_source_tool_slot(identifier: @sourceToolSlot, horizontal: align_left, width: 26, height: 26);
                    }

                    TOptional(bind: @showIsolateSubjectButton, horizontal: align_left) {
                        TIconButton(identifier: @isolateSubjectButton,
                                    width: bar_button_width,
                                    height: text_button_height,
                                    horizontal: align_right,
                                    vertical: align_center,
                                    dataType: 'int32',
                                    frame: 2,
                                    fontColorFromTheme: true,
                                    alignIconTextTogether: true,
                                    iconRootName: 'RemoveImageBackground',
                                    tooltip: '$$$/SyntheticFill/RemoveBackground=Create a new layer with the object background removed');
                    }

                    TOptional(bind: @showReferenceImageTray, horizontal: align_fill)
                    {
                        tiny_thumb_tray_view(identifier: @referenceImageTrayView, horizontal: align_fill,
                                            vertical: align_fill, height: bar_button_height);
                    }

                    TOptional(bind: @showOptionsFlyoutButton, horizontal: align_right, vertical: align_center, height: bar_button_height) {
                        TFlyoutIconButton(identifier : @optionsFlyoutButton, horizontal: align_right,
                                          vertical: align_center, placement: place_row, spacing: gSmallGap)
                        {
                            TCustomDrawFlyoutControl(identifier: 'gfly', vertical: align_center,
                                                     width: gToolOptionsIconWidth, height: gToolOptionsIconHeight);
                        }
                    }

                    TOptional(bind: @showGenFillReferenceFlyoutButton, horizontal: align_right, vertical: align_center, height: bar_button_height) {
                        TFlyoutIconButton(identifier : @genFillReferenceFlyoutButton, horizontal: align_right,
                                          vertical: align_center, placement: place_row, spacing: gSmallGap, richtooltip: false,
                                          flyoutControlId: @grfi,
                                          tooltip: '$$$/SyntheticFill/GenFill/ReferenceImage/Tooltip=Edit your reference image.')
                        {
                            TCustomDrawFlyoutControl(identifier: @grfi, vertical: align_center, richtooltip: true,
                                                     width: gToolOptionsIconWidth, height: gToolOptionsIconHeight);
                        }
                    }

                    //flyoutControlId should be same as identifier of TCustomDrawFlyoutControl
                    TOptional(bind: @showGenerateImageReferenceFlyoutButton, horizontal: align_right, vertical: align_center, height: bar_button_height) {
                        TFlyoutIconButton(identifier : @generateImageReferenceFlyoutButton, horizontal: align_right,
                                          vertical: align_center, placement: place_row, spacing: gSmallGap,
                                          tooltip: '$$$/SyntheticFill/GenImage/ReferenceImage/Tooltip=Edit your reference image.',
                                          flyoutControlId: @generateImageReferenceFlyout)
                        {
                            TCustomDrawFlyoutControl(identifier: @generateImageReferenceFlyout, vertical: align_center,
                                                     width: gToolOptionsIconWidth, height: gToolOptionsIconHeight, richtooltip: true);
                        }
                    }
                    
                    //flyoutControlId should be same as identifier of TCustomDrawFlyoutControl
                    TOptional(bind: @showGenerateImageFlyoutButton, horizontal: align_right, vertical: align_center, height: bar_button_height) {
                        TFlyoutIconButton(identifier : @generateImageFlyoutButton, horizontal: align_right,
                                          vertical: align_center, placement: place_row, spacing: gSmallGap,
                                          tooltip: '$$$/SyntheticFillPanel/GenImage/StyleEffects/Tooltip=Edit your style effects',
                                          flyoutControlId: @generateImageEffectsFlyout)
                        {
                            TCustomDrawFlyoutControl(identifier: @generateImageEffectsFlyout, vertical: align_center,
                                                     width: gToolOptionsIconWidth, height: gToolOptionsIconHeight, richtooltip: true);
                        }
                    }
                    
                    TIconButton(identifier: @generateButton,
                                width: bar_button_width,
                                height: text_button_height,
                                horizontal: align_right,
                                vertical: align_center,
                                dataType: 'int32',
                                frame: 2,
                                fontColorFromTheme: true,
                                alignIconTextTogether: true,
                                iconRootName: 'CxUI_GenFill',
                                name: '$$$/SyntheticFill/Generate=Generate',
                                layoverText: '$$$/SyntheticFill/Button/Generate/Label=Generate',
                                layoverTextPosition: align_right);
                }
            }
            
            TOptional(bind: @showVariations, horizontal: align_fill)
            {
                TOptional(bind: @showGeneration, horizontal: align_fill)
                {
                    TSeparator(height: 2, horizontal: align_fill);
                }

                row(horizontal: align_fill, child_vertical: align_center)
                {
                    TTurndownArrow(identifier: @variationsDisclosure, name: '$$$/SyntheticFill/Variations=Variations');
                    
                    TStaticText(identifier: @variationStatusText, font: staticSmallFont, horizontal: align_right, name: '$$$/SyntheticFill/VariationStatusPlaceholder=00/00');

                    TOptional(bind: @showFourGridButton, horizontal: align_right)
                    {
                        TIconButton(identifier: @fourGrid, dataType: 'int32',
                                    width: grid_button_width, height: grid_button_height,
                                    horizontal: align_right, iconRootName: 'FourGrid',
                                    tooltip: '$$$/SyntheticFill/GridButton/LargeThumbnails=Large Thumbnails');
                    }
                    TOptional(bind: @showNineGridButton, horizontal: align_right)
                    {
                        TIconButton(identifier: @nineGrid, dataType: 'int32',
                                    width: grid_button_width, height: grid_button_height,
                                    horizontal: align_right, iconRootName: 'NineGrid',
                                    tooltip: '$$$/SyntheticFill/GridButton/SmallThumbnails=Small Thumbnails');
                    }
                }

                TOptional(bind: @discloseVariations, horizontal: align_fill)
                {
                    generative_variations_view(identifier: @variationsView, horizontal: align_fill, vertical: align_fill, height: 75);
                }
            }
            TOptional(bind: @showAiPolicy, horizontal: align_fill) {
                row(identifier: @aiPolicy,
                horizontal: align_fill,
                    margin: [ 30, 0, 0, 0 ],
                    spacing: 8) {
                    TIconImageView(horizontal: align_left,
                                   iconRootName: 'AiPolicyIcon',
                                   vertical   : align_center,
                                   width: ai_policy_icon_width,
                                   height: ai_policy_icon_height);
                                    
                    column(identifier: @aiPolicy,
                        spacing: 0,
                        horizontal: align_fill) {
                        TStaticText(identifier: @aiPolicyText,
                                    customFontSize: text_size,
                                    horizontal : align_fill,
                                    vertical   : align_center,
                                    autoWrap   : true,
                                    lines: 3,
                                    //width: contentWidth - (ai_policy_icon_width + 8),
                                    name: '$$$/SyntheticFill/PolicyLabelPanel=Adobe does not use your images^nor data to train our generative AI^nmodels.');
                                                
                        TStaticText(identifier: @learnMoreLink,
                                    horizontal: align_left,
                                    vertical   : align_center,
                                    customFontSize: text_size,
                                    autoWrap   : true,
                                    name: '$$$/SyntheticFill/LearnLabel=Learn more');
                    }
                }
            }
        }
    }
}