QQ登录

只需一步,快速开始

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 7392|回复: 15

如何让gnome-panel也有收缩的系统托盘

[复制链接]
发表于 2006-8-3 23:50:40 | 显示全部楼层 |阅读模式
如题,我已写了一部分代码了,见下面贴图,点击蓝色的按键,
就收缩system tray。虽然还不十分美观:)

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册

×
发表于 2006-8-4 01:02:27 | 显示全部楼层

好东西
回复

使用道具 举报

发表于 2006-8-4 08:40:14 | 显示全部楼层
呵呵,不错啊。

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

谁有兴趣实现自动隐藏?

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

使用道具 举报

发表于 2006-8-4 16:12:20 | 显示全部楼层
egg好像要被丢弃了吧。
回复

使用道具 举报

发表于 2006-8-4 17:08:52 | 显示全部楼层
[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
回复

使用道具 举报

 楼主| 发表于 2006-8-4 17:40:00 | 显示全部楼层
GtkStatusIcon这个东东,完全不能替代EggTrayIcon,因为
GtkStatusIcon只是在system tray中放置一个图标,而EggTrayIcon
在system tray中放置的是一个container,作用根本不一样。后者
可以新建一个widget放到托盘中,而前者只能放图标充其量加一个
菜单。

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

使用道具 举报

 楼主| 发表于 2006-8-6 21:42:05 | 显示全部楼层

gnome-panel-2.14.2 patch

rt.

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册

×
回复

使用道具 举报

 楼主| 发表于 2006-8-6 21:46:45 | 显示全部楼层
那个收缩的图标是用cairo画的,如果有图片的话,用图片可能会好看一些。

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

使用道具 举报

发表于 2006-8-7 13:14:37 | 显示全部楼层
能不能有平滑效果?
回复

使用道具 举报

 楼主| 发表于 2006-8-7 13:54:01 | 显示全部楼层
在toggle_button_clicked函数中隐藏(或显示)图标时加一个时钟延迟,
应该可以实现,不过好像没有太多意思。
回复

使用道具 举报

 楼主| 发表于 2006-8-13 21:48:07 | 显示全部楼层

将几个常用applet加入系统托盘的补丁

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

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册

×
回复

使用道具 举报

发表于 2006-8-13 22:00:14 | 显示全部楼层
》》有三种讨厌的分类
applet 以后都会变成“类系统托盘的applet”了
回复

使用道具 举报

 楼主| 发表于 2006-8-13 22:43:58 | 显示全部楼层
good news!!!
回复

使用道具 举报

发表于 2006-8-14 09:40:04 | 显示全部楼层
[quote:43632c3d94="jcome"]》》有三种讨厌的分类
applet 以后都会变成“类系统托盘的applet”了[/quote]

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

使用道具 举报

 楼主| 发表于 2006-8-23 09:54:20 | 显示全部楼层

修改上面补丁取控件画图区大小的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]
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

GMT+8, 2024-11-2 00:23 , Processed in 0.050520 second(s), 17 queries .

© 2021 Powered by Discuz! X3.5.

快速回复 返回顶部 返回列表