xiaoxiaoleemin

          天道酬勤,小小加油
          posts - 19, comments - 12, trackbacks - 0, articles - 0

          2007年5月2日

          posted @ 2008-11-18 15:17 xiaoxiaoleemin 閱讀(2555) | 評論 (0)編輯 收藏

          posted @ 2008-10-16 13:53 xiaoxiaoleemin 閱讀(854) | 評論 (0)編輯 收藏

          posted @ 2008-04-03 12:53 xiaoxiaoleemin 閱讀(729) | 評論 (0)編輯 收藏

               摘要: 要讓編輯器生動起來,GMF框架提供了更簡單的方法,有些特性甚至不用修改代碼只通過設置一下gmfgraph中某些元素的屬性就可以實現。這一點,比GEF簡單的多。  閱讀全文

          posted @ 2008-04-01 23:05 xiaoxiaoleemin 閱讀(737) | 評論 (0)編輯 收藏

               摘要: 在Java中用JDOM才操作xml文件很方便,需要的代碼量也比其它XML解析器要少的多。下面用一個簡單的例子來說明JDOM讀寫xml的最基本的步驟。  閱讀全文

          posted @ 2007-05-09 18:16 xiaoxiaoleemin 閱讀(1655) | 評論 (1)編輯 收藏

               摘要: 這里介紹基于Type的連接的建立方法,仍然用上一篇基于Reference的連接中用到的例子School,有老師類和學生類,同時老師能夠指導多名學生。這種指導關系在GMF編輯器中用連接來表示,基于Type的連接就是在ecore模型中為該連接創建一個類TeacherToStudent,ecore模型對應的ecore_diagram圖形如下所示:
            閱讀全文

          posted @ 2007-05-07 14:42 xiaoxiaoleemin 閱讀(599) | 評論 (0)編輯 收藏

               摘要: 我習慣于直接用ECore Editor建立ecore模型,如果裝了GMF插件的話,在ecore文件上點擊鼠標右鍵,通過菜單“Initialize ecore-diagram diagram file”可以生成類似類圖的表示,這樣可以從整體上看模型。而且在建模的過程中可以隨時"Validate"以檢查當前存在的錯誤。以下是一些常見的問題:  閱讀全文

          posted @ 2007-05-07 14:10 xiaoxiaoleemin 閱讀(1007) | 評論 (1)編輯 收藏

               摘要: GMF中的Link有兩個,分別是基于Type的和基于Reference的。對于前者,在ecore模型中有一個類對應這個連接,創建一個連接即創建了該類的一個實例,試想,如果一個模型比較復雜,有很多連接時,這種方法要在模型中要為連接建立很多與業務無關的類,使得模型非常復雜;對于后者,沒有必要為每個連接在ecore中建立一個類,而是設置該連接對應的Reference即可。下面用一個school的模型來說明基于Reference的連接的建立方法,這個模型非常簡單,如下圖  閱讀全文

          posted @ 2007-05-06 23:15 xiaoxiaoleemin 閱讀(1203) | 評論 (4)編輯 收藏

               摘要: GMF是Eclipse的一個插件,如同其它插件一樣,它首先需要安裝在相應版本的Eclipse上。另外,它還需要其它幾個插件  閱讀全文

          posted @ 2007-05-06 21:08 xiaoxiaoleemin 閱讀(1533) | 評論 (0)編輯 收藏

               摘要: 上個帖子介紹了如何顯示PropertySheet視圖,這里繼續介紹如何顯示Outline視圖,還是只關心與顯示大綱視圖相關的代碼:
          public class MySchoolEditor extends EditorPart implements ISelectionListener {
          ...
          protected IContentOutlinePage contentOutlinePage;  閱讀全文

          posted @ 2007-05-06 18:03 xiaoxiaoleemin 閱讀(783) | 評論 (0)編輯 收藏

               摘要: 前面的幾篇是讀了《EMF:A Developer's Guide》一書前三章的讀書筆記,我覺得這三章的內容是最重要的,介紹了EMF Framework的一些設計、結構以及實現的問題。但是這些只是一些原理性的東西,要熟練掌握EMF的方法是在項目中應用它,我們可以從修改EMF生成的代碼入手。EMF生成的編輯器是MultiPageEditor,比較復雜,我們可以參考它自己寫一個普通的Editor,在這個過程中可以熟悉哪些代碼是用于實現哪些功能的。  閱讀全文

          posted @ 2007-05-06 17:24 xiaoxiaoleemin 閱讀(2085) | 評論 (2)編輯 收藏

               摘要: 上一部分中,我們看到了如何通過content和label provider來顯示EMF模型,這一部分介紹如何修改、編輯EMF模型。EMF.Edit支持基于Command的模型編輯方式,可以自動的undo和redo。EMF.Edit的Command Framework可以分為兩部分,第一部分是common command framework,其中定義了一些基本的命令接口,實現了例如basic command stack,compound command等,雖然這些命令主要用于EMF.Edit,但是實際上可以獨立于EMF.Edit使用;第二部分是EMF.Edit 命令,是指一些專門編輯EObject的命令。  閱讀全文

          posted @ 2007-05-05 20:44 xiaoxiaoleemin 閱讀(783) | 評論 (0)編輯 收藏

               摘要: 本書的第二章介紹了EMF產生的Model部分的代碼,你可以使用EMF Edit Framework來為model構建功能強大的視圖和編輯器。在EMF為你生成的編輯器里,可以編輯(復制,粘貼,拖拽等)、顯示model,還可以無限的redo/undo。如果這個編輯器不能完全滿足你的需求,你可以在此基礎上做一些修改,肯定比從頭開始寫節約時間。
          Eclipse通過JFace中的一些Viewer來顯示結構化的數據,這些Viewer不直接從model中獲取要顯示的數據,而是通過ContentProvider和LabelProvider來取得要顯示的內容、文本以及圖標等信息。  閱讀全文

          posted @ 2007-05-05 18:08 xiaoxiaoleemin 閱讀(935) | 評論 (0)編輯 收藏

               摘要: EMF Framework提供了模型變化通知、持久化支持、操縱EMF對象的反射API等功能來幫助用戶提高工作效率,下面分別詳細介紹一下。
          1.Notification and Adapter
          EMF生成的每一個類還是一個Notifier類型,因此當它的屬性或者引用改變的時候可以發出通知。這是一個很重要的性質,通過監聽EObject的變化可以及時地更新視圖或者與之相關聯的對象。EMF中的Notification Observer(Listener)叫做Adapter,它除了監聽事件以外,還可以擴展其它行為(extend behavior)等。  閱讀全文

          posted @ 2007-05-04 21:44 xiaoxiaoleemin 閱讀(930) | 評論 (1)編輯 收藏

               摘要: 1.EMF的元模型Ecore
          我們通常所說的模型(Model)是指應用程序更高層次的描述,通過它可以生成部分甚至全部的實現代碼,可以由UML等標準的方法來定義。EMF(Eclipse Modeling Framework)中的模型層次沒有這么高,它和實現直接關聯。
          EMF是一個可以產生代碼的框架,你可以通過UML類圖、XML Schema、Java Interface等任何一種方式來定義EMF模型,而且可以由一種方式生成另外其它方式,在這里EMF 模型就是把這三者結合在一起的更高層次的一種表示。EMF模型本質上是UML類圖的子集,它是關于應用的類和數據的簡單模型。  閱讀全文

          posted @ 2007-05-04 19:13 xiaoxiaoleemin 閱讀(1037) | 評論 (0)編輯 收藏

               摘要: Eclipse是一個功能很強大的開發工具,如果能熟練使用快捷鍵,會大大提高效率。

          F2: 類或者方法,查看注釋。
          F3: 類或者方法,查看源碼(同:Ctrl+鼠標左鍵)
          F4: 類,查看在類庫中的繼承層次。
          F5:調試時單步跳入。
          F6:調試時單步跳過。
          F8:調到下一個斷點,如果沒有,則執行完畢。
          F11:快速運行最新運行過的程序(調試狀態)。  閱讀全文

          posted @ 2007-05-02 21:17 xiaoxiaoleemin 閱讀(1467) | 評論 (3)編輯 收藏

          主站蜘蛛池模板: 太和县| 综艺| 信阳市| 丰都县| 化州市| 克什克腾旗| 中山市| 井研县| 汝南县| 安徽省| 郎溪县| 罗城| 夏河县| 建始县| 宁德市| 怀安县| 台湾省| 澄江县| 朝阳市| 中江县| 故城县| 涟源市| 平邑县| 楚雄市| 丹东市| 沈丘县| 三穗县| 象山县| 唐河县| 金堂县| 徐水县| 开封市| 治县。| 湖南省| 天门市| 安陆市| 全南县| 宝应县| 二连浩特市| 勃利县| 枣强县|