The static extension

This commit is contained in:
Gergely Polonkai 2015-09-29 14:59:51 +02:00
parent f5158d18ac
commit 18670c94e4
2 changed files with 65 additions and 0 deletions

57
extension.js Normal file
View File

@ -0,0 +1,57 @@
const Main = imports.ui.main;
const PanelMenu = imports.ui.panelMenu;
const St = imports.gi.St;
const Clutter = imports.gi.Clutter;
function PlanetsExtension(extensionMeta) {
this._init(extensionMeta);
}
PlanetsExtension.prototype = {
__proto__: PanelMenu.Button.prototype,
_init: function(extensionMeta) {
PanelMenu.Button.prototype._init.call(this, 0.0);
this.extensionMeta = extensionMeta;
this.panelContainer = new St.BoxLayout({style_class: "panel-box"});
this.actor.add_actor(this.panelContainer);
this.actor.add_style_class_name('panel-status-button');
this.panelLabel = new St.Label({
text: 'Planets init…',
y_align: Clutter.ActorAlign.CENTER
});
this.panelContainer.add(this.panelLabel);
}
};
function ExtensionController(extensionMeta) {
return {
extensionMeta: extensionMeta,
extension: null,
enable: function() {
this.extension = new PlanetsExtension(this.extensionMeta);
Main.panel.addToStatusArea("planets", this.extension, 0, "right");
},
disable: function() {
this.extension.actor.destroy();
this.extension.destroy();
this.extension = null;
}
};
}
function init(extensionMeta) {
// Do whatever it takes to initialize your extension, like
// initializing the translations. However, never do any widget
// magic here.
// Then return the controller object
return new ExtensionController(extensionMeta);
}

8
metadata.json Normal file
View File

@ -0,0 +1,8 @@
{
"shell-version": [
"3.10"
],
"uuid": "planets@gergely.polonkai.eu",
"name": "Planets",
"description": "Display planets position"
}