From: fredrik Date: Mon, 8 Jan 2007 02:44:37 +0000 (+0000) Subject: Truncate very long tags. X-Git-Tag: 0.3~119 X-Git-Url: http://dolda2000.com/gitweb/?a=commitdiff_plain;h=daa53556bc652f7dbe03b1c50fb915398ff66721;hp=b00ef4d125101f053361481b238fcf5318aac805;p=doldaconnect.git Truncate very long tags. git-svn-id: svn+ssh://svn.dolda2000.com/srv/svn/repos/src/doldaconnect@808 959494ce-11ee-0310-bf91-de5d638817bd --- diff --git a/clients/gnome-trans-applet/dolcon-trans-applet.c b/clients/gnome-trans-applet/dolcon-trans-applet.c index b73b46e..ab31d3c 100644 --- a/clients/gnome-trans-applet/dolcon-trans-applet.c +++ b/clients/gnome-trans-applet/dolcon-trans-applet.c @@ -99,6 +99,7 @@ static gboolean updatetip(struct appletdata *data) static void update(struct appletdata *data) { char buf[256]; + size_t l; switch(data->conduit->state) { @@ -130,7 +131,15 @@ static void update(struct appletdata *data) gtk_progress_bar_set_fraction(data->pbar, 0); gtk_progress_bar_set_text(data->pbar, _("Initializing")); } - gtk_label_set_text(data->label, data->curdisplay->tag); + if((l = strlen(data->curdisplay->tag)) > 50) { + memcpy(buf, data->curdisplay->tag, 20); + memcpy(buf + 20, "...", 3); + memcpy(buf + 23 , data->curdisplay->tag + l - 20, 20); + buf[43] = 0; + gtk_label_set_text(data->label, buf); + } else { + gtk_label_set_text(data->label, data->curdisplay->tag); + } } break; }