Migrates call_start.png, chat_start.png and call_add.png

This commit is contained in:
François Grisez 2015-09-11 23:41:40 +02:00
parent 8584d2d72d
commit 67a1f79e84
13 changed files with 125 additions and 44 deletions

View file

@ -61,6 +61,7 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
#endif
#define LINPHONE_ICON "linphone.png"
#define LINPHONE_ICON_NAME "linphone"
enum {
COMPLETION_HISTORY,

View file

@ -1696,24 +1696,16 @@ static void linphone_gtk_configure_main_window(){
static gboolean config_loaded=FALSE;
static const char *title;
static const char *home;
static const char *start_call_icon;
static const char *add_call_icon;
static const char *start_chat_icon;
static const char *search_icon;
static gboolean update_check_menu;
static gboolean buttons_have_borders;
static gboolean show_abcd;
GtkWidget *w=linphone_gtk_get_main_window();
if (!config_loaded){
title=linphone_gtk_get_ui_config("title","Linphone");
home=linphone_gtk_get_ui_config("home","http://www.linphone.org");
start_call_icon=linphone_gtk_get_ui_config("start_call_icon","call_start.png");
add_call_icon=linphone_gtk_get_ui_config("add_call_icon","call_add.png");
start_chat_icon=linphone_gtk_get_ui_config("start_chat_icon","chat_start.png");
search_icon=linphone_gtk_get_ui_config("directory_search_icon",NULL);
update_check_menu=linphone_gtk_get_ui_config_int("update_check_menu",0);
buttons_have_borders=linphone_gtk_get_ui_config_int("buttons_border",1);
show_abcd=linphone_gtk_get_ui_config_int("show_abcd",1);
config_loaded=TRUE;
}
@ -1721,24 +1713,6 @@ static void linphone_gtk_configure_main_window(){
if (title) {
gtk_window_set_title(GTK_WINDOW(w),title);
}
if (start_call_icon){
gtk_button_set_image(GTK_BUTTON(linphone_gtk_get_widget(w,"start_call")),
create_pixmap (start_call_icon));
if (!buttons_have_borders)
gtk_button_set_relief(GTK_BUTTON(linphone_gtk_get_widget(w,"start_call")),GTK_RELIEF_NONE);
}
if (add_call_icon){
gtk_button_set_image(GTK_BUTTON(linphone_gtk_get_widget(w,"add_call")),
create_pixmap (add_call_icon));
if (!buttons_have_borders)
gtk_button_set_relief(GTK_BUTTON(linphone_gtk_get_widget(w,"add_call")),GTK_RELIEF_NONE);
}
if (start_chat_icon){
gtk_button_set_image(GTK_BUTTON(linphone_gtk_get_widget(w,"start_chat")),
create_pixmap (start_chat_icon));
if (!buttons_have_borders)
gtk_button_set_relief(GTK_BUTTON(linphone_gtk_get_widget(w,"start_chat")),GTK_RELIEF_NONE);
}
if (search_icon){
GdkPixbuf *pbuf=create_pixbuf(search_icon);
if(pbuf) {

View file

@ -3,6 +3,12 @@
<requires lib="gtk+" version="2.18"/>
<!-- interface-naming-policy toplevel-contextual -->
<!-- interface-local-resource-path /home/francois/projects/linphone/linphone/pixmaps/hicolor -->
<object class="GtkImage" id="add_call_image">
<property name="visible">True</property>
<property name="can_focus">False</property>
<property name="pixel_size">32</property>
<property name="icon_name">linphone-add-call</property>
</object>
<object class="GtkImage" id="add_image">
<property name="visible">True</property>
<property name="can_focus">False</property>
@ -114,6 +120,18 @@
<property name="tooltip_text" translatable="yes">Delete</property>
<property name="stock">gtk-remove</property>
</object>
<object class="GtkImage" id="start_call_image">
<property name="visible">True</property>
<property name="can_focus">False</property>
<property name="pixel_size">32</property>
<property name="icon_name">linphone-start-call</property>
</object>
<object class="GtkImage" id="start_chat_image">
<property name="visible">True</property>
<property name="can_focus">False</property>
<property name="pixel_size">32</property>
<property name="icon_name">linphone-start-chat</property>
</object>
<object class="GtkWindow" id="main">
<property name="width_request">640</property>
<property name="height_request">480</property>
@ -380,6 +398,7 @@
<property name="can_focus">True</property>
<property name="receives_default">True</property>
<property name="tooltip_text" translatable="yes">Initiate a new call</property>
<property name="image">add_call_image</property>
<signal name="clicked" handler="linphone_gtk_start_call" swapped="no"/>
</object>
<packing>
@ -394,6 +413,7 @@
<property name="visible">True</property>
<property name="can_focus">True</property>
<property name="receives_default">True</property>
<property name="image">start_call_image</property>
<signal name="clicked" handler="linphone_gtk_start_call" swapped="no"/>
</object>
<packing>
@ -407,6 +427,7 @@
<property name="visible">True</property>
<property name="can_focus">True</property>
<property name="receives_default">True</property>
<property name="image">start_chat_image</property>
<signal name="clicked" handler="linphone_gtk_start_chat" swapped="no"/>
</object>
<packing>

View file

@ -316,15 +316,13 @@ static void _linphone_status_icon_impl_gtk_popup_menu(GtkStatusIcon *status_icon
}
static void _linphone_status_icon_impl_gtk_init(LinphoneStatusIcon *si) {
const char *icon_path=linphone_gtk_get_ui_config("icon",LINPHONE_ICON);
const char *call_icon_path=linphone_gtk_get_ui_config("start_call_icon","call_start.png");
GdkPixbuf *pbuf=create_pixbuf(icon_path);
GtkStatusIcon *icon=gtk_status_icon_new_from_pixbuf(pbuf);
const char *icon_name=linphone_gtk_get_ui_config("icon_name",LINPHONE_ICON_NAME);
const char *blinking_icon_name=linphone_gtk_get_ui_config("binking_status_icon_name","linphone-start-call");
GtkStatusIcon *icon=gtk_status_icon_new_from_icon_name(icon_name);
g_signal_connect_swapped(G_OBJECT(icon),"activate", G_CALLBACK(_linphone_status_icon_impl_gtk_on_click_cb), si);
g_signal_connect(G_OBJECT(icon), "popup-menu", G_CALLBACK(_linphone_status_icon_impl_gtk_popup_menu), si);
g_object_set_data_full(G_OBJECT(icon),"icon",pbuf, g_object_unref);
pbuf=create_pixbuf(call_icon_path);
g_object_set_data_full(G_OBJECT(icon),"call_icon",pbuf, g_object_unref);
g_object_set_data_full(G_OBJECT(icon), "icon", g_strdup(icon_name), g_free);
g_object_set_data_full(G_OBJECT(icon), "call_icon", g_strdup(blinking_icon_name), g_free);
si->data = icon;
}
@ -344,13 +342,13 @@ static void _linphone_status_icon_impl_gtk_start(LinphoneStatusIcon *si) {
}
static gboolean _linphone_status_icon_impl_gtk_do_icon_blink_cb(GtkStatusIcon *gi){
GdkPixbuf *call_icon=g_object_get_data(G_OBJECT(gi),"call_icon");
GdkPixbuf *normal_icon=g_object_get_data(G_OBJECT(gi),"icon");
GdkPixbuf *cur_icon=gtk_status_icon_get_pixbuf(gi);
if (cur_icon==call_icon){
gtk_status_icon_set_from_pixbuf(gi,normal_icon);
const gchar *call_icon = (const gchar *)g_object_get_data(G_OBJECT(gi),"call_icon");
const gchar *normal_icon = (const gchar *)g_object_get_data(G_OBJECT(gi),"icon");
const gchar *cur_icon = (const gchar *)gtk_status_icon_get_icon_name(gi);
if (cur_icon == call_icon){
gtk_status_icon_set_from_icon_name(gi,normal_icon);
}else{
gtk_status_icon_set_from_pixbuf(gi,call_icon);
gtk_status_icon_set_from_icon_name(gi,call_icon);
}
return TRUE;
}
@ -363,10 +361,10 @@ static void _linphone_status_icon_impl_enable_blinking(LinphoneStatusIcon *si, g
tout=g_timeout_add(500,(GSourceFunc)_linphone_status_icon_impl_gtk_do_icon_blink_cb,icon);
g_object_set_data(G_OBJECT(icon),"timeout",GINT_TO_POINTER(tout));
}else if (!val && tout!=0){
GdkPixbuf *normal_icon=g_object_get_data(G_OBJECT(icon),"icon");
const gchar *normal_icon = (const gchar *)g_object_get_data(G_OBJECT(icon),"icon");
g_source_remove(tout);
g_object_set_data(G_OBJECT(icon),"timeout",NULL);
gtk_status_icon_set_from_pixbuf(icon,normal_icon);
gtk_status_icon_set_from_icon_name(icon,normal_icon);
}
}

View file

@ -42,6 +42,12 @@ install(FILES
PERMISSIONS OWNER_WRITE OWNER_READ GROUP_READ WORLD_READ
)
install(FILES
svg/linphone-start-call.svg
DESTINATION ${ICONS_INSTALL_DIR}/scalable/actions
PERMISSIONS OWNER_WRITE OWNER_READ GROUP_READ WORLD_READ
)
install(FILES
linphone-micro-muted.png
linphone-speaker-muted.png
@ -62,6 +68,9 @@ install(FILES
install(FILES
linphone-start-call2.png
linphone-show-dialer.png
linphone-add-call.png
linphone-start-call.png
linphone-start-chat.png
DESTINATION ${ICONS_INSTALL_DIR}/48x48/actions
PERMISSIONS OWNER_WRITE OWNER_READ GROUP_READ WORLD_READ
)

View file

@ -2,10 +2,9 @@ pixmapdir=$(datadir)/pixmaps/linphone
dist_pixmap_DATA= \
hold_on.png hold_off.png \
linphone.png linphone-banner.png \
chat_start.png \
chat_message_inprogress.png chat_message_delivered.png chat_message_not_delivered.png\
contact-orange.png history-orange.png\
call_start.png startcall-small.png stopcall-red.png stopcall-small.png call_add.png linphone.icns \
startcall-small.png stopcall-red.png stopcall-small.png linphone.icns \
contact_starred.png contact_unstarred.png \
call_status_incoming.png call_status_outgoing.png \
ok.png \
@ -48,5 +47,7 @@ dist_statussvgicons_DATA= \
actions48iconsdir=$(iconsdir)/48x48/actions
dist_actions48icons_DATA= \
linphone-start-call2.png \
linphone-show-dialer.png
linphone-show-dialer.png \
linphone-add-call.png \
linphone-start-call.png
)

Binary file not shown.

Before

Width:  |  Height:  |  Size: 5.1 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 5.1 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.9 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 7.6 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.9 KiB

View file

@ -0,0 +1,77 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!-- Generator: Adobe Illustrator 14.0.0, SVG Export Plug-In . SVG Version: 6.00 Build 43363) -->
<svg
xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:cc="http://creativecommons.org/ns#"
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:svg="http://www.w3.org/2000/svg"
xmlns="http://www.w3.org/2000/svg"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
version="1.1"
id="Calque_1"
x="0px"
y="0px"
width="128"
height="128"
viewBox="0 0 127.99999 128"
enable-background="new 0 0 595.28 841.89"
xml:space="preserve"
inkscape:version="0.91 r13725"
sodipodi:docname="linphone-status-online.svg"
inkscape:export-filename="/home/francois/projects/linphone/linphone/pixmaps/linphone-status-online.png"
inkscape:export-xdpi="33.75"
inkscape:export-ydpi="33.75"><metadata
id="metadata26"><rdf:RDF><cc:Work
rdf:about=""><dc:format>image/svg+xml</dc:format><dc:type
rdf:resource="http://purl.org/dc/dcmitype/StillImage" /><dc:title></dc:title></cc:Work></rdf:RDF></metadata><defs
id="defs24" /><sodipodi:namedview
pagecolor="#ffffff"
bordercolor="#666666"
borderopacity="1"
objecttolerance="10"
gridtolerance="10"
guidetolerance="10"
inkscape:pageopacity="0"
inkscape:pageshadow="2"
inkscape:window-width="1366"
inkscape:window-height="709"
id="namedview22"
showgrid="false"
inkscape:zoom="3.1714775"
inkscape:cx="73.326021"
inkscape:cy="51.06876"
inkscape:window-x="-4"
inkscape:window-y="0"
inkscape:window-maximized="1"
inkscape:current-layer="Calque_1" /><g
id="g3"
transform="matrix(5.0401244,0,0,5.0235343,-745.02721,-2084.4323)"><g
id="g5"><g
id="g7"><g
id="g9"><linearGradient
id="SVGID_1_"
gradientUnits="userSpaceOnUse"
x1="148.6731"
y1="423.5444"
x2="172.78819"
y2="430.00601"
gradientTransform="translate(0.2803,-0.1104)"><stop
offset="0.15"
style="stop-color:#3BCB09"
id="stop12" /><stop
offset="0.35"
style="stop-color:#F4F7EE"
id="stop14" /><stop
offset="0.55"
style="stop-color:#3BCB09"
id="stop16" /></linearGradient><path
d="m 153.954,437.025 c 0.778,0.367 1.692,0.773 3.042,1.102 1.429,0.312 2.855,0.531 4.406,0.49 1.635,-0.082 2.449,-0.246 3.757,-0.572 1.184,-0.367 1.755,-0.572 2.692,-1.061 0.41,-0.205 0.735,-0.408 1.551,-0.98 0.533,-0.41 1.145,-0.898 1.729,-1.725 0.494,-0.574 0.986,-1.559 1.312,-2.379 0.369,-0.82 0.574,-1.723 0.574,-2.705 -0.042,-1.725 -0.452,-3.285 -1.312,-4.637 -0.74,-1.148 -1.686,-2.174 -2.791,-2.994 l 1.804,-4.839 -6.231,2.542 c -0.164,-0.041 -0.327,-0.082 -0.452,-0.124 -1.603,-0.491 -3.118,-0.696 -4.595,-0.737 -1.929,0.041 -3.69,0.328 -5.25,0.902 -1.478,0.616 -2.707,1.437 -3.69,2.502 -0.984,1.107 -2,2.816 -2.246,4.336 -0.365,1.896 -0.267,3.164 0.021,4.311 0.328,1.148 0.69,2.057 1.492,3.221 0.872,1 1.264,1.428 2,2 0.901,0.652 1.49,0.976 2.187,1.347 z m 3.317,-0.942 c -1.146,-0.326 -2.051,-0.656 -2.707,-1.027 -0.576,-0.328 -1.231,-0.777 -1.889,-1.312 -0.614,-0.531 -1.189,-1.146 -1.682,-1.926 -0.532,-0.738 -0.86,-1.602 -1.025,-2.584 -0.205,-1.438 -0.123,-2.666 0.286,-3.652 0.41,-0.984 0.981,-1.807 1.723,-2.381 0.78,-0.615 1.601,-1.064 2.462,-1.395 0.861,-0.287 1.683,-0.489 2.46,-0.614 0.738,-0.081 1.312,-0.164 1.683,-0.164 1.354,0 2.707,0.205 4.019,0.571 1.355,0.371 2.628,0.943 3.775,1.684 1.106,0.777 2.051,1.723 2.749,2.871 0.41,0.697 0.695,1.314 0.899,1.973 0.205,0.615 0.328,1.229 0.328,1.803 -0.042,1.148 -0.41,2.256 -1.146,3.24 -0.696,1.027 -1.765,1.807 -3.157,2.42 -1.354,0.658 -2.954,0.945 -4.799,0.945 -1.518,0.002 -2.83,-0.164 -3.979,-0.452 z"
id="path18"
inkscape:connector-curvature="0"
style="fill:url(#SVGID_1_)" /></g></g></g><path
d="m 158.761,433.871 c 1.771,0.467 3.646,0.637 5.186,0.26 2.91,-0.705 3.85,-1.676 3.697,-4.115 0,0 0.056,-1.176 -2.427,-1.133 -0.551,0.01 -1.954,0.309 -2.153,0.906 -0.198,0.605 0.103,1.217 0.119,1.512 0.018,0.299 -0.803,0.701 -1.146,0.732 -0.447,0.043 -1.575,-0.025 -2.713,-0.307 l -0.051,-0.014 c -1.128,-0.316 -2.144,-0.811 -2.511,-1.074 -0.281,-0.197 -0.796,-0.951 -0.635,-1.199 0.16,-0.252 0.726,-0.635 0.851,-1.258 0.125,-0.623 -0.954,-1.57 -1.425,-1.85 -2.137,-1.266 -2.672,-0.217 -2.672,-0.217 -1.333,2.049 -0.999,3.354 1.181,5.404 1.16,1.092 2.872,1.865 4.641,2.332 l 0.058,0.021 z"
id="path20"
inkscape:connector-curvature="0"
style="fill:#3bcb09" /></g></svg>

After

Width:  |  Height:  |  Size: 4.7 KiB