当前时区 GMT+8, 现在时间是 2008-7-7 00:59 游客: 注册 登录 仅登录论坛 | 搜索 帮助


标题: 如何让gnome-panel也有收缩的系统托盘
wall_john
高级会员
Rank: 4


UID 109031
精华 10
积分 1022
帖子 388
阅读权限 50
注册 2004-3-29
来自 中国.湘潭
状态 离线
发表于 2006-8-3 23:50  资料  主页 短消息  加为好友  添加 wall_john 为MSN好友 通过MSN和 wall_john 交谈 QQ
如何让gnome-panel也有收缩的系统托盘

如题,我已写了一部分代码了,见下面贴图,点击蓝色的按键,
就收缩system tray。虽然还不十分美观:)



 附件: 您所在的用户组无法下载或查看附件
顶部
npcomet
管理员
Rank: 9Rank: 9Rank: 9


UID 201072
精华 11
积分 11355
帖子 10479
阅读权限 200
注册 2005-9-27
来自 mbr-->kernel
状态 离线
发表于 2006-8-4 01:02  资料  主页 短消息  加为好友  QQ

好东西





中国Linux校园联盟 Linux Campus Union of China(LCUC)  在中国,学生永远是不可忽视的重要力量,让广大学生学习和使用Linux是一个让Linux快速普及的捷径。 希望所有爱好linux的人来到我们中间,用我们的力量创造一个美好的未来。 私人空间
顶部
yangh
版主
Rank: 7Rank: 7Rank: 7


UID 40061
精华 3
积分 3192
帖子 1625
阅读权限 255
注册 2003-5-26
来自 China
状态 离线
发表于 2006-8-4 08:40  资料  主页 短消息  加为好友 
呵呵,不错啊。

对自动隐藏图标的想法: 为每个图标加一个时钟,30 秒内如果这个图标上没有 expose 事件,则隐藏这个图标,一但某个图标有 expose 事件,则立刻显示出来。目前的图标也是在 expose 才显示出来的,不过没有自动隐藏。

谁有兴趣实现自动隐藏?

http://www.gnome-cn.org/documents/tutorial/system-tray-icon-application/1-intro.html





顶部
mandrakechina
金牌会员
Rank: 8Rank: 8


UID 12345
精华 9
积分 8656
帖子 3861
阅读权限 90
注册 2003-1-12
来自 北京
状态 离线
发表于 2006-8-4 16:12  资料  主页 短消息  加为好友 
egg好像要被丢弃了吧。





我很快乐,请不要再说爱我
顶部
yangh
版主
Rank: 7Rank: 7Rank: 7


UID 40061
精华 3
积分 3192
帖子 1625
阅读权限 255
注册 2003-5-26
来自 China
状态 离线
发表于 2006-8-4 17:08  资料  主页 短消息  加为好友 
[quote:880887e650="mandrakechina"]egg好像要被丢弃了吧。[/quote]

是的,gtk+ 2.10 里自带了。

http://developer.gnome.org/doc/API/2.0/gtk/GtkStatusIcon.html

GtkStatusIcon — Display an icon in the system tray





顶部
wall_john
高级会员
Rank: 4


UID 109031
精华 10
积分 1022
帖子 388
阅读权限 50
注册 2004-3-29
来自 中国.湘潭
状态 离线
发表于 2006-8-4 17:40  资料  主页 短消息  加为好友  添加 wall_john 为MSN好友 通过MSN和 wall_john 交谈 QQ
GtkStatusIcon这个东东,完全不能替代EggTrayIcon,因为
GtkStatusIcon只是在system tray中放置一个图标,而EggTrayIcon
在system tray中放置的是一个container,作用根本不一样。后者
可以新建一个widget放到托盘中,而前者只能放图标充其量加一个
菜单。

至于egg是否被丢弃了,看看gaim、stardict中的代码,不存在丢不
丢弃的问题,好用就pick up:)

顶部
wall_john
高级会员
Rank: 4


UID 109031
精华 10
积分 1022
帖子 388
阅读权限 50
注册 2004-3-29
来自 中国.湘潭
状态 离线
发表于 2006-8-6 21:42  资料  主页 短消息  加为好友  添加 wall_john 为MSN好友 通过MSN和 wall_john 交谈 QQ
gnome-panel-2.14.2 patch

rt.



 附件: 您所在的用户组无法下载或查看附件
顶部
wall_john
高级会员
Rank: 4


UID 109031
精华 10
积分 1022
帖子 388
阅读权限 50
注册 2004-3-29
来自 中国.湘潭
状态 离线
发表于 2006-8-6 21:46  资料  主页 短消息  加为好友  添加 wall_john 为MSN好友 通过MSN和 wall_john 交谈 QQ
那个收缩的图标是用cairo画的,如果有图片的话,用图片可能会好看一些。

