为你的KDE程序添加opendesktop集成

KDE4里面有一个很酷的功能,就是Get Hot New Stuff。对应使用的库是KNewStuff。

这个是什么库呢?具体来说就是KDE4里面和opendesktop集成的那个在线下载功能。这是一个能让你的程序迅速拥抱网络的方法。而使用方法也十分简单。

首先你需要一个.knsrc文件,下面是我在Fcitx里面用到的,分类名称是要和opendesktop上面的名称对应。Install Path也很自由,也有不少的描述方式,这里这个就是为了Fcitx写的路径。如果你需要基于.kde4的路径的话,最好使用TargetDir=。后面就是帮你解压罗。

[KNewStuff3]
Categories=Fcitx Theme
InstallPath=.config/fcitx/skin
Uncompress=archive

如果光是简单使用实际上下面一点点代码就够了:

        KNS3::DownloadDialog dialog("fcitx-skin.knsrc");
        dialog.exec();

它已经替你完成了解压缩,记忆已经安装的内容等等功能。

当然CMakeLists.txt也需要对应的更改,首先需要多链接上

 ${KDE4_KNEWSTUFF3_LIBS}

其次需要把 .knsrc 安装到正确目录

install(FILES fcitx-skin.knsrc DESTINATION ${CONFIG_INSTALL_DIR})

P.S. 其实写代码的时间相比申请新分类的时间要短得多……

Further Reading:http://techbase.kde.org/Development/Tutorials/Collaboration/HotNewStuff/Introduction

This entry was posted in KDE and tagged , . Bookmark the permalink.

2 Responses to 为你的KDE程序添加opendesktop集成

  1. Max says:
    Firefox 6.0.2 GNU/Linux

    我只要用Fx或Chrome開 ghns.freedesktop.org/ 就會要我另存新檔,開不了網站耶!那個KNewStuff是做什麼用的?

    [Reply]
  2. csslayer says:
    Firefox 9.0a1 Windows 7

    @Max 似乎那个网站已经废弃了?…… = =b 我不是很清楚。
    KNewStuff是那个库的名字啦~

    [Reply]

Leave a Reply

Your email address will not be published. Required fields are marked *

Note: Commenter is allowed to use '@User+blank' to automatically notify your reply to other commenter. e.g, if ABC is one of commenter of this post, then write '@ABC '(exclude ') will automatically send your comment to ABC. Using '@all ' to notify all previous commenters. Be sure that the value of User should exactly match with commenter's name (case sensitive).