为你的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).

This site uses Akismet to reduce spam. Learn how your comment data is processed.