Mini Kabibi Habibi

Current Path : C:/Program Files/Adobe/Adobe Photoshop 2025/Required/layouts/Actions/Panels/
Upload File :
Current File : C:/Program Files/Adobe/Adobe Photoshop 2025/Required/layouts/Actions/Panels/ModernActionsPanel.eve

layout ModernActionsPanel
    {
    interface:
        detailViewIconVisible  : false;
        openRecipeCardViewVisible: false;
        actionShortcutTextVisible: false;
        createNewActionView    : false;
        showSearchBar          <== !detailViewIconVisible && !createNewActionView && !openRecipeCardViewVisible;
        showSuggestionsButton   : true;
        showLibraryButton       : true;
        showLibraryView         : false;
        showSuggestionsView     : true;
        showIconList            : true;
        showLibraryAndSuggestions: true;
        showSearchView          :false;
        showSearchSuggestionsView: false;
        showTabButtons          : true;
        showTagSuggestionsWaitState: true;
        showTagSuggestionsList     <== showLibraryAndSuggestions && showSuggestionsView && !showTagSuggestionsWaitState;
        showFeaturedSuggestionsWaitState: true;
        showFeaturedSuggestionsList     <== showLibraryAndSuggestions && showSuggestionsView && !showFeaturedSuggestionsWaitState;
        showSearchOnboarding    : true;
        showSuggestionsRefreshButton: false;
        showSearchBarTopMargin  <== !showSearchOnboarding;

    constant:
        zSearchIcon		   : 'ActionSearchIcon';
        grid_button_width: 29;
        grid_button_height: 25;
        zBackIcon           : 'BackArrow';
        zInfoIcon           : 'PL_Info';
        zMoreIcon           : 'CxUI_More';
        search_suggestion_button_width  : 30;
        search_suggestion_button_height : 24;
        image_suggestions_height        : 160;
        wait_state_height               : image_suggestions_height + 20;

    view TView()
        {
        column(
            horizontal  : align_fill,
            vertical    : align_fill,
            spacing     : -1)
            {
            TOptional(bind        :@openRecipeCardViewVisible,
                vertical            :align_fill,
                horizontal        :align_fill)
                {
                    row(height:40,horizontal    : align_fill, child_vertical: align_center,margin : [9,10,0,10])
                    {
                         TIconButton(identifier: @recipeCardBackButton,
                                    dataType: 'int32',
                                    vertical: align_center,
                                    horizontal    : align_left,
                                    iconRootName : zBackIcon);
                         TIconButton(identifier: @recipeCardMoreButton,
                                    dataType: 'int32',
                                    vertical: align_center,
                                    horizontal    : align_right,
                                    iconRootName : zMoreIcon);
                    }
                    row(
                        horizontal       : align_fill,
                        vertical        : align_top,
                        margin          :[0,10,0,10]
                    	){
                        TActionThumbNameDescriptionView(horizontal       : align_fill,
                                                    vertical        : align_top,
                                                    placement       : place_column,
                                                    height          :135)
                        {
                                row(margin  :[8,0,0,0],
                                    vertical            :align_top,
                                    horizontal        :align_fill
                                    )
                                    {
                                        RoundedIconImageView(identifier : @actionThumbnail,
                                                    iconRootName: 'ActionDefaultThumbnailRecipeCard',
                                                    horizontal: align_center,
                                                    height : 56,
                                                    width  : 56
                                                    );
                                    }
                                row(margin  :[-4,12,0,12],
                                    vertical            :align_top,
                                    horizontal        :align_fill
                                    )
                                    {
                                        TStaticText (
                                            identifier  : @actionNameText,
                                            name        : '$$$/private/ActionsPanel/ModernView/Button/RecipeCard/ActionName=Actions Name',
                                            vertical    : align_top,
                                            horizontal  : align_left,
                                            font        : staticFont
                                        );
                                    }
                                TOptional(bind        :@actionShortcutTextVisible,
                                      vertical            :align_fill,
                                      horizontal        :align_fill
                                      ){
                                    row(vertical            :align_top,
                                        horizontal        :align_fill,
                                        margin  :[-2,12,0,12]){
                                        TStaticText (
                                            identifier  : @actionShortcutText,
                                            name        : '$$$/private/ActionsPanel/ModernView/Button/RecipeCard/ActionShortcut=Action Shortcut',
                                            vertical    : align_top,
                                            horizontal  : align_left,
                                            font         : staticSmallFont);
                                        }
                                }
                                row(horizontal: align_left,
                                    margin  :[-4,12,0,12]) {
                                    row(child_vertical: align_center) {
                                        TStaticText(vertical: align_bottom,
                                                    lines: 2, auto_wrap: true,
                                                    identifier: @actionDescriptionText,
                                                    name: '$$$/private/ActionsPanel/ModernView/Button/RecipeCard/ActionDescription=Description');
                                    }
                                }
                        }
                    }
                

                row(horizontal	: align_fill, child_vertical: align_center,spacing: 10, margin  :[0,10,0,10])
                    {
                        TStaticText(identifier: @stepsText,
                                 width: 40,
                                 height: 15,
                                 horizontal: align_left,
                                 vertical: align_center,
                                 name:  '$$$/ActionsPanel/ModernView/Steps/Name=Steps');
                        TActionsPanelIconView(
                            identifier    : @actionOpenViewIcons,
                            height        : 20,
                            horizontal    : align_fill);
                    }
                TScroller(
                        horizontal      : align_fill,
                        vertical        : align_fill,
                        noFrame         : true,
                        verticalScroll  : true)
                        {
                        TActionThumbnailView(
                                identifier  : @actionsCommandList,
                                horizontal  : align_fill,
                                vertical    : align_fill);
                        }
                TBevelViewDown(height: 2, width: 232,vertical:align_bottom, horizontalResizeBehavior: sizeRelSuperView, horizontal: align_fill);

                row(height:38,
                    vertical:align_bottom,
                    horizontal    : align_fill,
                    child_vertical: align_center,
                    margin  :[-1,0,10,14]){
                        TModernTextButton(identifier: @ApplyButtonRecipeCardView,
                                        name: '$$$/ActionsPanel/ModernView/Button/RecipeCardButton/Apply=Apply',
                                        vertical: align_center,
                                        horizontal: align_right,
                                        height: 22,
                                        font        : staticFont);
                }
        }

			column(horizontal	: align_fill)
				{
                TOptional(
					bind		: @showSearchOnboarding,
					value		: true,
					spacing		: 0,
                    horizontal  : align_fill,
                    vertical    : align_fill,
					margin		: [8, 10, 0, 10])
					{
                     TActionSearchOnboardingBackgroundView(horizontal: align_fill,
                                                    vertical: align_fill) {
                        TIconImageView(iconRootName: 'ActionSearchOnboarding',
                                    horizontal: align_fill,
                                    width: 220,
                                    height: 80);
                        }
                    }
                    
                TOptional(
					bind		: @showSearchBarTopMargin,
					value		: true,
					horizontal  : align_fill,
					spacing		: 0)
					{
                        TView(margin: [10, 0, 0, 0]) {}
                    }
                    
				TOptional(
					bind		: @showSearchBar,
					value		: true,
					horizontal  : align_fill,
					spacing		: 0,
					margin		: [0, 10, 10, 10])
					{
#ifdef MacEve
// This is a hack for handling all focus related errors on mac. Currently, whenever we reopen the actions panel, the search bar assumes an 
// incomplete focus (on Mac) which causes a range of issues, that would require handlings at multiple places (and make the code more complex). 
// Adding a non-visible TEditText here eliminates these issues by assuming the focus whenever actions panel is reopened.
                        TEditText (
                            width: 0,
                            height: -2, 
                            margin: [0, 0, 0, 0]);
#endif
                        row(horizontal: align_fill, child_vertical: align_center)
                            {
                                TSearchBarView(
                                    identifier	: @actionSearchBar,
                                    horizontal  : align_fill,
                                    height      : 24)
                                    {
                                    row(horizontal: align_fill, child_vertical: align_center, vertical: align_center, margin: [0, 10, 0, 5])
                                        {
                                            TIconImageView(identifier: @actionSearchIcon, vertical: align_center, iconRootName : zSearchIcon);
                                            TEditText (identifier: @actionSearchText,
                                                width: 20,
                                                height: 19,
                                                horizontal : align_fill,
                                                maxChars: 250,
                                                frame: 0);
                                            }
                                    }
                                
                                TIconButton(
                                    identifier          : @searchCancelButton,
                                    dataType            : 'int32',
                                    horizontal          : align_right,
                                    vertical            : align_center,
                                    width               : 14,
                                    height              : 14,
                                    useDefaultIcon      : false,
                                    drawDepressed       : false,
                                    iconRootName        : 'CancelBtn',
                                    tooltip             : '$$$/ActionsPanel/ModernView/Button/Cancel/ToolTip=Exit Search');
                            
                            }
					}
				}
            
            TBevelViewDown(height: 2, width: 232, horizontalResizeBehavior: sizeRelSuperView, horizontal: align_fill);
            
            TOptional(bind            : @showLibraryAndSuggestions,
                      horizontal      : align_fill,
                      vertical        : align_fill,
                      spacing         : 0)
                {
                TOptional(
                    bind        : @showTabButtons,
                    horizontal  : align_fill,
                    margin      : [5, 2, 8, 7])
                    {
                        row(horizontal	: align_fill, spacing: -5)
                            {
                                TOptional(
                                    bind        : @showSuggestionsButton)
                                    {
                                        TModernTextButton(identifier: @suggestionsButton,
                                                 width: 40,
                                                 height: 15,
                                                 horizontal: align_left,
                                                 vertical: align_center,
                                                 name:  '$$$/ActionsPanel/ModernView/Button/SuggestionsButton/Name=Suggested',
                                                 tooltip: '$$$/ActionsPanel/ModernView/Button/SuggestionsButton/Tooltip=Suggested');
                                    }
                                TOptional(
                                    bind        : @showLibraryButton)
                                    {
                                        TModernTextButton(identifier: @libraryButton,
                                                 width: 40,
                                                 height: 15,
                                                 horizontal: align_left,
                                                 vertical: align_center,
                                                 name:  '$$$/ActionsPanel/ModernView/Button/LibraryButton/Name=Yours',
                                                 tooltip: '$$$/ActionsPanel/ModernView/Button/LibraryButton/Tooltip=Yours');
                                    }
                                TOptional(
                                    bind        : @showIconList,
                                    horizontal  : align_fill)
                                    {
                                        TActionsPanelIconView(
                                            identifier    : @actionsPanelIcons,
                                            height        : 20,
                                            horizontal    : align_fill);
                                    }
                            }
                    }
                    
                    TOptional(bind            : @showLibraryView,
                              horizontal      : align_fill,
                              vertical        : align_fill)
                        {
                            TScroller(
                                horizontal      : align_fill,
                                vertical        : align_fill,
                                noFrame         : true,
                                verticalScroll  : true)
                                {
                                TActionThumbnailView(
                                        identifier  : @actionsList,
                                        horizontal  : align_fill,
                                        vertical    : align_fill);
                                }
                        }
                        
                    TOptional(bind : @showSuggestionsView,
                                horizontal      : align_fill,
                                vertical        : align_fill)
                        {
                            TScroller(
                                identifier  : @suggestionsScroller,
                                horizontal      : align_fill,
                                vertical        : align_fill,
                                noFrame         : true,
                                verticalScroll  : true)
                            {
                                TActionSuggestionView(
                                    identifier  : @suggestionsList,
                                    horizontal: align_fill,
                                    vertical: align_fill)
                                    {
                                    column(
                                        horizontal  : align_fill,
                                        vertical    : align_fill)
                                        {
                                                column(
                                                    horizontal  : align_fill,
                                                    vertical    : align_top,
                                                    spacing: 5)
                                                    {
                                                    row(
                                                        horizontal  : align_fill, margin:[0, 12, 0, 10])
                                                        {
                                                        TActionSuggestionHeaderView(placement: place_row,horizontal  : align_fill)
                                                            {
                                                            TIconImageView(horizontal: align_left, vertical: align_center, iconRootName: 'GenerativeLayer', width: 14, height: 14);
                                                            TStaticText(horizontal: align_left, vertical: align_center,
                                                                    name: '$$$/SuggestionsView/Labels/Suggestions/Name=Based on your image', useDefaultColor: true);
                                                            TOptional(bind    : @showSuggestionsRefreshButton,
                                                                    horizontal: align_right,
                                                                    vertical: align_fill)
                                                                {
                                                                    TIconButton(identifier: @suggestionsRefreshButton,
                                                                            dataType            : 'int32',
                                                                            horizontal          : align_right,
                                                                            vertical            : align_fill,
                                                                            iconRootName        : 'RefreshView',
                                                                            useDefaultIcon      : false,
                                                                            drawDepressed       : false,
                                                                            width               : 12,
                                                                            height              : 8);
                                                                }
                                                            }
                                                        }
                                                        
                                                    TOptional(bind        : @showTagSuggestionsWaitState,
                                                        horizontal      : align_fill,
                                                        vertical        : align_fill,
                                                        margin          : [5, 10, 0, 10])
                                                    {
                                                        TActionWaitStateBackgroundView(horizontal       : align_fill,
                                                                                        vertical        : align_fill,
                                                                                        placement       : place_column,
                                                                                        height          : wait_state_height)
                                                            {
                                                                column(horizontal       : align_fill, vertical: align_center ) {
                                                                    TIconImageView(horizontal: align_center, vertical: align_fill, iconRootName: 'ActionSuggestionPopulateIcon');
                                                                    TStaticText (
                                                                        identifier  : @suggestionsWaitText,
                                                                        name        : 'Choosing relevant Actions...',
                                                                        vertical    : align_fill,
                                                                        max_width   : 40,
                                                                        multiline   : true,
                                                                        lines       : 3,
                                                                        horizontal  : align_center,
                                                                        autoWrap    : true,
                                                                        font        : staticSmallFont,
                                                                        wincontrol  : false
                                                                    );
                                                            }
                                                        }
                                                    }
                                                    
                                                    TOptional(bind        : @showTagSuggestionsList,
                                                        horizontal      : align_fill,
                                                        vertical        : align_fill)
                                                        {
                                                            TActionThumbnailView(
                                                                    identifier  : @imageSuggestions,
                                                                    horizontal  : align_fill,
                                                                    vertical    : align_fill,
                                                                    height      : image_suggestions_height);
                                                        
                                                        column(
                                                            horizontal      : align_fill,
                                                            vertical        : align_top)
                                                            {
                                                                TStaticText(identifier: @feedback_link,
                                                                            horizontal: align_center,
                                                                            name: '$$$/SuggestionsView/FeedbackLink/Name=Give feedback on Actions',
                                                                            customFontSize: 12,
                                                                            autoWrap: true,
                                                                            height  : 24);
                                                            }
                                                        }
                                                    }

                                            column(
                                                horizontal      : align_fill,
                                                vertical        : align_top,
                                                spacing: 5)
                                                {
                                                row(
                                                    horizontal  : align_fill, margin:[0, 10, 0, 0]
                                                    )
                                                    {
                                                    TIconImageView(horizontal: align_left, vertical: align_center, iconRootName: 'ActionFeaturedSuggestionIcon',  width: 14, height: 14);
                                                    TStaticText(horizontal: align_left, vertical: align_center,
                                                            name: '$$$/SuggestionsView/Labels/Featured/Name=Featured essentials', useDefaultColor: true);
                                                    }
                                                TOptional(bind        : @showFeaturedSuggestionsWaitState,
                                                        horizontal      : align_fill,
                                                        vertical        : align_fill,
                                                        height          : wait_state_height)
                                                    {
                                                        TView(margin: [0, 0, 0, 0]) {}
                                                    }
                                                
                                                TOptional(bind        : @showFeaturedSuggestionsList,
                                                        horizontal      : align_fill,
                                                        vertical        : align_fill)
                                                    {
                                                        TActionThumbnailView(
                                                                identifier  : @featuredSuggestions,
                                                                horizontal  : align_fill,
                                                                vertical    : align_fill,
                                                                height      : image_suggestions_height);

                                                    }
                                                
                                                }
                                        }
                                    }
                            }
                        }
                }

            TOptional(bind          : @showSearchSuggestionsView,
                        horizontal  : align_fill,
                        vertical    : align_fill)
            {
                TIconButtonCluster_int32(
                    frame       : gClusterFrame,
                    identifier  : @searchSuggestionCluster,
                    vertical    : align_top,
                    placement   : place_column,
                    spacing     : 6,
                    margin      : [10, 10, 10, 0])
                {
                    TIconButton(identifier      : @searchSuggestion_1,
                                height          : search_suggestion_button_height,
                                width           : search_suggestion_button_width,
                                horizontal      : align_left,
                                vertical        : align_center,
                                dataType        : 'int32',
                                frame           : 2,
                                alignIconTextTogether: true,
                                iconTextAlignment: align_left,
                                fontColorFromTheme: true,
                                iconRootName    : zSearchIcon,
                                initialValue    : 0,
                                hiliteStrokeSize: 2,
                                hiliteStrokeColorContrast: true,
                                button_style    : 'standard',
                                layoverTextPosition: align_right);

                    TIconButton(identifier      : @searchSuggestion_2,
                                height          : search_suggestion_button_height,
                                width           : search_suggestion_button_width,
                                horizontal      : align_left,
                                vertical        : align_center,
                                dataType        : 'int32',
                                frame           : 2,
                                alignIconTextTogether: true,
                                iconTextAlignment: align_left,
                                fontColorFromTheme: true,
                                iconRootName    : zSearchIcon,
                                initialValue    : 1,
                                hiliteStrokeSize: 2,
                                hiliteStrokeColorContrast: true,
                                button_style    : 'standard',
                                layoverTextPosition: align_right);

                    TIconButton(identifier      : @searchSuggestion_3,
                                height          : search_suggestion_button_height,
                                width           : search_suggestion_button_width,
                                horizontal      : align_left,
                                vertical        : align_center,
                                dataType        : 'int32',
                                frame           : 2,
                                alignIconTextTogether: true,
                                iconTextAlignment: align_left,
                                fontColorFromTheme: true,
                                iconRootName    : zSearchIcon,
                                initialValue    : 2,
                                hiliteStrokeSize: 2,
                                hiliteStrokeColorContrast: true,
                                button_style    : 'standard',
                                layoverTextPosition: align_right);

                    TIconButton(identifier      : @searchSuggestion_4,
                                height          : search_suggestion_button_height,
                                width           : search_suggestion_button_width,
                                horizontal      : align_left,
                                vertical        : align_center,
                                dataType        : 'int32',
                                frame           : 2,
                                alignIconTextTogether: true,
                                iconTextAlignment: align_left,
                                fontColorFromTheme: true,
                                iconRootName    : zSearchIcon,
                                initialValue    : 3,
                                hiliteStrokeSize: 2,
                                hiliteStrokeColorContrast: true,
                                button_style    : 'standard',
                                layoverTextPosition: align_right);

                    TIconButton(identifier      : @searchSuggestion_5,
                                height          : search_suggestion_button_height,
                                width           : search_suggestion_button_width,
                                horizontal      : align_left,
                                vertical        : align_center,
                                dataType        : 'int32',
                                frame           : 2,
                                alignIconTextTogether: true,
                                iconTextAlignment: align_left,
                                fontColorFromTheme: true,
                                iconRootName    : zSearchIcon,
                                initialValue    : 4,
                                hiliteStrokeSize: 2,
                                hiliteStrokeColorContrast: true,
                                button_style    : 'standard',
                                layoverTextPosition: align_right);
                }
            }
                
             TOptional(bind             : @showSearchView,
                        horizontal      : align_fill,
                        vertical        : align_fill)
                {
                TScroller(
                        horizontal      : align_fill,
                        vertical        : align_fill,
                        noFrame         : true,
                        verticalScroll  : true)
                        {
                        TActionThumbnailView(
                                identifier  : @searchList,
                                horizontal  : align_fill,
                                vertical    : align_fill);
                                
                        }
                }
            }
		}
	}