Add settings and pass values to desklet

This commit is contained in:
Raymundo Cassani 2020-05-22 20:49:37 -04:00
parent c33ca3de66
commit 04c42253eb
2 changed files with 61 additions and 20 deletions

View File

@ -1,30 +1,40 @@
const Desklet = imports.ui.desklet;
const Settings = imports.ui.settings;
const St = imports.gi.St;
function MyDesklet(metadata, desklet_id) {
this._init(metadata, desklet_id);
}
function main(metadata, desklet_id) {
return new MyDesklet(metadata, desklet_id);
}
MyDesklet.prototype = {
__proto__: Desklet.Desklet.prototype,
_init: function(metadata, desklet_id) {
Desklet.Desklet.prototype._init.call(this, metadata, desklet_id);
// initialize settings
this.settings = new Settings.DeskletSettings(this, this.metadata["uuid"], desklet_id);
this.settings.bindProperty(Settings.BindingDirection.IN, "type", "type", this.on_setting_changed);
// initialize desklet GUI
this.setupUI();
},
setupUI(){
setupUI: function(){
var type = this.type;
// creates container for one child
this.window = new St.Bin();
// creates a label with text
this.text = new St.Label({text: "Hello Desktop"});
this.text = new St.Label({text: "Hello Desktop ".concat(type)});
// adds label to container
this.window.add_actor(this.text);
// Sets the container as content actor of the desklet
this.setContent(this.window);
},
};
function main(metadata, desklet_id) {
return new MyDesklet(metadata, desklet_id);
}

View File

@ -0,0 +1,31 @@
{
"head0": {
"type": "header",
"description": "Settings for system-monitor-graph@rcassani"
},
"head1": {
"type": "header",
"description": "General"
},
"type": {
"type": "combobox",
"default": "cpu",
"description": "System variable for graph",
"tooltip": "Select the system variable to monitor.",
"options" : {
"CPU" : "cpu",
"RAM": "ram"
}
},
"head2": {
"type": "header",
"description": "Visual"
},
"line-color": {
"type": "colorchooser",
"default": "rgba(50,168,82,1.0)",
"description": "Line color"
}
}