<?php

namespace GriffinForms\Admin\Language;

class FormTheme extends \GriffinForms\Admin\Language\Format
{
    protected static $instance;

    protected function headingCreateFormTheme()
    {
        return __('New Theme', 'griffinforms-form-builder');
    }

    protected function headingEditFormTheme()
    {
        return __('Edit Theme', 'griffinforms-form-builder');
    }

    protected function nameLabel()
    {
        return __('Theme Name', 'griffinforms-form-builder');
    }

    protected function nameDescription()
    {
        return __('Give your theme a unique name. This helps you identify it when applying to forms.', 'griffinforms-form-builder');
    }

    protected function headingLabel()
    {
        return __('Theme Title', 'griffinforms-form-builder');
    }

    protected function headingDescription()
    {
        return __('Optional display title for your theme. Can be different from the theme name.', 'griffinforms-form-builder');
    }

    protected function descriptionLabel()
    {
        return __('Theme Description', 'griffinforms-form-builder');
    }

    protected function descriptionDescription()
    {
        return __('Describe the purpose or design concept of this theme. Helpful for remembering its use.', 'griffinforms-form-builder');
    }

    protected function formStyleLabel()
    {
        return __('Form Styling', 'griffinforms-form-builder');
    }

    protected function pageStyleLabel()
    {
        return __('Page Styling', 'griffinforms-form-builder');
    }

    protected function rowStyleLabel()
    {
        return __('Row Styling', 'griffinforms-form-builder');
    }

    protected function fieldStyleLabel()
    {
        return __('Field Styling', 'griffinforms-form-builder');
    }

    protected function buttonStyleLabel()
    {
        return __('Button Styling', 'griffinforms-form-builder');
    }

    protected function designNavTab()
    {
        return __('Design', 'griffinforms-form-builder');
    }

    protected function createItem()
    {
        return __('Save Theme', 'griffinforms-form-builder');
    }

    protected function categoryLabel()
    {
        return __('Category', 'griffinforms-form-builder');
    }

    protected function categoryDescription()
    {
        return __('Organize your theme by category. Useful for grouping similar themes.', 'griffinforms-form-builder');
    }

    protected function categoryTableHeader()
    {
        return __('Category', 'griffinforms-form-builder');
    }

    protected function headingTableHeader()
    {
        return __('Title', 'griffinforms-form-builder');
    }

    protected function descriptionTableHeader()
    {
        return __('Description', 'griffinforms-form-builder');
    }

    protected function duplicateRowAction()
    {
        return __('Duplicate', 'griffinforms-form-builder');
    }

    protected function exportRowAction()
    {
        return __('Export', 'griffinforms-form-builder');
    }

    protected function categoryDefault()
    {
        return __('Default', 'griffinforms-form-builder');
    }

    protected function categoryLight()
    {
        return __('Light', 'griffinforms-form-builder');
    }

    protected function categoryDark()
    {
        return __('Dark', 'griffinforms-form-builder');
    }

    protected function categoryColorful()
    {
        return __('Colorful', 'griffinforms-form-builder');
    }

    protected function categoryMinimal()
    {
        return __('Minimal', 'griffinforms-form-builder');
    }

    protected function categoryModern()
    {
        return __('Modern', 'griffinforms-form-builder');
    }

    protected function categoryCustom()
    {
        return __('Custom', 'griffinforms-form-builder');
    }

    protected function responsiveNote()
    {
        return __('Note: When forms render inside narrow widget areas or mobile screens, GriffinForms automatically applies minor layout adjustments to keep your theme readable.', 'griffinforms-form-builder');
    }
    
    protected function builtInNameNotice()
    {
        return __('Built-in theme names cannot be changed. Duplicate to customize.', 'griffinforms-form-builder');
    }

    public static function getInstance()
    {
        if (self::$instance == null) {
            self::$instance = new FormTheme();
        }

        return self::$instance;
    }

    private function __construct()
    {
    }
}
