Feeling

              三人行,必有我師焉

             ::  :: 新隨筆 :: 聯系 ::  :: 管理 ::
            185 隨筆 :: 0 文章 :: 392 評論 :: 0 Trackbacks
          SWT Win32 Extension寫到現在的狀況,在win32 natvie上面已經沒有太多花樣了,常用的一些功能我都已經做得差不多了,現在主要是做一些自定義的控件,就目前的進度,還只是完成了Shell,Menu,ToolBar 3個部分,還有很多內容可以慢慢完善。不過自從發布了自定義的菜單以后,SWT Win32 Extension的用戶群大增,也對我提出了更高的要求。不過現在的主要任務是實現功能,因此代碼的質量上肯定是差了點。現有的接口都是我自己通過Example的需求來加的,以后等功能做的完善上,再將現有的架構進行較大的重構,我想應該是一個不錯的步驟。畢竟就我一個人做這個東西,還要兼職寫Example,Document,測試,網站維護,雖然每天都在加班加點,但還是感覺時間不夠用。每天都有用戶發郵件來催進度,所以維護這個項目現在真的是讓我廢寢忘食了,但總體來說還是物有所值,畢竟辛辛苦苦的努力,還是有所回報的。開源嘛,本來就是一種奉獻精神,回饋社會,讓所有人都來分享自己的成果。

          這些天一直忙著寫新的Feature,今天寫的差不多了,于是回過頭來整理Example。本來上個版本我就想接管Eclipse Native的菜單,不過沒能如愿,因為Eclipse的菜單都是LazyLoad的。今天又嘗試了一下,終于成功的實現了這個功能。做完了才知道其實很簡單,所遇到的重重障礙只不過是因為自己的框架老是蹦出新的bug。唉,自己測試自己開發的東西總是有盲點存在,實在是無能為力呀。

          從本質上來說,我自定義的菜單和標準菜單控件的代碼及事件上的實現基本一致,所以接管Eclipse原生的菜單并不是一件很難的事情,當自定義的菜單接收到一個事件的時候,只需將這個事件轉發給Eclipse的原生菜單就好了,一切就是這么簡單。重點就是Notify SWT.Selected 和 SWT.Show 事件,前者用來觸發Action的行為,后者用來觸發Eclipse原生菜單的LazyLoad。

          截圖如下:
          posted on 2008-04-20 20:37 三人行,必有我師焉 閱讀(3390) 評論(4)  編輯  收藏

          評論

          # re: 用Custom菜單接管Eclipse的Native菜單[未登錄] 2008-04-20 20:52 BeanSoft
          實在是太好了,期待樓主的新版本!  回復  更多評論
            

          # re: 用Custom菜單接管Eclipse的Native菜單 2008-04-21 10:10 Always BaNg.
          我也是做Eclipse開發的,Win32和GTK+都懂一點點,樓主的SWT Extension有GTK+的版本么?

          希望可以加入到這個隊伍中來。




            回復  更多評論
            

          # re: 用Custom菜單接管Eclipse的Native菜單 2008-04-21 13:24 三人行,必有我師焉
          @Always BaNg.
          本來考慮過GTK下的開發的,項目都已經建好了,但是除了custom control以外,我不知道可以加些什么東西進去,比較花哨的功能都需要比較高的GTK版本。我本意是想兼容主流平臺的,如果主流平臺都不支持的話,這個項目就沒有什么意義了。如果你有興趣的話,當然歡迎加入,可以加我的MSN或者QQ詳談。

          MSN:cnfree2000@hotmail.com
          QQ:41934961

          全天在線,平常隱身,留言即可。  回復  更多評論
            

          # re: 用Custom菜單接管Eclipse的Native菜單 2008-05-24 13:05 Macros
          請問一下。你是怎樣用SWT Win32 Extension換Eclipse的皮膚的?  回復  更多評論
            


          只有注冊用戶登錄后才能發表評論。


          網站導航:
           
          GitHub |  開源中國社區 |  maven倉庫 |  文件格式轉換 
          主站蜘蛛池模板: 北宁市| 衡阳市| 孝义市| 特克斯县| 沙湾县| 千阳县| 鄢陵县| 霍城县| 焦作市| 谢通门县| 乡宁县| 民权县| 宜宾市| 石屏县| 台南县| 静宁县| 辽源市| 双辽市| 稷山县| 本溪| 察雅县| 泸西县| 义马市| 容城县| 吐鲁番市| 麻阳| 郧西县| 乾安县| 昆明市| 临颍县| 凤城市| 丹寨县| 穆棱市| 布拖县| 泉州市| 株洲县| 天水市| 遂昌县| 峡江县| 布拖县| 永福县|