diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/torrent.c | 5 | ||||
-rw-r--r-- | src/torrent.h | 1 | ||||
-rw-r--r-- | src/trg-general-panel.c | 14 |
3 files changed, 20 insertions, 0 deletions
diff --git a/src/torrent.c b/src/torrent.c index c77e943..0f2cc5e 100644 --- a/src/torrent.c +++ b/src/torrent.c @@ -69,6 +69,11 @@ const gchar *torrent_get_download_dir(JsonObject * t) return json_object_get_string_member(t, FIELD_DOWNLOAD_DIR); } +const gchar *torrent_get_comment(JsonObject * t) +{ + return json_object_get_string_member(t, FIELD_COMMENT); +} + gdouble torrent_get_metadata_percent_complete(JsonObject * t) { JsonNode *node = diff --git a/src/torrent.h b/src/torrent.h index 7270d6d..16c1ad9 100644 --- a/src/torrent.h +++ b/src/torrent.h @@ -53,6 +53,7 @@ gint64 torrent_get_uploaded(JsonObject * t); gint64 torrent_get_downloaded(JsonObject * t); const gchar *torrent_get_errorstr(JsonObject * t); const gchar *torrent_get_download_dir(JsonObject * t); +const gchar *torrent_get_comment(JsonObject * t); gint64 torrent_get_have_unchecked(JsonObject * t); gint64 torrent_get_have_valid(JsonObject * t); gint64 torrent_get_status(JsonObject * t); diff --git a/src/trg-general-panel.c b/src/trg-general-panel.c index 81efffc..87ac72a 100644 --- a/src/trg-general-panel.c +++ b/src/trg-general-panel.c @@ -60,6 +60,7 @@ struct _TrgGeneralPanelPrivate { GtkLabel *gen_up_rate_label; GtkLabel *gen_ratio_label; GtkLabel *gen_downloaddir_label; + GtkLabel *gen_comment_label; GtkLabel *gen_error_label; GtkTreeModel *model; TrgClient *tc; @@ -82,6 +83,7 @@ void trg_general_panel_clear(TrgGeneralPanel * panel) gtk_label_clear(priv->gen_up_rate_label); gtk_label_clear(priv->gen_ratio_label); gtk_label_clear(priv->gen_downloaddir_label); + gtk_label_clear(priv->gen_comment_label); gtk_label_clear(priv->gen_error_label); gtk_label_clear(gen_panel_label_get_key_label (GTK_LABEL(priv->gen_error_label))); @@ -110,6 +112,7 @@ trg_general_panel_update(TrgGeneralPanel * panel, JsonObject * t, gchar buf[32]; gint sizeOfBuf; gchar *statusString, *fullStatusString; + const gchar *comment; const gchar *errorStr; gint64 eta, uploaded, downloaded; GtkLabel *keyLabel; @@ -165,6 +168,14 @@ trg_general_panel_update(TrgGeneralPanel * panel, JsonObject * t, gtk_label_set_text(GTK_LABEL(priv->gen_downloaddir_label), torrent_get_download_dir(t)); + comment = torrent_get_comment(t); + if(comment == strstr(comment, "http://")) { + /* starts with http -> url, converting to markup */ + comment = g_markup_printf_escaped("<a href='%s'>%s</a>", + comment, comment); + }; + gtk_label_set_markup(GTK_LABEL(priv->gen_comment_label), comment); + errorStr = torrent_get_errorstr(t); keyLabel = gen_panel_label_get_key_label(GTK_LABEL(priv->gen_error_label)); @@ -282,6 +293,9 @@ static void trg_general_panel_init(TrgGeneralPanel * self) priv->gen_ratio_label = trg_general_panel_add_label(self, _("Ratio"), 1, 4); + priv->gen_comment_label = + trg_general_panel_add_label(self, _("Comment"), 2, 4); + priv->gen_downloaddir_label = trg_general_panel_add_label_with_width(self, _("Location"), 0, 5, -1); |