PINE LIBRARY
Updated ColorScheme

Library "ColorScheme"
A color scheme generator.
init() Initiate the array data registry that will hold the color profile. Returns: tuple with 2 arrays (string array, color array)
check_registry_integrity(key_registry, color_registry) Checks the integrity of the registers.
Parameters:
Returns: void.
add(key_registry, color_registry, key, value) Add new (key, color) entry to the registry.
Parameters:
Returns: void.
get_color(key_registry, color_registry, key) Get a (key, color) entry from the registry.
Parameters:
Returns: void.
edit_key(key_registry, color_registry, key, new_key) Edit a (key, color) entry in the registry.
Parameters:
Returns: void.
edit_color(key_registry, color_registry, key, new_value) Edit a (key, color) entry in the registry.
Parameters:
Returns: void.
delete(key_registry, color_registry, key) Delete a (key, color) entry from the registry.
Parameters:
Returns: void.
delete_all(key_registry, color_registry) Delete all (key, color) entrys from the registry.
Parameters:
Returns: void.
model(index) Enumerate models available to profile colors.
Parameters:
Returns: string.
generate_scheme(key_registry, color_registry, primary, model) Generate a multi color scheme.
Parameters:
Returns: void.
A color scheme generator.
init() Initiate the array data registry that will hold the color profile. Returns: tuple with 2 arrays (string array, color array)
check_registry_integrity(key_registry, color_registry) Checks the integrity of the registers.
Parameters:
- key_registry: string array, key data holder array.
- color_registry: color array, color value data holder array.
Returns: void.
add(key_registry, color_registry, key, value) Add new (key, color) entry to the registry.
Parameters:
- key_registry: string array, key data holder array.
- color_registry: color array, color value data array.
- key: string, the unique key to reference the value.
- value: color, the color value of the specified key.
Returns: void.
get_color(key_registry, color_registry, key) Get a (key, color) entry from the registry.
Parameters:
- key_registry: string array, key data holder array.
- color_registry: color array, color value data array.
- key: string, the unique key to reference the value.
Returns: void.
edit_key(key_registry, color_registry, key, new_key) Edit a (key, color) entry in the registry.
Parameters:
- key_registry: string array, key data holder array.
- color_registry: color array, color value data array.
- key: string, the unique key to reference the value.
- new_key: string, the unique key to reference the value.
Returns: void.
edit_color(key_registry, color_registry, key, new_value) Edit a (key, color) entry in the registry.
Parameters:
- key_registry: string array, key data holder array.
- color_registry: color array, color value data array.
- key: string, the unique key to reference the value.
- new_value: color, the color value of the specified key.
Returns: void.
delete(key_registry, color_registry, key) Delete a (key, color) entry from the registry.
Parameters:
- key_registry: string array, key data holder array.
- color_registry: color array, color value data array.
- key: string, the unique key to reference the value.
Returns: void.
delete_all(key_registry, color_registry) Delete all (key, color) entrys from the registry.
Parameters:
- key_registry: string array, key data holder array.
- color_registry: color array, color value data array.
Returns: void.
model(index) Enumerate models available to profile colors.
Parameters:
- index: int, index of model. (1:'monochromatic', 2:'analog', 3:'triadic', 4:'tetradic', 5:'square', anything else:'monochromatic')
Returns: string.
generate_scheme(key_registry, color_registry, primary, model) Generate a multi color scheme.
Parameters:
- key_registry: string array, key data holder array.
- color_registry: color array, color value data array.
- primary: color, the origin color to base the profile.
- model: string, default='monochromatic', options=('monochromatic', 'triadic near', 'triadic far', 'tetradic')
Returns: void.
Release Notes
v2 added some utilities and type support.Added:
model_index(model)
Enumerate a model name to a index number.
Parameters:
model (string): `string`: Name of the model
Returns: - `int`: Index of color model.
---
Usage:
- `model_index("monochromatic")`
new()
Generate and initiate the properties of a new theme object.
Returns: - New theme object.
---
Usage:
- `theme = new()`
Theme
Theme object holding a dictionay alike structure.
Fields:
keys (string[]): List of named keys.
colors (color[]): List of colors.
Release Notes
v3Updated:
method generate_scheme(this, primary, model)
Generate a multi color scheme.
Namespace types: Theme
Parameters:
this (Theme): `Theme` : Theme object.
primary (color): `color` : Origin color to base the profile.
model (string): `string`: Color model selection, default='monochromatic', options=('monochromatic', 'triadic near', 'triadic far', 'tetradic')
Returns: - `this`: Self, Theme object.
---
Usage:
- `theme = Theme.new().generate_scheme(#e3e3e3, "monochromatic")`
Theme
Theme object holding a dictionary alike structure.
Fields:
keys (string[]): List of named keys.
colors (color[]): List of colors.
Pine library
In true TradingView spirit, the author has published this Pine code as an open-source library so that other Pine programmers from our community can reuse it. Cheers to the author! You may use this library privately or in other open-source publications, but reuse of this code in publications is governed by House Rules.
Disclaimer
The information and publications are not meant to be, and do not constitute, financial, investment, trading, or other types of advice or recommendations supplied or endorsed by TradingView. Read more in the Terms of Use.
Pine library
In true TradingView spirit, the author has published this Pine code as an open-source library so that other Pine programmers from our community can reuse it. Cheers to the author! You may use this library privately or in other open-source publications, but reuse of this code in publications is governed by House Rules.
Disclaimer
The information and publications are not meant to be, and do not constitute, financial, investment, trading, or other types of advice or recommendations supplied or endorsed by TradingView. Read more in the Terms of Use.