Create plugin with popup list

This example shows how to create a plugin with popup items. Click on the content to see the plugin button on the toolbar. See more about how to create plugins.

Code

<!DOCTYPE html>
<html>
<head>
    <title>Redactor X</title>
    <meta charset="utf-8">

    <!-- css -->
    <link rel="stylesheet" href="/your-dist-path/redactorx.min.css" />
</head>
<body>
    <!-- element -->
    <textarea id="entry">
        <p>Content</p>
    </textarea>

    <!-- js -->
    <script src="/your-dist-path/redactorx.min.js"></script>


    <!-- plugin code with fontawesome icon -->
    <script>
    RedactorX.add('plugin', 'myplugin', {
        start: function() {
            this.app.toolbar.add('mybutton', {
                title: 'My Button',
                icon: '<i class="fa fa-superpowers"></i>',
                command: 'myplugin.popup'
            });
        },
        popup: function(params, button) {
            // create
            this.app.popup.create('myplugin', {
                items: {
                    item1: {
                        title: 'Item 1',
                        command: 'myplugin.toggle'
                    },
                    item2: {
                        title: 'Item 2',
                        command: 'myplugin.toggle'
                    }
                }
            });

            // open
            this.app.popup.open({ button: button });
        },
        toggle: function(params, button, name) {
            this.app.popup.close();

            alert('Item "' + name + '" is toggled!');
        }
    });
    </script>


    <!-- call -->
    <script>
    RedactorX('#entry', {
        plugins: ['myplugin']
    });
    </script>
</body>
</html>