顯示具有 Linux 標籤的文章。 顯示所有文章
顯示具有 Linux 標籤的文章。 顯示所有文章

2010年4月14日 星期三

Linux Application選單

首先要先讀取哪些選項要顯示的
讀取
~/.config/menus/applications.menu
/etc/xdg/menus/applications.menu (一定會存在)

在/usr/share/desktop-directories/目錄中
可找到對應的.directory
即可得到對應選單的資訊

然後檢查/usr/share/applications
這目錄下的.desktop
就能得到所有的application的資訊

而icon大部份會存在
/usr/share/icons/
/usr/share/pixmaps/
這些目錄中

其他資訊參考這篇
http://library.gnome.org/admin/system-admin-guide/2.30/menustructure-0

2009年2月23日 星期一

[引用]OpenSync藍芽同步

來源: ChinaUnix博客  日期: 2008.07.06 21:39 
http://blog.chinaunix.net/u2/72995/showart_1074534.html

誰再說Linux易用我要抽他了...
1,開啟手機藍牙
2,找到藍牙MAC和SyncMLClient的Chanel
hcitool scan
找到手機的藍牙位址,然後運行
sdptool browser
在結果中找到SyncMLClient一段:
Service Name: SyncMLClient
Service RecHandle: 0x10023
Service Class ID List:
UUID 128: 00000002-0000-1000-8000-0002ee000002
Protocol Descriptor List:
"L2CAP" (0x0100)
"RFCOMM" (0x0003)
Channel: 10
"OBEX" (0x0008)
Language Base Attr List:
code_ISO639: 0x454e
encoding: 0x6a
base_offset: 0x100
Profile Descriptor List:
"" (0x00000002-0000-1000-8000-0002ee000002)
Version: 0x0100
注意其中的Channel 10
3,測試:
export MAC=藍牙地址
export CHANNEL=10
syncml-obex-client -b $MAC $CHANNEL --slow-sync text/x-vcard Contacts --wbxml --identifier "PC Suite"
syncml-obex-client -b $MAC $CHANNEL --slow-sync text/x-vcalendar Calendar --wbxml --identifier "PC Suite"
4,使用msynctool和evolution
msynctool --addgroup mysync
msynctool --addmember mysync syncml-obex-client
msynctool --addmember mysync evo2-sync
配置syncml-obex-client
msynctool --configure mysync 1
主要是修改:
填寫你的藍牙MAC
填寫10
在檔最後前面填寫這一段:

Contacts
contact
vcard30


Calendar
event
vevent20

evo2-plugin不需要配置,如果需要配置就用msynctool --configure mysync 2
5,發現syncobj,否則會提示錯誤:
msynctool --discover mysync 1
msynctool --discover mysync 2
6,同步
msynctool --sync

2008年6月21日 星期六

[Python]Glade加Python的GUI設計入門

已經有一段時間沒有用Glade和Python寫程式了
為了怕自己忘記...所以還是記錄下來好了
首先在開始之前....要先安裝以下套件
Python....這是一定要的...不然程式不可能會Run
Glade3.... 這在開發階段是必須的...方便視窗的制作...當然還有別的方法可以做...那之後再討論
PyGtk.... 這也是必要的圖形介面的API
然後就是一步一步的開始程式設計

首先開啟Glade3



產生一個Frame




接著產生一個box(hbox或vbox都可以差別在直的排列或橫向排列)
設定切成幾份...這是切三份


然後放入元件...這邊放了一個Label和一個Text加一個hbox

在hbox中再放入兩個button...如此一來畫面就差不多完成了


接下來設定事件



最後就可以開始程式設計了...

程式碼如下:

#!/bin/python
import gtk.glade
import gtk
import pygtk

class View:
def __init__(self):
#載入glade檔
self.UI = gtk.glade.XML("View.glade")
#載入視窗
self.window = self.UI.get_widget("window1")

#戴入元件
self.btn1 = self.UI.get_widget("eventbox1")
self.btn2 = self.UI.get_widget("eventbox2")

#顯示視窗畫面
self.window.show_all()

#設定事件
dic = {"on_window1_destroy": gtk.main_quit,
"on_btn1_button_press_event":self.on_btn1_button_press_event,
"on_btn2_button_press_event":self.on_btn2_button_press_event
}

#連接事件
self.UI.signal_autoconnect(dic)

#事件的Function
def on_btn1_button_press_event(self,widget,event):
print "hello"

def on_btn2_button_press_event(self,widget,event):
print "world"

#以下為程式進入點
def main():
gtk.main()

if __name__ == "__main__":
tvexample = View()
main()



這是完成的畫面...