balmet.com

Unnamed repository; edit this file 'description' to name the repository.
Log | Files | Refs

model.php (3132B)


      1 <?php
      2 
      3 namespace Elementor\Core\Settings\EditorPreferences;
      4 
      5 use Elementor\Controls_Manager;
      6 use Elementor\Core\Settings\Base\Model as BaseModel;
      7 
      8 if ( ! defined( 'ABSPATH' ) ) {
      9 	exit; // Exit if accessed directly
     10 }
     11 
     12 class Model extends BaseModel {
     13 
     14 	/**
     15 	 * Get element name.
     16 	 *
     17 	 * Retrieve the element name.
     18 	 *
     19 	 * @return string The name.
     20 	 * @since 2.8.0
     21 	 * @access public
     22 	 *
     23 	 */
     24 	public function get_name() {
     25 		return 'editor-preferences';
     26 	}
     27 
     28 	/**
     29 	 * Get panel page settings.
     30 	 *
     31 	 * Retrieve the page setting for the current panel.
     32 	 *
     33 	 * @since 2.8.0
     34 	 * @access public
     35 	 */
     36 	public function get_panel_page_settings() {
     37 		return [
     38 			'title' => esc_html__( 'User Preferences', 'elementor' ),
     39 		];
     40 	}
     41 
     42 	/**
     43 	 * @since 3.1.0
     44 	 * @access protected
     45 	 */
     46 	protected function register_controls() {
     47 		$this->start_controls_section(
     48 			'preferences',
     49 			[
     50 				'tab' => Controls_Manager::TAB_SETTINGS,
     51 				'label' => esc_html__( 'Preferences', 'elementor' ),
     52 			]
     53 		);
     54 
     55 		$this->add_control(
     56 			'ui_theme',
     57 			[
     58 				'label' => esc_html__( 'UI Theme', 'elementor' ),
     59 				'type' => Controls_Manager::SELECT,
     60 				'description' => esc_html__( 'Set light or dark mode, or use Auto Detect to sync it with your OS setting.', 'elementor' ),
     61 				'default' => 'auto',
     62 				'options' => [
     63 					'auto' => esc_html__( 'Auto Detect', 'elementor' ),
     64 					'light' => esc_html__( 'Light', 'elementor' ),
     65 					'dark' => esc_html__( 'Dark', 'elementor' ),
     66 				],
     67 			]
     68 		);
     69 
     70 		$this->add_control(
     71 			'panel_width',
     72 			[
     73 				'label' => esc_html__( 'Panel Width', 'elementor' ),
     74 				'type' => Controls_Manager::SLIDER,
     75 				'range' => [
     76 					'px' => [
     77 						'min' => 200,
     78 						'max' => 680,
     79 					],
     80 				],
     81 				'default' => [
     82 					'size' => 300,
     83 				],
     84 			]
     85 		);
     86 
     87 		$this->add_control(
     88 			'edit_buttons',
     89 			[
     90 				'label' => esc_html__( 'Editing Handles', 'elementor' ),
     91 				'type' => Controls_Manager::SWITCHER,
     92 				'description' => esc_html__( 'Show editing handles when hovering over the element edit button.', 'elementor' ),
     93 			]
     94 		);
     95 
     96 		$this->add_control(
     97 			'lightbox_in_editor',
     98 			[
     99 				'label' => esc_html__( 'Enable Lightbox In Editor', 'elementor' ),
    100 				'type' => Controls_Manager::SWITCHER,
    101 				'default' => 'yes',
    102 			]
    103 		);
    104 
    105 		$this->add_control(
    106 			'responsive_heading',
    107 			[
    108 				'label' => __( 'Responsive Preview', 'elementor' ),
    109 				'type' => Controls_Manager::HEADING,
    110 				'separator' => 'before',
    111 			]
    112 		);
    113 
    114 		$this->add_control(
    115 			'show_hidden_elements',
    116 			[
    117 				'label' => __( 'Hidden Elements', 'elementor' ),
    118 				'type' => Controls_Manager::SWITCHER,
    119 				'label_on' => 'Show',
    120 				'label_off' => 'Hide',
    121 				'default' => 'yes',
    122 			]
    123 		);
    124 
    125 		$this->add_control(
    126 			'default_device_view',
    127 			[
    128 				'label' => esc_html__( 'Default Device View ', 'elementor' ),
    129 				'type' => Controls_Manager::SELECT,
    130 				'default' => 'default',
    131 				'options' => [
    132 					'default' => esc_html__( 'Default', 'elementor' ),
    133 					'mobile' => esc_html__( 'Mobile', 'elementor' ),
    134 					'tablet' => esc_html__( 'Tablet', 'elementor' ),
    135 					'desktop' => esc_html__( 'Desktop', 'elementor' ),
    136 				],
    137 			]
    138 		);
    139 
    140 		$this->end_controls_section();
    141 	}
    142 }