yangh, 有兴趣可已加一个timer来控制定时自动缩放。

顶部
xLoneStar
版主
Rank: 7Rank: 7Rank: 7


UID 61030
精华 4
积分 3326
帖子 1320
阅读权限 255
注册 2003-9-12
来自 电脑前面
状态 离线
发表于 2006-8-7 13:14  资料  主页 短消息  加为好友  添加 xLoneStar 为MSN好友 通过MSN和 xLoneStar 交谈 QQ ICQ 状态 Yahoo!
能不能有平滑效果?

顶部
wall_john
高级会员
Rank: 4


UID 109031
精华 10
积分 1022
帖子 388
阅读权限 50
注册 2004-3-29
来自 中国.湘潭
状态 离线
发表于 2006-8-7 13:54  资料  主页 短消息  加为好友  添加 wall_john 为MSN好友 通过MSN和 wall_john 交谈 QQ
在toggle_button_clicked函数中隐藏(或显示)图标时加一个时钟延迟,
应该可以实现,不过好像没有太多意思。

顶部
wall_john
高级会员
Rank: 4


UID 109031
精华 10
积分 1022
帖子 388
阅读权限 50
注册 2004-3-29
来自 中国.湘潭
状态 离线
发表于 2006-8-13 21:48  资料  主页 短消息  加为好友  添加 wall_john 为MSN好友 通过MSN和 wall_john 交谈 QQ
将几个常用applet加入系统托盘的补丁

RT,从cocreate的几个包里刮过来的补丁,注意现在还未实现从托盘中删除,
本来想在gnome-panel中实现一个通用的将applet加入托盘的功能,到目前
还未有很好的方案因为gnome-panel中的applet有三种讨厌的分类,还不知
道怎么很好的融合,另外bonobo的调用方面也遇到一些麻烦,所以只得将就
将就了。



 附件: 您所在的用户组无法下载或查看附件
顶部
jcome
版主
Rank: 7Rank: 7Rank: 7


UID 4161
精华 10
积分 2778
帖子 1335
阅读权限 255
注册 2002-10-25
来自 Work Song...
状态 离线
发表于 2006-8-13 22:00  资料  主页 短消息  加为好友 
》》有三种讨厌的分类
applet 以后都会变成“类系统托盘的applet”了





顶部
wall_john
高级会员
Rank: 4


UID 109031
精华 10
积分 1022
帖子 388
阅读权限 50
注册 2004-3-29
来自 中国.湘潭
状态 离线
发表于 2006-8-13 22:43  资料  主页 短消息  加为好友  添加 wall_john 为MSN好友 通过MSN和 wall_john 交谈 QQ
good news!!!

顶部
黑企鹅
版主
Rank: 7Rank: 7Rank: 7


UID 1205
精华 11
积分 3123
帖子 1375
阅读权限 255
注册 2002-7-8
来自 China
状态 离线
发表于 2006-8-14 09:40  资料  主页 短消息  加为好友  QQ
[quote:43632c3d94="jcome"]》》有三种讨厌的分类
applet 以后都会变成“类系统托盘的applet”了[/quote]

哪儿得知的? 我没订阅 gnome-panel 的邮件列表。





Debian when u r sa(i)d, u r unstable 有三件事具有生命的意义。它们是你生活当中所有事情的动机,包括你所做的任何事情和一个生命体该做的所有事情。[X] 第一是生存,[...] 第二是社会秩序,[ ] 第三是娱乐。---Linux Tovarlds (Just For Fun)
顶部
wall_john
高级会员
Rank: 4


UID 109031
精华 10
积分 1022
帖子 388
阅读权限 50
注册 2004-3-29
来自 中国.湘潭
状态 离线
发表于 2006-8-23 09:54  资料  主页 短消息  加为好友  添加 wall_john 为MSN好友 通过MSN和 wall_john 交谈 QQ
修改上面补丁取控件画图区大小的bug

这个bug导致窗口重画时,图标变形的问题。
[code:1]
--- gnome-panel-2.14.2-toggle-system-tray.patch.old     2006-08-22 21:51:31.000000000 +0800
+++ gnome-panel-2.14.2-toggle-system-tray.patch 2006-08-22 21:54:32.000000000 +0800
@@ -427,10 +427,10 @@
+
+    gdk_color_parse("#4d86c9", &color);
+
-+    x = area->x;
-+    y = area->y;
-+    width = area->width;
-+    height = area->height;
++    x = widget->allocation.x;
++    y = widget->allocation.y;
++    width = widget->allocation.width;
++    height = widget->allocation.height;
+
+    radius = (MIN(width, height) - 2) / 2;
+    x += width - (width - radius * 2) / 2;
[/code:1]

顶部
 


Powered by Discuz! 5.5.0  © 2001-2007 Comsenz Inc.
清除 Cookies - 联系我们 - 中国Linux公社 - WAP