引用源:
plugin 巨集定義 —支援在對桌面新增外掛程式應用程式
#include#define hd_define_plugin_module
(tn, t_n, t_p)
#define hd_define_plugin_module_extended
(tn, t_n, t_p, code, code_load, code_unload)
#define hd_plugin_module_symbols
(t_n)
#define hd_plugin_module_symbols_code
(t_n, code_load, code_unload)
當定義桌面外掛程式函式時,應該使用hd_define_plugin()
或者hd_define_plugin_module_extended()
巨集定義。
他們和巨集g_define_dynamic_type()函式相似,但是 它能在載入模組時將**動態的註冊到class中,以執行。
example 1. 用hd_define_plugin_module()
來定義乙個home widget(home widget 即為放在桌面上的應用程式)
hdhomepluginitem parent;
hd_define_plugin_module()
#define hd_define_plugin_module(tn, t_n, t_p)register an object supplied by a plugin in hildon desktop.
功能:向hildon desktop中註冊乙個object
同時參考:g_define_dynamic_type()
.
tn
:
[一般是object的結構體名稱]這個object 型別名稱, in camel case.所有的名稱單詞的首字母要大寫 (例如: objecttype)
t_n
:
[一般是plugin入口函式名稱]這個object 型別名稱, 所有單詞小寫,並且每個單詞間用 '_'分隔開. (例如: object_type)
t_p
:
父類的 gtype 型別 (例如: statusbar_type_item )
#define hd_define_plugin_module_extended(tn, t_n, t_p, code, code_load, code_unload)register an object supplied by a plugin in hildon desktop.
see alsog_define_dynamic_type()
.
tn
:
一般是object的結構體名稱]這個object 型別名稱, in camel case.所有的名稱單詞的首字母要大寫 (例如: objecttype)
t_n
:
[一般是plugin入口函式名稱]這個object 型別名稱, 所有單詞小寫,並且每個單詞間用 '_'分隔開. (例如: object_type)
t_p
:
父類的 gtype 型別 (例如: statusbar_type_item )
code
:
定製**,加入 *_register_type()
名稱型別的函式
code_load
:
當載入外掛程式時需要執行的函式
code_unload
:
解除安裝外掛程式時需要執行的函式
#define hd_plugin_module_symbols(t_n)定義乙個外部函式來載入或解除安裝模組,它別巨集
hd_define_plugin_module()
所呼叫,並且一般不應該去直接呼叫這個巨集
t_n
:
[一般是plugin入口函式名稱]這個object 型別名稱, 所有單詞小寫,並且每個單詞間用 '_'分隔開. (例如: object_type)
#define hd_plugin_module_symbols_code(t_n, code_load, code_unload)defines exported functions to load and unload the modules. it is used by
hd_define_plugin_module _extended()
and should usually not used directly.
t_n
:
the name of the object type, in lowercase, with words separated by '_'. (ex: object_type)
code_load
:
code executed when the plugin is loaded.
code_unload
:
code executed when the plugin is unloaded.
Maemo開發個人感想
做完maemo的開發本來有些感想,有些認識一直沒有機會寫下來。借這個機會將其寫下來供以後參考,同時也可以給不了解maemo的希望了解這個東西的人乙個參考。我就大概介紹一下maemo以及開發注意的問題。sybian是nokia的主流開發平台,但maemo是nokia的乙個核心高階開發平台。該平台基於g...
在WinXP or Vista上開發Webpart
當你臨急要做個moss的webpart時,發現你可以用的唯一的機器居然是xp,居然只有vs,居然不是win2k3,居然沒有裝wss 3.0或者moss,居然沒有visual studio extensions for sharepoint都沒有。而這時候你的老闆 專案經理 客戶正像催命鬼一樣催著你,...
在WinXP or Vista上開發Webpart
當你臨急要做個moss的webpart時,發現你可以用的唯一的機器居然是xp,居然只有vs,居然不是win2k3,居然沒有裝wss 3.0或者moss,居然沒有visual studio extensions for sharepoint都沒有。而這時候你的老闆 專案經理 客戶正像催命鬼一樣催著你,...