MonkeyConfig Modern

Easy configuration dialog builder for user scripts. Updated version of MonkeyConfig that supports color picker fields.

This script should not be not be installed directly. It is a library for other scripts to include with the meta directive // @require https://greasyfork.org/scripts/395037-monkeyconfig-modern/code/MonkeyConfig%20Modern.js?version=764968

Author
david-hosier
Ratings
0 0 0
Version
0.0.1.20200112024419
Created
Updated
License
N/A
Applies to
All sites

Author's Description

MonkeyConfig

MonkeyConfig is a simple configuration library for user scripts. It allows for
easy creation of configuration dialog windows and takes care of storing and
retrieving the configuration parameters for the script.

Usage Example

Tell your user script to use MonkeyConfig by placing a @require directive in
the metadata section:

// ==UserScript==
// @name           AwesomeScript
// @require        https://raw.github.com/odyniec/MonkeyConfig/master/monkeyconfig.js

Then, call MonkeyConfig() to construct your configuration object:

var cfg = new MonkeyConfig({
    title: 'AwesomeScript Configuration',
    menuCommand: true,
    params: {
        font_size: {
            type: 'select',
            choices: [ 'Small', 'Medium', 'Large' ],
            default: 'Medium'
        },
        auto_adjust: {
            type: 'checkbox',
            default: true
        }
    }
});

And that's pretty much it. MonkeyConfig builds a configuration dialog based on
the passed data. It also adds a menu item in the User Script Commands menu to open the
configuration dialog.

At any time in your script, you can retrieve the value of a configuration
parameter with the get() method:

var auto_adjust = cfg.get('auto_adjust');

and set a new value using the set() method:

cfg.set('font_size', 'Small');

Supported Data Types

  • checkbox
  • number
  • select
  • text
  • color
    • default value must be a hex color value