brew的事件機制
2007/03/08 10:47 a.m.
brew中的handle event函式都是boolean返回型別的,這是為了實現事件處理的層次機制,當該層上的handle event沒有處理該事件時,應該返回false,以便上層對該事件感興趣的handle event來處理。如果處理了,應該返回true,說明該事件已被處理,無需其他層再處理。
下面給出完整的brew環境下訊息分發和處理的流程。
首先brew存在於乙個task中,儘管允許brew執行於乙個單獨的task中,但是實際oem中都是將其執行於現有的乙個task中,比如ui task。當brew執行後,首先ui task中捕捉到各種事件,此時ui task通過aee_dispatch將事件分發至brew環境中,brew環境再通過aee_sentevent具體分發事件至目的地。接著在兩種不同的情況下將走不同的流程。
handling suspend and resume events
brew中的設計模式
工廠模式
1. 工廠模式介紹
2. brew中的ishell_createinstance
singleton模式
1. singleton模式
2. brew中singleton的不同實現方式和注意事項
3. singleton/multi-instance的使用場合
4. singleton中如何儲存應用關聯的非共享資料
5. multi-instance中如何進行區域性共享
facade模式
1. facade模式介紹
2. brew是手機軟體的facade
proxy模式
1. proxy模式介紹
2. bmp中的stub/skelecton
observer模式
1. observer模式介紹
2. brew中的model-listener
3. brew中的notifier
BREW手機中的事件處理
brew是基於事件驅動的,可以通過ishell介面中的相關方法傳送或接收指定的事件,事件在系統中的分發處理是通過aee層來實現的。傳送事件的方法有ishell sendevent,ishell postevent等,接收特定事件的方法主要是通過ishell registernotify方法來實現,也...
深入BREW介面機制
初學brew時,最煩人的就是介面的定義了,一大堆的巨集,讓人不知所云。這裡,將以helloworld為例,我們一步一步揭開它的神秘面紗。typedef struct helloworld helloworld typedef struct struct declare vtbl 又是什麼?它的巨集定...
BREW開發教程 4 BREW訊息處理機制
uint32 dwparam 第三和第四分別為16位和32位與事件相關的資料,這些值是與具體的事件相關的。鍵盤事件描述 evt key press evt key release evt key 在對話方塊中通過方向鍵來移動游標的方向取決於哪種控制項具有焦點以及使用者按了哪個方向 上 下 左 右 鍵...