[gnome-music] Don't use g_object_set_property() manually
- From: Seif Lotfy <seiflotfy src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gnome-music] Don't use g_object_set_property() manually
- Date: Mon, 20 May 2013 19:06:42 +0000 (UTC)
commit daf8bd6e114c0d5b73e9deee99ac44b20863ab19
Author: Giovanni Campagna <gcampagna src gnome org>
Date: Sun May 19 19:21:49 2013 +0200
Don't use g_object_set_property() manually
In gjs, GObject properties are exposed as JS properties, and not
only using them is part of the style guide, it is also more correct
because set_property() converts the JS value without the GParamSpec
type information, which can then break.
In general, the style conventions mandate avoiding setter methods
when GObject properties exist, but the diff would be huge at this
point.
https://bugzilla.gnome.org/show_bug.cgi?id=700648
Signed-off-by: Seif Lotfy <seif lotfy com>
src/player.js | 4 ++--
src/view.js | 34 ++++++++++++++++++----------------
src/widgets.js | 15 ++++++++-------
3 files changed, 28 insertions(+), 25 deletions(-)
---
diff --git a/src/player.js b/src/player.js
index 0eb700a..e3f5839 100644
--- a/src/player.js
+++ b/src/player.js
@@ -96,7 +96,7 @@ const Player = new Lang.Class({
// Set URI earlier - this will enable gapless playback
this.player.connect("about-to-finish", Lang.bind(this, function(player) {
if(player.nextUrl != null) {
- player.set_property('uri', player.nextUrl);
+ player.uri = player.nextUrl;
}
return true;
}));
@@ -173,7 +173,7 @@ const Player = new Lang.Class({
this.artistLabel.set_label("Unknown artist");
}
- this.player.set_property("uri", media.get_url());
+ this.player.uri = media.get_url();
// Store next available url
let nextTrack = this.currentTrack.copy();
diff --git a/src/view.js b/src/view.js
index ff76115..ee7c68b 100644
--- a/src/view.js
+++ b/src/view.js
@@ -29,6 +29,7 @@ const Gd = imports.gi.Gd;
const Gio = imports.gi.Gio;
const GLib = imports.gi.GLib;
const Grl = imports.gi.Grl;
+const Pango = imports.gi.Pango;
const Tracker = imports.gi.Tracker;
const Signals = imports.signals;
const Application = imports.application;
@@ -430,9 +431,9 @@ const Songs = new Lang.Class({
cells[2].visible = false;
let nowPlayingSymbolRenderer = new Gtk.CellRendererPixbuf();
var columnNowPlaying = new Gtk.TreeViewColumn();
- nowPlayingSymbolRenderer.set_property("xalign", 1.0);
+ nowPlayingSymbolRenderer.xalign = 1.0;
columnNowPlaying.pack_start(nowPlayingSymbolRenderer, false);
- columnNowPlaying.set_property('fixed-width', 24);
+ columnNowPlaying.fixed_width = 24;
columnNowPlaying.add_attribute(nowPlayingSymbolRenderer, "visible", 6);
columnNowPlaying.add_attribute(nowPlayingSymbolRenderer, "icon_name", 7);
listWidget.insert_column(columnNowPlaying, 0);
@@ -440,10 +441,10 @@ const Songs = new Lang.Class({
let titleRenderer = new Gtk.CellRendererText({ xpad: 0 });
listWidget.add_renderer(titleRenderer,Lang.bind(this,function (col,cell,model,iter) {
let item = model.get_value(iter,5);
- titleRenderer.set_property("xalign",0.0);
- titleRenderer.set_property("yalign", 0.5);
- titleRenderer.set_property("height", 48);
- titleRenderer.set_property("ellipsize", 3);
+ titleRenderer.xalign = 0.0;
+ titleRenderer.yalign = 0.5;
+ titleRenderer.height = 48;
+ titleRenderer.ellipsize = Pango.EllipsizeMode.END;
titleRenderer.text = item.get_title();
}))
let starRenderer = new Gtk.CellRendererPixbuf({xpad: 32});
@@ -456,6 +457,7 @@ const Songs = new Lang.Class({
else
starRenderer.pixbuf = null;
}))
+
let durationRenderer =
new Gd.StyledTextRenderer({ xpad: 32 });
durationRenderer.add_class('dim-label');
@@ -471,7 +473,7 @@ const Songs = new Lang.Class({
time = minutes + ":0" + seconds;
else
time = minutes + ":" + seconds;
- durationRenderer.set_property("xalign", 1.0);
+ durationRenderer.xalign = 1.0;
durationRenderer.text = time;
}
}));
@@ -479,24 +481,24 @@ const Songs = new Lang.Class({
let artistRenderer =
new Gd.StyledTextRenderer({ xpad: 32});
artistRenderer.add_class('dim-label');
- artistRenderer.set_property("ellipsize", 3);
+ artistRenderer.ellipsize = Pango.EllipsizeMode.END;
listWidget.add_renderer(artistRenderer, Lang.bind(this,
function(col, cell, model, iter) {
let item = model.get_value(iter, 5);
if (item) {
- artistRenderer.set_property("ellipsize", 3);
+ artistRenderer.ellipsize = Pango.EllipsizeMode.END;
artistRenderer.text = item.get_string(Grl.METADATA_KEY_ARTIST);
}
}));
let typeRenderer =
new Gd.StyledTextRenderer({ xpad: 32});
typeRenderer.add_class('dim-label');
- typeRenderer.set_property("ellipsize", 3);
+ typeRenderer.ellipsize = Pango.EllipsizeMode.END;
listWidget.add_renderer(typeRenderer, Lang.bind(this,
function(col, cell, model, iter) {
let item = model.get_value(iter, 5);
if (item) {
- typeRenderer.set_property("ellipsize", 3);
+ typeRenderer.ellipsize = Pango.EllipsizeMode.END;
typeRenderer.text = item.get_string(Grl.METADATA_KEY_ALBUM);
}
}));
@@ -570,11 +572,11 @@ const Artists = new Lang.Class({
let typeRenderer =
new Gd.StyledTextRenderer({ xpad: 0 });
- typeRenderer.set_property("ellipsize", 3);
- typeRenderer.set_property("xalign", 0.0);
- typeRenderer.set_property("yalign", 0.5);
- typeRenderer.set_property("height", 48);
- typeRenderer.set_property("width",220);
+ typeRenderer.ellipsize = 3;
+ typeRenderer.xalign = 0.0;
+ typeRenderer.yalign = 0.5;
+ typeRenderer.height = 48;
+ typeRenderer.width = 220;
listWidget.add_renderer(typeRenderer, Lang.bind(this,
function(col, cell, model, iter) {
typeRenderer.text = model.get_value(iter, 0);
diff --git a/src/widgets.js b/src/widgets.js
index e0ff3d6..cdc4d6f 100644
--- a/src/widgets.js
+++ b/src/widgets.js
@@ -26,6 +26,7 @@ const GLib = imports.gi.GLib;
const GObject = imports.gi.GObject;
const Lang = imports.lang;
const Grl = imports.gi.Grl;
+const Pango = imports.gi.Pango;
const Query = imports.query;
const Grilo = imports.grilo;
const Signals = imports.signals;
@@ -112,18 +113,18 @@ const AlbumWidget = new Lang.Class({
let nowPlayingSymbolRenderer = new Gtk.CellRendererPixbuf({ xpad: 0 });
var columnNowPlaying = new Gtk.TreeViewColumn();
- nowPlayingSymbolRenderer.set_property("xalign", 1.0);
- nowPlayingSymbolRenderer.set_property("yalign", 0.6);
+ nowPlayingSymbolRenderer.xalign = 1.0;
+ nowPlayingSymbolRenderer.yalign = 0.6;
columnNowPlaying.pack_start(nowPlayingSymbolRenderer, false);
- columnNowPlaying.set_property('fixed-width', 24);
+ columnNowPlaying.fixed_width = 24;
columnNowPlaying.add_attribute(nowPlayingSymbolRenderer, "visible", 6);
columnNowPlaying.add_attribute(nowPlayingSymbolRenderer, "icon_name", 7);
listWidget.insert_column(columnNowPlaying, 0);
let typeRenderer =
new Gd.StyledTextRenderer({ xpad: 16 });
- typeRenderer.set_property("ellipsize", 3);
- typeRenderer.set_property("xalign", 0.0);
+ typeRenderer.ellipsize = Pango.EllipsizeMode.END;
+ typeRenderer.xalign = 0.0;
// This function is not needed, just add the renderer!
listWidget.add_renderer(typeRenderer, Lang.bind(this,
function(col, cell, model, iter) {}
@@ -133,8 +134,8 @@ const AlbumWidget = new Lang.Class({
let durationRenderer = new Gd.StyledTextRenderer({ xpad: 16 });
durationRenderer.add_class('dim-label');
- durationRenderer.set_property("ellipsize", 3);
- durationRenderer.set_property("xalign", 1.0);
+ durationRenderer.ellipsize = Pango.EllipsizeMode.END;
+ durationRenderer.xalign = 1.0;
listWidget.add_renderer(durationRenderer, Lang.bind(this,
function(col, cell, model, iter) {
let item = model.get_value(iter, 5);
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]