实例介绍
免分资源 Eclipse插件开发学习笔记-源代码1至24章.rar
【实例截图】
【核心代码】
Eclipse插件开发学习笔记-源代码1至24章
├── chapter1-8
│ ├── ch1-8
│ │ ├── book
│ │ │ ├── ch19
│ │ │ │ └── resourcebundle
│ │ │ │ ├── list
│ │ │ │ │ ├── ListResourceBundleDemo.java
│ │ │ │ │ ├── Messages.java
│ │ │ │ │ └── Messages_zh_CN.java
│ │ │ │ └── property
│ │ │ │ ├── Messages.properties
│ │ │ │ ├── Messages_zh_CN.properties
│ │ │ │ └── PropertyResourceBundleDemo.java
│ │ │ ├── ch2
│ │ │ │ ├── ContentProposal.java
│ │ │ │ ├── FieldHelper.java
│ │ │ │ ├── HelloSWT.java
│ │ │ │ ├── image.bmp
│ │ │ │ └── saf.java
│ │ │ ├── ch3
│ │ │ │ ├── BlankWindow.java
│ │ │ │ ├── ColoredLabel.java
│ │ │ │ ├── ManualDispose.java
│ │ │ │ ├── MonitorInfo.java
│ │ │ │ ├── MyShell.java
│ │ │ │ ├── ShellDependency.java
│ │ │ │ ├── UIThread_1.java
│ │ │ │ ├── UIThread_2.java
│ │ │ │ ├── UsingFont.java
│ │ │ │ ├── UsingImage.java
│ │ │ │ ├── UsingRegion.java
│ │ │ │ ├── UsingSwing.java
│ │ │ │ ├── UsingSystemTray.java
│ │ │ │ └── buttonImage.gif
│ │ │ ├── ch4
│ │ │ │ ├── ComboCoolBar.java
│ │ │ │ ├── EnhancedToolBar.java
│ │ │ │ ├── FileDialog_1.java
│ │ │ │ ├── FileDialog_2.java
│ │ │ │ ├── FileDialog_3.java
│ │ │ │ ├── ListSelection.java
│ │ │ │ ├── MonitorCombo.java
│ │ │ │ ├── MonitorMenu.java
│ │ │ │ ├── MonitorTab.java
│ │ │ │ ├── SimpleCombo.java
│ │ │ │ ├── Snippet167.java
│ │ │ │ ├── SpecialText.java
│ │ │ │ ├── ToolBarCoolBar.java
│ │ │ │ ├── UsingButton.java
│ │ │ │ ├── UsingColorDialog.java
│ │ │ │ ├── UsingCombo.java
│ │ │ │ ├── UsingCoolBar.java
│ │ │ │ ├── UsingDirectoryDialog.java
│ │ │ │ ├── UsingFontDialog.java
│ │ │ │ ├── UsingLabel.java
│ │ │ │ ├── UsingLabel_2.java
│ │ │ │ ├── UsingList.java
│ │ │ │ ├── UsingMenu.java
│ │ │ │ ├── UsingMessageBox_1.java
│ │ │ │ ├── UsingMessageBox_2.java
│ │ │ │ ├── UsingMultiLineText.java
│ │ │ │ ├── UsingTab.java
│ │ │ │ ├── UsingText.java
│ │ │ │ ├── UsingToolbar.java
│ │ │ │ ├── demo.gif
│ │ │ │ ├── image1.bmp
│ │ │ │ ├── image2.bmp
│ │ │ │ ├── menu1.gif
│ │ │ │ ├── menu2.gif
│ │ │ │ ├── toolbar1.gif
│ │ │ │ ├── toolbar2.gif
│ │ │ │ ├── toolbar3.gif
│ │ │ │ └── toolbar4.gif
│ │ │ ├── ch5
│ │ │ │ ├── CompositeCursor.java
│ │ │ │ ├── CreateComposite.java
│ │ │ │ ├── CreatingGroup.java
│ │ │ │ ├── CreatingShellContextMenu.java
│ │ │ │ ├── MonitorShell.java
│ │ │ │ ├── MyControl.java
│ │ │ │ ├── MyData.java
│ │ │ │ ├── MyLayout.java
│ │ │ │ ├── NoRadioComposite.java
│ │ │ │ ├── ShellBackground.java
│ │ │ │ ├── ShellBackgroundMode.java
│ │ │ │ ├── ShellModality.java
│ │ │ │ ├── UsingFillLayout.java
│ │ │ │ ├── UsingFormLayout.java
│ │ │ │ ├── UsingGridLayout.java
│ │ │ │ ├── UsingMyControl.java
│ │ │ │ ├── UsingMyLayout.java
│ │ │ │ ├── UsingRowLayout.java
│ │ │ │ ├── UsingStackLayout.java
│ │ │ │ ├── cursor.gif
│ │ │ │ └── image1.bmp
│ │ │ ├── ch6
│ │ │ │ ├── AControl.java
│ │ │ │ ├── MyShell.java
│ │ │ │ └── MyShell2.java
│ │ │ ├── ch7
│ │ │ │ ├── list
│ │ │ │ │ ├── ListContentProvider.java
│ │ │ │ │ ├── ListLabelProvider.java
│ │ │ │ │ ├── ListModel.java
│ │ │ │ │ ├── User.java
│ │ │ │ │ └── UsingListViewer.java
│ │ │ │ ├── scroll
│ │ │ │ │ ├── ScrollableImageViewer.java
│ │ │ │ │ ├── UsingScrollBar.java
│ │ │ │ │ └── dddgs04.jpg
│ │ │ │ ├── table
│ │ │ │ │ ├── TableContentProvider.java
│ │ │ │ │ ├── TableLabelProvider.java
│ │ │ │ │ ├── UsingTable.java
│ │ │ │ │ ├── UsingTableViewer.java
│ │ │ │ │ ├── icon1.gif
│ │ │ │ │ └── icon2.gif
│ │ │ │ ├── texteditor
│ │ │ │ │ ├── TextEditor1.java
│ │ │ │ │ ├── TextEditor2.java
│ │ │ │ │ └── TextEditor3.java
│ │ │ │ └── tree
│ │ │ │ ├── User.java
│ │ │ │ ├── UserStructure.java
│ │ │ │ ├── UserTreeContentProvider.java
│ │ │ │ ├── UsingTree.java
│ │ │ │ └── UsingTreeViewer.java
│ │ │ └── ch8
│ │ │ ├── action
│ │ │ │ ├── ActionDemoShell.java
│ │ │ │ ├── MyAction.java
│ │ │ │ └── toolbar1.gif
│ │ │ └── event
│ │ │ ├── DrawLineInShell.java
│ │ │ └── SimulateEvent.java
│ │ └── com
│ │ └── swtdesigner
│ │ └── SWTResourceManager.java
│ └── 第1-8章程序说明.doc
├── chapter10
│ ├── 10章程序说明.doc
│ ├── 10章程序说明.txt
│ └── com.plugindev.addressbook
│ ├── META-INF
│ │ └── MANIFEST.MF
│ ├── bin
│ │ └── com
│ │ └── plugindev
│ │ └── addressbook
│ │ ├── Activator.class
│ │ └── views
│ │ ├── AddressView$1.class
│ │ ├── AddressView$2.class
│ │ ├── AddressView$3.class
│ │ ├── AddressView$4.class
│ │ ├── AddressView$5.class
│ │ ├── AddressView$NameSorter.class
│ │ ├── AddressView$ViewContentProvider.class
│ │ ├── AddressView$ViewLabelProvider.class
│ │ └── AddressView.class
│ ├── build.properties
│ ├── icons
│ │ └── sample.gif
│ ├── plugin.xml
│ └── src
│ └── com
│ └── plugindev
│ └── addressbook
│ ├── Activator.java
│ └── views
│ └── AddressView.java
├── chapter11
│ ├── 11章程序说明.doc
│ ├── 11章程序说明.txt
│ └── com.plugindev.addressbook
│ ├── META-INF
│ │ └── MANIFEST.MF
│ ├── bin
│ │ └── com
│ │ └── plugindev
│ │ └── addressbook
│ │ ├── Activator.class
│ │ ├── actions
│ │ │ └── OpenAddressViewAction.class
│ │ ├── example
│ │ │ ├── EditorExampleAction.class
│ │ │ ├── ObjExampleAction.class
│ │ │ ├── TopEditorAction.class
│ │ │ ├── ViewExampleAction.class
│ │ │ └── ViewerExampleAction.class
│ │ └── views
│ │ ├── AddressView$1.class
│ │ ├── AddressView$2.class
│ │ ├── AddressView$3.class
│ │ ├── AddressView$4.class
│ │ ├── AddressView$5.class
│ │ ├── AddressView$NameSorter.class
│ │ ├── AddressView$ViewContentProvider.class
│ │ ├── AddressView$ViewLabelProvider.class
│ │ └── AddressView.class
│ ├── build.properties
│ ├── icons
│ │ └── sample.gif
│ ├── plugin.xml
│ └── src
│ └── com
│ └── plugindev
│ └── addressbook
│ ├── Activator.java
│ ├── actions
│ │ └── OpenAddressViewAction.java
│ ├── example
│ │ ├── EditorExampleAction.java
│ │ ├── ObjExampleAction.java
│ │ ├── TopEditorAction.java
│ │ ├── ViewExampleAction.java
│ │ └── ViewerExampleAction.java
│ └── views
│ └── AddressView.java
├── chapter12
│ ├── 12章程序说明.doc
│ ├── 12章程序说明.txt
│ └── com.plugindev.addressbook
│ ├── META-INF
│ │ └── MANIFEST.MF
│ ├── bin
│ │ └── com
│ │ └── plugindev
│ │ └── addressbook
│ │ ├── Activator.class
│ │ ├── actions
│ │ │ ├── AddAddressAction.class
│ │ │ ├── AddressViewerFilterAction.class
│ │ │ ├── DeleteAddressAction.class
│ │ │ └── OpenAddressViewAction.class
│ │ ├── example
│ │ │ ├── EditorExampleAction.class
│ │ │ ├── ObjExampleAction.class
│ │ │ ├── TopEditorAction.class
│ │ │ ├── ViewExampleAction.class
│ │ │ └── ViewerExampleAction.class
│ │ ├── models
│ │ │ ├── AddressCategory$1.class
│ │ │ ├── AddressCategory$2.class
│ │ │ ├── AddressCategory$3.class
│ │ │ ├── AddressCategory$4.class
│ │ │ ├── AddressCategory$5.class
│ │ │ ├── AddressCategory$6.class
│ │ │ ├── AddressCategory$7.class
│ │ │ ├── AddressCategory$8.class
│ │ │ ├── AddressCategory$9.class
│ │ │ ├── AddressCategory.class
│ │ │ ├── AddressItem.class
│ │ │ ├── AddressItemPropertySource$1.class
│ │ │ ├── AddressItemPropertySource$2.class
│ │ │ ├── AddressItemPropertySource.class
│ │ │ ├── AddressManager.class
│ │ │ ├── AddressManagerEvent.class
│ │ │ └── AddressManagerListener.class
│ │ ├── util
│ │ │ ├── ImageCache.class
│ │ │ ├── ImageKeys.class
│ │ │ ├── StringMatcher$Position.class
│ │ │ └── StringMatcher.class
│ │ └── views
│ │ ├── AddressView$1.class
│ │ ├── AddressView$2.class
│ │ ├── AddressView$3.class
│ │ ├── AddressView$4.class
│ │ ├── AddressView$5.class
│ │ ├── AddressView$6.class
│ │ ├── AddressView$7.class
│ │ ├── AddressView$8.class
│ │ ├── AddressView.class
│ │ ├── AddressViewContentProvider.class
│ │ ├── AddressViewLabelProvider.class
│ │ ├── AddressViewerCategoryFilter.class
│ │ ├── AddressViewerSorter$1.class
│ │ ├── AddressViewerSorter$SortInfo.class
│ │ └── AddressViewerSorter.class
│ ├── build.properties
│ ├── icons
│ │ ├── Thumbs.db
│ │ ├── actions
│ │ │ ├── add.gif
│ │ │ ├── delete.gif
│ │ │ ├── delete_dis.gif
│ │ │ └── filter.gif
│ │ ├── category
│ │ │ ├── business.gif
│ │ │ ├── family.gif
│ │ │ ├── friends.gif
│ │ │ ├── lover.gif
│ │ │ ├── mate.gif
│ │ │ ├── ordinary.gif
│ │ │ ├── teacher.gif
│ │ │ ├── unknown.gif
│ │ │ └── vip.gif
│ │ ├── category.gif
│ │ ├── people.gif
│ │ └── sample.gif
│ ├── plugin.xml
│ └── src
│ └── com
│ └── plugindev
│ └── addressbook
│ ├── Activator.java
│ ├── actions
│ │ ├── AddAddressAction.java
│ │ ├── AddressViewerFilterAction.java
│ │ ├── DeleteAddressAction.java
│ │ └── OpenAddressViewAction.java
│ ├── example
│ │ ├── EditorExampleAction.java
│ │ ├── ObjExampleAction.java
│ │ ├── TopEditorAction.java
│ │ ├── ViewExampleAction.java
│ │ └── ViewerExampleAction.java
│ ├── models
│ │ ├── AddressCategory.java
│ │ ├── AddressItem.java
│ │ ├── AddressItemPropertySource.java
│ │ ├── AddressManager.java
│ │ ├── AddressManagerEvent.java
│ │ └── AddressManagerListener.java
│ ├── util
│ │ ├── ImageCache.java
│ │ ├── ImageKeys.java
│ │ └── StringMatcher.java
│ └── views
│ ├── AddressView.java
│ ├── AddressViewContentProvider.java
│ ├── AddressViewLabelProvider.java
│ ├── AddressViewerCategoryFilter.java
│ └── AddressViewerSorter.java
├── chapter13
│ ├── 13章程序说明.doc
│ ├── 13章程序说明.txt
│ └── com.plugindev.addressbook
│ ├── META-INF
│ │ └── MANIFEST.MF
│ ├── bin
│ │ └── com
│ │ └── plugindev
│ │ └── addressbook
│ │ ├── Activator.class
│ │ ├── IPageLayout.class
│ │ ├── actions
│ │ │ ├── AddAddressAction.class
│ │ │ ├── AddressViewerFilterAction.class
│ │ │ ├── DeleteAddressAction.class
│ │ │ ├── OpenAddressViewAction.class
│ │ │ └── OpenFormEditorAction.class
│ │ ├── editors
│ │ │ ├── AddressFormEditor.class
│ │ │ ├── AddressFormEditorContributor.class
│ │ │ ├── MasterDetailsPage.class
│ │ │ ├── PageWithSubPages$1.class
│ │ │ ├── PageWithSubPages$2.class
│ │ │ ├── PageWithSubPages$TextSection.class
│ │ │ ├── PageWithSubPages.class
│ │ │ ├── ScrolledPropertiesBlock$1.class
│ │ │ ├── ScrolledPropertiesBlock$2.class
│ │ │ ├── ScrolledPropertiesBlock$3.class
│ │ │ ├── ScrolledPropertiesBlock$4.class
│ │ │ ├── ScrolledPropertiesBlock$5.class
│ │ │ ├── ScrolledPropertiesBlock$6.class
│ │ │ ├── ScrolledPropertiesBlock.class
│ │ │ ├── SourcePage$1.class
│ │ │ ├── SourcePage.class
│ │ │ ├── actions
│ │ │ │ ├── RemoveAddressListAction$1.class
│ │ │ │ ├── RemoveAddressListAction.class
│ │ │ │ └── SaveAction.class
│ │ │ └── models
│ │ │ ├── AddressList.class
│ │ │ ├── AddressListManager.class
│ │ │ ├── AddressListProperties$1.class
│ │ │ ├── AddressListProperties$2.class
│ │ │ ├── AddressListProperties.class
│ │ │ ├── AreaAddressList.class
│ │ │ ├── AreaAddressListProperties.class
│ │ │ ├── BasicAddressList.class
│ │ │ ├── BasicAddressListProperties.class
│ │ │ ├── ChoiceItemContents.class
│ │ │ ├── FormEditorInput.class
│ │ │ ├── IManagerListener.class
│ │ │ ├── MYXMLMemento$DOMWriter.class
│ │ │ ├── MYXMLMemento.class
│ │ │ ├── MasterContentProvider.class
│ │ │ ├── MasterLabelProvider.class
│ │ │ ├── PhoneAddressList.class
│ │ │ ├── PhoneAddressListItemProperties.class
│ │ │ ├── SimpleFormEditorInput.class
│ │ │ └── TextItemContents.class
│ │ ├── example
│ │ │ ├── EditorExampleAction.class
│ │ │ ├── ObjExampleAction.class
│ │ │ ├── TopEditorAction.class
│ │ │ ├── ViewExampleAction.class
│ │ │ └── ViewerExampleAction.class
│ │ ├── models
│ │ │ ├── AddressCategory$1.class
│ │ │ ├── AddressCategory$2.class
│ │ │ ├── AddressCategory$3.class
│ │ │ ├── AddressCategory$4.class
│ │ │ ├── AddressCategory$5.class
│ │ │ ├── AddressCategory$6.class
│ │ │ ├── AddressCategory$7.class
│ │ │ ├── AddressCategory$8.class
│ │ │ ├── AddressCategory$9.class
│ │ │ ├── AddressCategory.class
│ │ │ ├── AddressItem.class
│ │ │ ├── AddressItemPropertySource$1.class
│ │ │ ├── AddressItemPropertySource$2.class
│ │ │ ├── AddressItemPropertySource.class
│ │ │ ├── AddressManager.class
│ │ │ ├── AddressManagerEvent.class
│ │ │ └── AddressManagerListener.class
│ │ ├── util
│ │ │ ├── ImageCache.class
│ │ │ ├── ImageKeys.class
│ │ │ ├── Messages.class
│ │ │ ├── StringMatcher$Position.class
│ │ │ └── StringMatcher.class
│ │ └── views
│ │ ├── AddressView$1.class
│ │ ├── AddressView$2.class
│ │ ├── AddressView$3.class
│ │ ├── AddressView$4.class
│ │ ├── AddressView$5.class
│ │ ├── AddressView$6.class
│ │ ├── AddressView$7.class
│ │ ├── AddressView$8.class
│ │ ├── AddressView.class
│ │ ├── AddressViewContentProvider.class
│ │ ├── AddressViewLabelProvider.class
│ │ ├── AddressViewerCategoryFilter.class
│ │ ├── AddressViewerSorter$1.class
│ │ ├── AddressViewerSorter$SortInfo.class
│ │ └── AddressViewerSorter.class
│ ├── build.properties
│ ├── icons
│ │ ├── Thumbs.db
│ │ ├── actions
│ │ │ ├── add.gif
│ │ │ ├── delete.gif
│ │ │ ├── delete_dis.gif
│ │ │ └── filter.gif
│ │ ├── category
│ │ │ ├── business.gif
│ │ │ ├── family.gif
│ │ │ ├── friends.gif
│ │ │ ├── lover.gif
│ │ │ ├── mate.gif
│ │ │ ├── ordinary.gif
│ │ │ ├── teacher.gif
│ │ │ ├── unknown.gif
│ │ │ └── vip.gif
│ │ ├── category.gif
│ │ ├── editors
│ │ │ ├── area.gif
│ │ │ ├── basic.gif
│ │ │ ├── close_view.gif
│ │ │ ├── contact.gif
│ │ │ ├── editor.gif
│ │ │ ├── file_obj.gif
│ │ │ ├── form_banner.gif
│ │ │ ├── help_topic.gif
│ │ │ ├── large_image.gif
│ │ │ ├── linkto_help.gif
│ │ │ ├── newprj_wiz.gif
│ │ │ ├── phone.gif
│ │ │ ├── sample.gif
│ │ │ ├── th_horizontal.gif
│ │ │ └── th_vertical.gif
│ │ ├── people.gif
│ │ ├── perspectives
│ │ │ └── perspective.gif
│ │ ├── preferences
│ │ │ └── contact.jpg
│ │ ├── sample.gif
│ │ └── wizards
│ │ ├── new_add_wiz.gif
│ │ └── new_wiz.gif
│ ├── plugin.xml
│ └── src
│ └── com
│ └── plugindev
│ └── addressbook
│ ├── Activator.java
│ ├── IPageLayout.java
│ ├── actions
│ │ ├── AddAddressAction.java
│ │ ├── AddressViewerFilterAction.java
│ │ ├── DeleteAddressAction.java
│ │ ├── OpenAddressViewAction.java
│ │ └── OpenFormEditorAction.java
│ ├── editors
│ │ ├── AddressFormEditor.java
│ │ ├── AddressFormEditorContributor.java
│ │ ├── MasterDetailsPage.java
│ │ ├── PageWithSubPages.java
│ │ ├── ScrolledPropertiesBlock.java
│ │ ├── SourcePage.java
│ │ ├── actions
│ │ │ ├── RemoveAddressListAction.java
│ │ │ └── SaveAction.java
│ │ └── models
│ │ ├── AddressList.java
│ │ ├── AddressListManager.java
│ │ ├── AddressListProperties.java
│ │ ├── AreaAddressList.java
│ │ ├── AreaAddressListProperties.java
│ │ ├── BasicAddressList.java
│ │ ├── BasicAddressListProperties.java
│ │ ├── ChoiceItemContents.java
│ │ ├── FormEditorInput.java
│ │ ├── IManagerListener.java
│ │ ├── MYXMLMemento.java
│ │ ├── MasterContentProvider.java
│ │ ├── MasterLabelProvider.java
│ │ ├── PhoneAddressList.java
│ │ ├── PhoneAddressListItemProperties.java
│ │ ├── SimpleFormEditorInput.java
│ │ └── TextItemContents.java
│ ├── example
│ │ ├── EditorExampleAction.java
│ │ ├── ObjExampleAction.java
│ │ ├── TopEditorAction.java
│ │ ├── ViewExampleAction.java
│ │ └── ViewerExampleAction.java
│ ├── models
│ │ ├── AddressCategory.java
│ │ ├── AddressItem.java
│ │ ├── AddressItemPropertySource.java
│ │ ├── AddressManager.java
│ │ ├── AddressManagerEvent.java
│ │ └── AddressManagerListener.java
│ ├── util
│ │ ├── ImageCache.java
│ │ ├── ImageKeys.java
│ │ ├── Messages.java
│ │ └── StringMatcher.java
│ └── views
│ ├── AddressView.java
│ ├── AddressViewContentProvider.java
│ ├── AddressViewLabelProvider.java
│ ├── AddressViewerCategoryFilter.java
│ └── AddressViewerSorter.java
├── chapter14
│ ├── 14章程序说明.doc
│ ├── 14章程序说明.txt
│ └── com.plugindev.addressbook
│ ├── META-INF
│ │ └── MANIFEST.MF
│ ├── bin
│ │ └── com
│ │ └── plugindev
│ │ └── addressbook
│ │ ├── Activator.class
│ │ ├── IPageLayout.class
│ │ ├── actions
│ │ │ ├── AddAddressAction.class
│ │ │ ├── AddressViewerFilterAction.class
│ │ │ ├── DeleteAddressAction.class
│ │ │ ├── OpenAddressViewAction.class
│ │ │ └── OpenFormEditorAction.class
│ │ ├── dialogs
│ │ │ ├── AddressViewFilterDialog$1.class
│ │ │ ├── AddressViewFilterDialog$2.class
│ │ │ └── AddressViewFilterDialog.class
│ │ ├── editors
│ │ │ ├── AddressFormEditor.class
│ │ │ ├── AddressFormEditorContributor.class
│ │ │ ├── MasterDetailsPage.class
│ │ │ ├── PageWithSubPages$1.class
│ │ │ ├── PageWithSubPages$2.class
│ │ │ ├── PageWithSubPages$TextSection.class
│ │ │ ├── PageWithSubPages.class
│ │ │ ├── ScrolledPropertiesBlock$1.class
│ │ │ ├── ScrolledPropertiesBlock$2.class
│ │ │ ├── ScrolledPropertiesBlock$3.class
│ │ │ ├── ScrolledPropertiesBlock$4.class
│ │ │ ├── ScrolledPropertiesBlock$5.class
│ │ │ ├── ScrolledPropertiesBlock$6.class
│ │ │ ├── ScrolledPropertiesBlock.class
│ │ │ ├── SourcePage$1.class
│ │ │ ├── SourcePage.class
│ │ │ ├── actions
│ │ │ │ ├── RemoveAddressListAction$1.class
│ │ │ │ ├── RemoveAddressListAction.class
│ │ │ │ └── SaveAction.class
│ │ │ └── models
│ │ │ ├── AddressList.class
│ │ │ ├── AddressListManager.class
│ │ │ ├── AddressListProperties$1.class
│ │ │ ├── AddressListProperties$2.class
│ │ │ ├── AddressListProperties.class
│ │ │ ├── AreaAddressList.class
│ │ │ ├── AreaAddressListProperties.class
│ │ │ ├── BasicAddressList.class
│ │ │ ├── BasicAddressListProperties.class
│ │ │ ├── ChoiceItemContents.class
│ │ │ ├── FormEditorInput.class
│ │ │ ├── IManagerListener.class
│ │ │ ├── MYXMLMemento$DOMWriter.class
│ │ │ ├── MYXMLMemento.class
│ │ │ ├── MasterContentProvider.class
│ │ │ ├── MasterLabelProvider.class
│ │ │ ├── PhoneAddressList.class
│ │ │ ├── PhoneAddressListItemProperties.class
│ │ │ ├── SimpleFormEditorInput.class
│ │ │ └── TextItemContents.class
│ │ ├── example
│ │ │ ├── EditorExampleAction.class
│ │ │ ├── ObjExampleAction.class
│ │ │ ├── TopEditorAction.class
│ │ │ ├── ViewExampleAction.class
│ │ │ └── ViewerExampleAction.class
│ │ ├── models
│ │ │ ├── AddressCategory$1.class
│ │ │ ├── AddressCategory$2.class
│ │ │ ├── AddressCategory$3.class
│ │ │ ├── AddressCategory$4.class
│ │ │ ├── AddressCategory$5.class
│ │ │ ├── AddressCategory$6.class
│ │ │ ├── AddressCategory$7.class
│ │ │ ├── AddressCategory$8.class
│ │ │ ├── AddressCategory$9.class
│ │ │ ├── AddressCategory.class
│ │ │ ├── AddressItem.class
│ │ │ ├── AddressItemPropertySource$1.class
│ │ │ ├── AddressItemPropertySource$2.class
│ │ │ ├── AddressItemPropertySource.class
│ │ │ ├── AddressManager.class
│ │ │ ├── AddressManagerEvent.class
│ │ │ └── AddressManagerListener.class
│ │ ├── perspectives
│ │ │ └── AddressBookPerspectiveFactory.class
│ │ ├── util
│ │ │ ├── ImageCache.class
│ │ │ ├── ImageKeys.class
│ │ │ ├── Messages.class
│ │ │ ├── StringMatcher$Position.class
│ │ │ └── StringMatcher.class
│ │ └── views
│ │ ├── AddressView$1.class
│ │ ├── AddressView$2.class
│ │ ├── AddressView$3.class
│ │ ├── AddressView$4.class
│ │ ├── AddressView$5.class
│ │ ├── AddressView$6.class
│ │ ├── AddressView$7.class
│ │ ├── AddressView$8.class
│ │ ├── AddressView.class
│ │ ├── AddressViewContentProvider.class
│ │ ├── AddressViewLabelProvider.class
│ │ ├── AddressViewerCategoryFilter.class
│ │ ├── AddressViewerNameFilter.class
│ │ ├── AddressViewerSorter$1.class
│ │ ├── AddressViewerSorter$SortInfo.class
│ │ └── AddressViewerSorter.class
│ ├── build.properties
│ ├── icons
│ │ ├── Thumbs.db
│ │ ├── actions
│ │ │ ├── add.gif
│ │ │ ├── delete.gif
│ │ │ ├── delete_dis.gif
│ │ │ └── filter.gif
│ │ ├── category
│ │ │ ├── business.gif
│ │ │ ├── family.gif
│ │ │ ├── friends.gif
│ │ │ ├── lover.gif
│ │ │ ├── mate.gif
│ │ │ ├── ordinary.gif
│ │ │ ├── teacher.gif
│ │ │ ├── unknown.gif
│ │ │ └── vip.gif
│ │ ├── category.gif
│ │ ├── editors
│ │ │ ├── area.gif
│ │ │ ├── basic.gif
│ │ │ ├── close_view.gif
│ │ │ ├── contact.gif
│ │ │ ├── editor.gif
│ │ │ ├── file_obj.gif
│ │ │ ├── form_banner.gif
│ │ │ ├── help_topic.gif
│ │ │ ├── large_image.gif
│ │ │ ├── linkto_help.gif
│ │ │ ├── newprj_wiz.gif
│ │ │ ├── phone.gif
│ │ │ ├── sample.gif
│ │ │ ├── th_horizontal.gif
│ │ │ └── th_vertical.gif
│ │ ├── people.gif
│ │ ├── perspectives
│ │ │ └── perspective.gif
│ │ ├── preferences
│ │ │ └── contact.jpg
│ │ ├── sample.gif
│ │ └── wizards
│ │ ├── new_add_wiz.gif
│ │ └── new_wiz.gif
│ ├── plugin.xml
│ └── src
│ └── com
│ └── plugindev
│ └── addressbook
│ ├── Activator.java
│ ├── IPageLayout.java
│ ├── actions
│ │ ├── AddAddressAction.java
│ │ ├── AddressViewerFilterAction.java
│ │ ├── DeleteAddressAction.java
│ │ ├── OpenAddressViewAction.java
│ │ └── OpenFormEditorAction.java
│ ├── dialogs
│ │ └── AddressViewFilterDialog.java
│ ├── editors
│ │ ├── AddressFormEditor.java
│ │ ├── AddressFormEditorContributor.java
│ │ ├── MasterDetailsPage.java
│ │ ├── PageWithSubPages.java
│ │ ├── ScrolledPropertiesBlock.java
│ │ ├── SourcePage.java
│ │ ├── actions
│ │ │ ├── RemoveAddressListAction.java
│ │ │ └── SaveAction.java
│ │ └── models
│ │ ├── AddressList.java
│ │ ├── AddressListManager.java
│ │ ├── AddressListProperties.java
│ │ ├── AreaAddressList.java
│ │ ├── AreaAddressListProperties.java
│ │ ├── BasicAddressList.java
│ │ ├── BasicAddressListProperties.java
│ │ ├── ChoiceItemContents.java
│ │ ├── FormEditorInput.java
│ │ ├── IManagerListener.java
│ │ ├── MYXMLMemento.java
│ │ ├── MasterContentProvider.java
│ │ ├── MasterLabelProvider.java
│ │ ├── PhoneAddressList.java
│ │ ├── PhoneAddressListItemProperties.java
│ │ ├── SimpleFormEditorInput.java
│ │ └── TextItemContents.java
│ ├── example
│ │ ├── EditorExampleAction.java
│ │ ├── ObjExampleAction.java
│ │ ├── TopEditorAction.java
│ │ ├── ViewExampleAction.java
│ │ └── ViewerExampleAction.java
│ ├── models
│ │ ├── AddressCategory.java
│ │ ├── AddressItem.java
│ │ ├── AddressItemPropertySource.java
│ │ ├── AddressManager.java
│ │ ├── AddressManagerEvent.java
│ │ └── AddressManagerListener.java
│ ├── perspectives
│ │ └── AddressBookPerspectiveFactory.java
│ ├── util
│ │ ├── ImageCache.java
│ │ ├── ImageKeys.java
│ │ ├── Messages.java
│ │ └── StringMatcher.java
│ └── views
│ ├── AddressView.java
│ ├── AddressViewContentProvider.java
│ ├── AddressViewLabelProvider.java
│ ├── AddressViewerCategoryFilter.java
│ ├── AddressViewerNameFilter.java
│ └── AddressViewerSorter.java
├── chapter15
│ ├── 15章程序说明.doc
│ ├── 15章程序说明.txt
│ └── com.plugindev.addressbook
│ ├── META-INF
│ │ └── MANIFEST.MF
│ ├── bin
│ │ └── com
│ │ ├── plugindev
│ │ │ └── addressbook
│ │ │ ├── Activator.class
│ │ │ ├── IPageLayout.class
│ │ │ ├── actions
│ │ │ │ ├── AddAddressAction.class
│ │ │ │ ├── AddressViewerFilterAction.class
│ │ │ │ ├── DeleteAddressAction.class
│ │ │ │ ├── OpenAddressViewAction.class
│ │ │ │ └── OpenFormEditorAction.class
│ │ │ ├── dialogs
│ │ │ │ ├── AddressViewFilterDialog$1.class
│ │ │ │ ├── AddressViewFilterDialog$2.class
│ │ │ │ └── AddressViewFilterDialog.class
│ │ │ ├── editors
│ │ │ │ ├── AddressFormEditor.class
│ │ │ │ ├── AddressFormEditorContributor.class
│ │ │ │ ├── MasterDetailsPage.class
│ │ │ │ ├── PageWithSubPages$1.class
│ │ │ │ ├── PageWithSubPages$2.class
│ │ │ │ ├── PageWithSubPages$TextSection.class
│ │ │ │ ├── PageWithSubPages.class
│ │ │ │ ├── ScrolledPropertiesBlock$1.class
│ │ │ │ ├── ScrolledPropertiesBlock$2.class
│ │ │ │ ├── ScrolledPropertiesBlock$3.class
│ │ │ │ ├── ScrolledPropertiesBlock$4.class
│ │ │ │ ├── ScrolledPropertiesBlock$5.class
│ │ │ │ ├── ScrolledPropertiesBlock$6.class
│ │ │ │ ├── ScrolledPropertiesBlock.class
│ │ │ │ ├── SourcePage$1.class
│ │ │ │ ├── SourcePage.class
│ │ │ │ ├── actions
│ │ │ │ │ ├── RemoveAddressListAction$1.class
│ │ │ │ │ ├── RemoveAddressListAction.class
│ │ │ │ │ └── SaveAction.class
│ │ │ │ └── models
│ │ │ │ ├── AddressList.class
│ │ │ │ ├── AddressListManager.class
│ │ │ │ ├── AddressListProperties$1.class
│ │ │ │ ├── AddressListProperties$2.class
│ │ │ │ ├── AddressListProperties.class
│ │ │ │ ├── AreaAddressList.class
│ │ │ │ ├── AreaAddressListProperties.class
│ │ │ │ ├── BasicAddressList.class
│ │ │ │ ├── BasicAddressListProperties.class
│ │ │ │ ├── ChoiceItemContents.class
│ │ │ │ ├── FormEditorInput.class
│ │ │ │ ├── IManagerListener.class
│ │ │ │ ├── MYXMLMemento$DOMWriter.class
│ │ │ │ ├── MYXMLMemento.class
│ │ │ │ ├── MasterContentProvider.class
│ │ │ │ ├── MasterLabelProvider.class
│ │ │ │ ├── PhoneAddressList.class
│ │ │ │ ├── PhoneAddressListItemProperties.class
│ │ │ │ ├── SimpleFormEditorInput.class
│ │ │ │ └── TextItemContents.class
│ │ │ ├── example
│ │ │ │ ├── EditorExampleAction.class
│ │ │ │ ├── ObjExampleAction.class
│ │ │ │ ├── TopEditorAction.class
│ │ │ │ ├── ViewExampleAction.class
│ │ │ │ └── ViewerExampleAction.class
│ │ │ ├── models
│ │ │ │ ├── AddressCategory$1.class
│ │ │ │ ├── AddressCategory$2.class
│ │ │ │ ├── AddressCategory$3.class
│ │ │ │ ├── AddressCategory$4.class
│ │ │ │ ├── AddressCategory$5.class
│ │ │ │ ├── AddressCategory$6.class
│ │ │ │ ├── AddressCategory$7.class
│ │ │ │ ├── AddressCategory$8.class
│ │ │ │ ├── AddressCategory$9.class
│ │ │ │ ├── AddressCategory.class
│ │ │ │ ├── AddressItem.class
│ │ │ │ ├── AddressItemPropertySource$1.class
│ │ │ │ ├── AddressItemPropertySource$2.class
│ │ │ │ ├── AddressItemPropertySource.class
│ │ │ │ ├── AddressManager.class
│ │ │ │ ├── AddressManagerEvent.class
│ │ │ │ └── AddressManagerListener.class
│ │ │ ├── perspectives
│ │ │ │ └── AddressBookPerspectiveFactory.class
│ │ │ ├── util
│ │ │ │ ├── ImageCache.class
│ │ │ │ ├── ImageKeys.class
│ │ │ │ ├── Messages.class
│ │ │ │ ├── StringMatcher$Position.class
│ │ │ │ └── StringMatcher.class
│ │ │ ├── views
│ │ │ │ ├── AddressView$1.class
│ │ │ │ ├── AddressView$2.class
│ │ │ │ ├── AddressView$3.class
│ │ │ │ ├── AddressView$4.class
│ │ │ │ ├── AddressView$5.class
│ │ │ │ ├── AddressView$6.class
│ │ │ │ ├── AddressView$7.class
│ │ │ │ ├── AddressView$8.class
│ │ │ │ ├── AddressView.class
│ │ │ │ ├── AddressViewContentProvider.class
│ │ │ │ ├── AddressViewLabelProvider.class
│ │ │ │ ├── AddressViewerCategoryFilter.class
│ │ │ │ ├── AddressViewerNameFilter.class
│ │ │ │ ├── AddressViewerSorter$1.class
│ │ │ │ ├── AddressViewerSorter$SortInfo.class
│ │ │ │ └── AddressViewerSorter.class
│ │ │ └── wizards
│ │ │ ├── EditListsConfigWizardPage.class
│ │ │ ├── NewAddressItemWizard$1.class
│ │ │ ├── NewAddressItemWizard$2.class
│ │ │ ├── NewAddressItemWizard.class
│ │ │ ├── NewAddressItemWizardPage$1.class
│ │ │ ├── NewAddressItemWizardPage$2.class
│ │ │ ├── NewAddressItemWizardPage.class
│ │ │ └── TableViewerLabelProvider.class
│ │ └── swtdesigner
│ │ ├── FieldLayoutPreferencePage.class
│ │ ├── ResourceManager.class
│ │ ├── SWTResourceManager$1.class
│ │ ├── SWTResourceManager$2.class
│ │ ├── SWTResourceManager.class
│ │ └── preference
│ │ ├── ComboFieldEditor$1.class
│ │ └── ComboFieldEditor.class
│ ├── build.properties
│ ├── icons
│ │ ├── Thumbs.db
│ │ ├── actions
│ │ │ ├── add.gif
│ │ │ ├── delete.gif
│ │ │ ├── delete_dis.gif
│ │ │ └── filter.gif
│ │ ├── category
│ │ │ ├── business.gif
│ │ │ ├── family.gif
│ │ │ ├── friends.gif
│ │ │ ├── lover.gif
│ │ │ ├── mate.gif
│ │ │ ├── ordinary.gif
│ │ │ ├── teacher.gif
│ │ │ ├── unknown.gif
│ │ │ └── vip.gif
│ │ ├── category.gif
│ │ ├── editors
│ │ │ ├── area.gif
│ │ │ ├── basic.gif
│ │ │ ├── close_view.gif
│ │ │ ├── contact.gif
│ │ │ ├── editor.gif
│ │ │ ├── file_obj.gif
│ │ │ ├── form_banner.gif
│ │ │ ├── help_topic.gif
│ │ │ ├── large_image.gif
│ │ │ ├── linkto_help.gif
│ │ │ ├── newprj_wiz.gif
│ │ │ ├── phone.gif
│ │ │ ├── sample.gif
│ │ │ ├── th_horizontal.gif
│ │ │ └── th_vertical.gif
│ │ ├── people.gif
│ │ ├── perspectives
│ │ │ └── perspective.gif
│ │ ├── preferences
│ │ │ └── contact.jpg
│ │ ├── sample.gif
│ │ └── wizards
│ │ ├── new_add_wiz.gif
│ │ └── new_wiz.gif
│ ├── plugin.xml
│ └── src
│ └── com
│ ├── plugindev
│ │ └── addressbook
│ │ ├── Activator.java
│ │ ├── IPageLayout.java
│ │ ├── actions
│ │ │ ├── AddAddressAction.java
│ │ │ ├── AddressViewerFilterAction.java
│ │ │ ├── DeleteAddressAction.java
│ │ │ ├── OpenAddressViewAction.java
│ │ │ └── OpenFormEditorAction.java
│ │ ├── dialogs
│ │ │ └── AddressViewFilterDialog.java
│ │ ├── editors
│ │ │ ├── AddressFormEditor.java
│ │ │ ├── AddressFormEditorContributor.java
│ │ │ ├── MasterDetailsPage.java
│ │ │ ├── PageWithSubPages.java
│ │ │ ├── ScrolledPropertiesBlock.java
│ │ │ ├── SourcePage.java
│ │ │ ├── actions
│ │ │ │ ├── RemoveAddressListAction.java
│ │ │ │ └── SaveAction.java
│ │ │ └── models
│ │ │ ├── AddressList.java
│ │ │ ├── AddressListManager.java
│ │ │ ├── AddressListProperties.java
│ │ │ ├── AreaAddressList.java
│ │ │ ├── AreaAddressListProperties.java
│ │ │ ├── BasicAddressList.java
│ │ │ ├── BasicAddressListProperties.java
│ │ │ ├── ChoiceItemContents.java
│ │ │ ├── FormEditorInput.java
│ │ │ ├── IManagerListener.java
│ │ │ ├── MYXMLMemento.java
│ │ │ ├── MasterContentProvider.java
│ │ │ ├── MasterLabelProvider.java
│ │ │ ├── PhoneAddressList.java
│ │ │ ├── PhoneAddressListItemProperties.java
│ │ │ ├── SimpleFormEditorInput.java
│ │ │ └── TextItemContents.java
│ │ ├── example
│ │ │ ├── EditorExampleAction.java
│ │ │ ├── ObjExampleAction.java
│ │ │ ├── TopEditorAction.java
│ │ │ ├── ViewExampleAction.java
│ │ │ └── ViewerExampleAction.java
│ │ ├── models
│ │ │ ├── AddressCategory.java
│ │ │ ├── AddressItem.java
│ │ │ ├── AddressItemPropertySource.java
│ │ │ ├── AddressManager.java
│ │ │ ├── AddressManagerEvent.java
│ │ │ └── AddressManagerListener.java
│ │ ├── perspectives
│ │ │ └── AddressBookPerspectiveFactory.java
│ │ ├── util
│ │ │ ├── ImageCache.java
│ │ │ ├── ImageKeys.java
│ │ │ ├── Messages.java
│ │ │ └── StringMatcher.java
│ │ ├── views
│ │ │ ├── AddressView.java
│ │ │ ├── AddressViewContentProvider.java
│ │ │ ├── AddressViewLabelProvider.java
│ │ │ ├── AddressViewerCategoryFilter.java
│ │ │ ├── AddressViewerNameFilter.java
│ │ │ └── AddressViewerSorter.java
│ │ └── wizards
│ │ ├── EditListsConfigWizardPage.java
│ │ ├── NewAddressItemWizard.java
│ │ ├── NewAddressItemWizardPage.java
│ │ └── TableViewerLabelProvider.java
│ └── swtdesigner
│ ├── FieldLayoutPreferencePage.java
│ ├── ResourceManager.java
│ ├── SWTResourceManager.java
│ └── preference
│ └── ComboFieldEditor.java
├── chapter16
│ ├── 16章程序说明.doc
│ ├── 16章程序说明.txt
│ └── com.plugindev.addressbook
│ ├── META-INF
│ │ └── MANIFEST.MF
│ ├── bin
│ │ └── com
│ │ ├── plugindev
│ │ │ └── addressbook
│ │ │ ├── Activator.class
│ │ │ ├── IPageLayout.class
│ │ │ ├── actions
│ │ │ │ ├── AddAddressAction.class
│ │ │ │ ├── AddressViewerFilterAction.class
│ │ │ │ ├── DeleteAddressAction.class
│ │ │ │ ├── OpenAddressViewAction.class
│ │ │ │ └── OpenFormEditorAction.class
│ │ │ ├── dialogs
│ │ │ │ ├── AddressViewFilterDialog$1.class
│ │ │ │ ├── AddressViewFilterDialog$2.class
│ │ │ │ └── AddressViewFilterDialog.class
│ │ │ ├── editors
│ │ │ │ ├── AddressFormEditor$1.class
│ │ │ │ ├── AddressFormEditor.class
│ │ │ │ ├── AddressFormEditorContributor.class
│ │ │ │ ├── MasterDetailsPage.class
│ │ │ │ ├── PageWithSubPages$1.class
│ │ │ │ ├── PageWithSubPages$2.class
│ │ │ │ ├── PageWithSubPages$TextSection.class
│ │ │ │ ├── PageWithSubPages.class
│ │ │ │ ├── ScrolledPropertiesBlock$1.class
│ │ │ │ ├── ScrolledPropertiesBlock$2.class
│ │ │ │ ├── ScrolledPropertiesBlock$3.class
│ │ │ │ ├── ScrolledPropertiesBlock$4.class
│ │ │ │ ├── ScrolledPropertiesBlock$5.class
│ │ │ │ ├── ScrolledPropertiesBlock$6.class
│ │ │ │ ├── ScrolledPropertiesBlock$7.class
│ │ │ │ ├── ScrolledPropertiesBlock.class
│ │ │ │ ├── SourcePage$1.class
│ │ │ │ ├── SourcePage.class
│ │ │ │ ├── actions
│ │ │ │ │ ├── RemoveAddressListAction$1.class
│ │ │ │ │ ├── RemoveAddressListAction.class
│ │ │ │ │ └── SaveAction.class
│ │ │ │ └── models
│ │ │ │ ├── AddressList.class
│ │ │ │ ├── AddressListManager.class
│ │ │ │ ├── AddressListProperties$1.class
│ │ │ │ ├── AddressListProperties$2.class
│ │ │ │ ├── AddressListProperties.class
│ │ │ │ ├── AreaAddressList.class
│ │ │ │ ├── AreaAddressListProperties.class
│ │ │ │ ├── BasicAddressList.class
│ │ │ │ ├── BasicAddressListProperties.class
│ │ │ │ ├── ChoiceItemContents.class
│ │ │ │ ├── FormEditorInput.class
│ │ │ │ ├── IManagerListener.class
│ │ │ │ ├── MYXMLMemento$DOMWriter.class
│ │ │ │ ├── MYXMLMemento.class
│ │ │ │ ├── MasterContentProvider.class
│ │ │ │ ├── MasterLabelProvider.class
│ │ │ │ ├── PhoneAddressList.class
│ │ │ │ ├── PhoneAddressListItemProperties.class
│ │ │ │ ├── SimpleFormEditorInput.class
│ │ │ │ └── TextItemContents.class
│ │ │ ├── example
│ │ │ │ ├── EditorExampleAction.class
│ │ │ │ ├── ObjExampleAction.class
│ │ │ │ ├── TopEditorAction.class
│ │ │ │ ├── ViewExampleAction.class
│ │ │ │ └── ViewerExampleAction.class
│ │ │ ├── models
│ │ │ │ ├── AddressCategory$1.class
│ │ │ │ ├── AddressCategory$2.class
│ │ │ │ ├── AddressCategory$3.class
│ │ │ │ ├── AddressCategory$4.class
│ │ │ │ ├── AddressCategory$5.class
│ │ │ │ ├── AddressCategory$6.class
│ │ │ │ ├── AddressCategory$7.class
│ │ │ │ ├── AddressCategory$8.class
│ │ │ │ ├── AddressCategory$9.class
│ │ │ │ ├── AddressCategory.class
│ │ │ │ ├── AddressItem.class
│ │ │ │ ├── AddressItemPropertySource$1.class
│ │ │ │ ├── AddressItemPropertySource$2.class
│ │ │ │ ├── AddressItemPropertySource.class
│ │ │ │ ├── AddressManager.class
│ │ │ │ ├── AddressManagerEvent.class
│ │ │ │ └── AddressManagerListener.class
│ │ │ ├── perspectives
│ │ │ │ └── AddressBookPerspectiveFactory.class
│ │ │ ├── preferences
│ │ │ │ ├── AddressPreferencePage.class
│ │ │ │ ├── AddressRootPreferencePage.class
│ │ │ │ ├── EditorPrefPage.class
│ │ │ │ ├── PreferenceConstants.class
│ │ │ │ ├── PreferenceInitializer.class
│ │ │ │ └── ViewPrefPage.class
│ │ │ ├── util
│ │ │ │ ├── ImageCache.class
│ │ │ │ ├── ImageKeys.class
│ │ │ │ ├── Messages.class
│ │ │ │ ├── StringMatcher$Position.class
│ │ │ │ └── StringMatcher.class
│ │ │ ├── views
│ │ │ │ ├── AddressView$1.class
│ │ │ │ ├── AddressView$2.class
│ │ │ │ ├── AddressView$3.class
│ │ │ │ ├── AddressView$4.class
│ │ │ │ ├── AddressView$5.class
│ │ │ │ ├── AddressView$6.class
│ │ │ │ ├── AddressView$7.class
│ │ │ │ ├── AddressView$8.class
│ │ │ │ ├── AddressView$9.class
│ │ │ │ ├── AddressView.class
│ │ │ │ ├── AddressViewContentProvider.class
│ │ │ │ ├── AddressViewLabelProvider.class
│ │ │ │ ├── AddressViewerCategoryFilter.class
│ │ │ │ ├── AddressViewerNameFilter.class
│ │ │ │ ├── AddressViewerSorter$1.class
│ │ │ │ ├── AddressViewerSorter$SortInfo.class
│ │ │ │ └── AddressViewerSorter.class
│ │ │ └── wizards
│ │ │ ├── EditListsConfigWizardPage.class
│ │ │ ├── NewAddressItemWizard$1.class
│ │ │ ├── NewAddressItemWizard$2.class
│ │ │ ├── NewAddressItemWizard.class
│ │ │ ├── NewAddressItemWizardPage$1.class
│ │ │ ├── NewAddressItemWizardPage$2.class
│ │ │ ├── NewAddressItemWizardPage.class
│ │ │ └── TableViewerLabelProvider.class
│ │ └── swtdesigner
│ │ ├── FieldLayoutPreferencePage.class
│ │ ├── ResourceManager.class
│ │ ├── SWTResourceManager$1.class
│ │ ├── SWTResourceManager$2.class
│ │ ├── SWTResourceManager.class
│ │ └── preference
│ │ ├── ComboFieldEditor$1.class
│ │ └── ComboFieldEditor.class
│ ├── build.properties
│ ├── icons
│ │ ├── Thumbs.db
│ │ ├── actions
│ │ │ ├── add.gif
│ │ │ ├── delete.gif
│ │ │ ├── delete_dis.gif
│ │ │ └── filter.gif
│ │ ├── category
│ │ │ ├── business.gif
│ │ │ ├── family.gif
│ │ │ ├── friends.gif
│ │ │ ├── lover.gif
│ │ │ ├── mate.gif
│ │ │ ├── ordinary.gif
│ │ │ ├── teacher.gif
│ │ │ ├── unknown.gif
│ │ │ └── vip.gif
│ │ ├── category.gif
│ │ ├── editors
│ │ │ ├── area.gif
│ │ │ ├── basic.gif
│ │ │ ├── close_view.gif
│ │ │ ├── contact.gif
│ │ │ ├── editor.gif
│ │ │ ├── file_obj.gif
│ │ │ ├── form_banner.gif
│ │ │ ├── help_topic.gif
│ │ │ ├── large_image.gif
│ │ │ ├── linkto_help.gif
│ │ │ ├── newprj_wiz.gif
│ │ │ ├── phone.gif
│ │ │ ├── sample.gif
│ │ │ ├── th_horizontal.gif
│ │ │ └── th_vertical.gif
│ │ ├── people.gif
│ │ ├── perspectives
│ │ │ └── perspective.gif
│ │ ├── preferences
│ │ │ └── contact.jpg
│ │ ├── sample.gif
│ │ └── wizards
│ │ ├── new_add_wiz.gif
│ │ └── new_wiz.gif
│ ├── plugin.xml
│ └── src
│ └── com
│ ├── plugindev
│ │ └── addressbook
│ │ ├── Activator.java
│ │ ├── IPageLayout.java
│ │ ├── actions
│ │ │ ├── AddAddressAction.java
│ │ │ ├── AddressViewerFilterAction.java
│ │ │ ├── DeleteAddressAction.java
│ │ │ ├── OpenAddressViewAction.java
│ │ │ └── OpenFormEditorAction.java
│ │ ├── dialogs
│ │ │ └── AddressViewFilterDialog.java
│ │ ├── editors
│ │ │ ├── AddressFormEditor.java
│ │ │ ├── AddressFormEditorContributor.java
│ │ │ ├── MasterDetailsPage.java
│ │ │ ├── PageWithSubPages.java
│ │ │ ├── ScrolledPropertiesBlock.java
│ │ │ ├── SourcePage.java
│ │ │ ├── actions
│ │ │ │ ├── RemoveAddressListAction.java
│ │ │ │ └── SaveAction.java
│ │ │ └── models
│ │ │ ├── AddressList.java
│ │ │ ├── AddressListManager.java
│ │ │ ├── AddressListProperties.java
│ │ │ ├── AreaAddressList.java
│ │ │ ├── AreaAddressListProperties.java
│ │ │ ├── BasicAddressList.java
│ │ │ ├── BasicAddressListProperties.java
│ │ │ ├── ChoiceItemContents.java
│ │ │ ├── FormEditorInput.java
│ │ │ ├── IManagerListener.java
│ │ │ ├── MYXMLMemento.java
│ │ │ ├── MasterContentProvider.java
│ │ │ ├── MasterLabelProvider.java
│ │ │ ├── PhoneAddressList.java
│ │ │ ├── PhoneAddressListItemProperties.java
│ │ │ ├── SimpleFormEditorInput.java
│ │ │ └── TextItemContents.java
│ │ ├── example
│ │ │ ├── EditorExampleAction.java
│ │ │ ├── ObjExampleAction.java
│ │ │ ├── TopEditorAction.java
│ │ │ ├── ViewExampleAction.java
│ │ │ └── ViewerExampleAction.java
│ │ ├── models
│ │ │ ├── AddressCategory.java
│ │ │ ├── AddressItem.java
│ │ │ ├── AddressItemPropertySource.java
│ │ │ ├── AddressManager.java
│ │ │ ├── AddressManagerEvent.java
│ │ │ └── AddressManagerListener.java
│ │ ├── perspectives
│ │ │ └── AddressBookPerspectiveFactory.java
│ │ ├── preferences
│ │ │ ├── AddressPreferencePage.java
│ │ │ ├── AddressRootPreferencePage.java
│ │ │ ├── EditorPrefPage.java
│ │ │ ├── PreferenceConstants.java
│ │ │ ├── PreferenceInitializer.java
│ │ │ └── ViewPrefPage.java
│ │ ├── util
│ │ │ ├── ImageCache.java
│ │ │ ├── ImageKeys.java
│ │ │ ├── Messages.java
│ │ │ └── StringMatcher.java
│ │ ├── views
│ │ │ ├── AddressView.java
│ │ │ ├── AddressViewContentProvider.java
│ │ │ ├── AddressViewLabelProvider.java
│ │ │ ├── AddressViewerCategoryFilter.java
│ │ │ ├── AddressViewerNameFilter.java
│ │ │ └── AddressViewerSorter.java
│ │ └── wizards
│ │ ├── EditListsConfigWizardPage.java
│ │ ├── NewAddressItemWizard.java
│ │ ├── NewAddressItemWizardPage.java
│ │ └── TableViewerLabelProvider.java
│ └── swtdesigner
│ ├── FieldLayoutPreferencePage.java
│ ├── ResourceManager.java
│ ├── SWTResourceManager.java
│ └── preference
│ └── ComboFieldEditor.java
├── chapter17
│ ├── 17章程序说明.doc
│ ├── 17章程序说明.txt
│ └── com.plugindev.addressbook
│ ├── META-INF
│ │ └── MANIFEST.MF
│ ├── bin
│ │ └── com
│ │ ├── plugindev
│ │ │ └── addressbook
│ │ │ ├── Activator.class
│ │ │ ├── IPageLayout.class
│ │ │ ├── actions
│ │ │ │ ├── AddAddressAction.class
│ │ │ │ ├── AddressViewerFilterAction.class
│ │ │ │ ├── CreateDefaultAddressCheatSheetAction.class
│ │ │ │ ├── DeleteAddressAction.class
│ │ │ │ ├── OpenAddressViewAction.class
│ │ │ │ └── OpenFormEditorAction.class
│ │ │ ├── dialogs
│ │ │ │ ├── AddressViewFilterDialog$1.class
│ │ │ │ ├── AddressViewFilterDialog$2.class
│ │ │ │ └── AddressViewFilterDialog.class
│ │ │ ├── editors
│ │ │ │ ├── AddressFormEditor$1.class
│ │ │ │ ├── AddressFormEditor.class
│ │ │ │ ├── AddressFormEditorContributor.class
│ │ │ │ ├── MasterDetailsPage.class
│ │ │ │ ├── PageWithSubPages$1.class
│ │ │ │ ├── PageWithSubPages$2.class
│ │ │ │ ├── PageWithSubPages$TextSection.class
│ │ │ │ ├── PageWithSubPages.class
│ │ │ │ ├── ScrolledPropertiesBlock$1.class
│ │ │ │ ├── ScrolledPropertiesBlock$2.class
│ │ │ │ ├── ScrolledPropertiesBlock$3.class
│ │ │ │ ├── ScrolledPropertiesBlock$4.class
│ │ │ │ ├── ScrolledPropertiesBlock$5.class
│ │ │ │ ├── ScrolledPropertiesBlock$6.class
│ │ │ │ ├── ScrolledPropertiesBlock$7.class
│ │ │ │ ├── ScrolledPropertiesBlock.class
│ │ │ │ ├── SourcePage$1.class
│ │ │ │ ├── SourcePage.class
│ │ │ │ ├── actions
│ │ │ │ │ ├── RemoveAddressListAction$1.class
│ │ │ │ │ ├── RemoveAddressListAction.class
│ │ │ │ │ └── SaveAction.class
│ │ │ │ └── models
│ │ │ │ ├── AddressList.class
│ │ │ │ ├── AddressListManager.class
│ │ │ │ ├── AddressListProperties$1.class
│ │ │ │ ├── AddressListProperties$2.class
│ │ │ │ ├── AddressListProperties.class
│ │ │ │ ├── AreaAddressList.class
│ │ │ │ ├── AreaAddressListProperties.class
│ │ │ │ ├── BasicAddressList.class
│ │ │ │ ├── BasicAddressListProperties.class
│ │ │ │ ├── ChoiceItemContents.class
│ │ │ │ ├── FormEditorInput.class
│ │ │ │ ├── IManagerListener.class
│ │ │ │ ├── MYXMLMemento$DOMWriter.class
│ │ │ │ ├── MYXMLMemento.class
│ │ │ │ ├── MasterContentProvider.class
│ │ │ │ ├── MasterLabelProvider.class
│ │ │ │ ├── PhoneAddressList.class
│ │ │ │ ├── PhoneAddressListItemProperties.class
│ │ │ │ ├── SimpleFormEditorInput.class
│ │ │ │ └── TextItemContents.class
│ │ │ ├── example
│ │ │ │ ├── EditorExampleAction.class
│ │ │ │ ├── ObjExampleAction.class
│ │ │ │ ├── TopEditorAction.class
│ │ │ │ ├── ViewExampleAction.class
│ │ │ │ └── ViewerExampleAction.class
│ │ │ ├── models
│ │ │ │ ├── AddressCategory$1.class
│ │ │ │ ├── AddressCategory$2.class
│ │ │ │ ├── AddressCategory$3.class
│ │ │ │ ├── AddressCategory$4.class
│ │ │ │ ├── AddressCategory$5.class
│ │ │ │ ├── AddressCategory$6.class
│ │ │ │ ├── AddressCategory$7.class
│ │ │ │ ├── AddressCategory$8.class
│ │ │ │ ├── AddressCategory$9.class
│ │ │ │ ├── AddressCategory.class
│ │ │ │ ├── AddressItem.class
│ │ │ │ ├── AddressItemPropertySource$1.class
│ │ │ │ ├── AddressItemPropertySource$2.class
│ │ │ │ ├── AddressItemPropertySource.class
│ │ │ │ ├── AddressManager.class
│ │ │ │ ├── AddressManagerEvent.class
│ │ │ │ └── AddressManagerListener.class
│ │ │ ├── perspectives
│ │ │ │ └── AddressBookPerspectiveFactory.class
│ │ │ ├── preferences
│ │ │ │ ├── AddressPreferencePage.class
│ │ │ │ ├── AddressRootPreferencePage.class
│ │ │ │ ├── EditorPrefPage.class
│ │ │ │ ├── PreferenceConstants.class
│ │ │ │ ├── PreferenceInitializer.class
│ │ │ │ └── ViewPrefPage.class
│ │ │ ├── util
│ │ │ │ ├── ImageCache.class
│ │ │ │ ├── ImageKeys.class
│ │ │ │ ├── Messages.class
│ │ │ │ ├── StringMatcher$Position.class
│ │ │ │ └── StringMatcher.class
│ │ │ ├── views
│ │ │ │ ├── AddressView$1.class
│ │ │ │ ├── AddressView$10.class
│ │ │ │ ├── AddressView$11.class
│ │ │ │ ├── AddressView$2.class
│ │ │ │ ├── AddressView$3.class
│ │ │ │ ├── AddressView$4.class
│ │ │ │ ├── AddressView$5.class
│ │ │ │ ├── AddressView$6.class
│ │ │ │ ├── AddressView$7.class
│ │ │ │ ├── AddressView$8.class
│ │ │ │ ├── AddressView$9.class
│ │ │ │ ├── AddressView.class
│ │ │ │ ├── AddressViewContentProvider.class
│ │ │ │ ├── AddressViewLabelProvider.class
│ │ │ │ ├── AddressViewerCategoryFilter.class
│ │ │ │ ├── AddressViewerNameFilter.class
│ │ │ │ ├── AddressViewerSorter$1.class
│ │ │ │ ├── AddressViewerSorter$SortInfo.class
│ │ │ │ └── AddressViewerSorter.class
│ │ │ └── wizards
│ │ │ ├── EditListsConfigWizardPage.class
│ │ │ ├── NewAddressItemWizard$1.class
│ │ │ ├── NewAddressItemWizard$2.class
│ │ │ ├── NewAddressItemWizard.class
│ │ │ ├── NewAddressItemWizardPage$1.class
│ │ │ ├── NewAddressItemWizardPage$2.class
│ │ │ ├── NewAddressItemWizardPage.class
│ │ │ └── TableViewerLabelProvider.class
│ │ └── swtdesigner
│ │ ├── FieldLayoutPreferencePage.class
│ │ ├── ResourceManager.class
│ │ ├── SWTResourceManager$1.class
│ │ ├── SWTResourceManager$2.class
│ │ ├── SWTResourceManager.class
│ │ └── preference
│ │ ├── ComboFieldEditor$1.class
│ │ └── ComboFieldEditor.class
│ ├── build.properties
│ ├── content.xml
│ ├── content2.xml
│ ├── contentsum.xml
│ ├── contexts.xml
│ ├── html
│ │ ├── article.gif
│ │ ├── folder.gif
│ │ ├── index.htm
│ │ ├── 操作
│ │ │ ├── 概述
│ │ │ │ ├── 操作.files
│ │ │ │ │ ├── colorschememapping.xml
│ │ │ │ │ ├── filelist.xml
│ │ │ │ │ ├── header.htm
│ │ │ │ │ ├── item0007.xml
│ │ │ │ │ ├── props0008.xml
│ │ │ │ │ └── themedata.thmx
│ │ │ │ ├── 操作.htm
│ │ │ │ └── 操作_files
│ │ │ │ └── header.htm
│ │ │ └── 详细介绍
│ │ │ ├── 视图操作.htm
│ │ │ ├── 视图操作_files
│ │ │ │ ├── header.htm
│ │ │ │ ├── image001.png
│ │ │ │ ├── image002.jpg
│ │ │ │ ├── image003.png
│ │ │ │ └── image004.jpg
│ │ │ ├── 工作台操作.htm
│ │ │ ├── 编辑器操作.htm
│ │ │ ├── 工作台操作_files
│ │ │ │ ├── header.htm
│ │ │ │ ├── image001.png
│ │ │ │ ├── image002.jpg
│ │ │ │ ├── image003.png
│ │ │ │ └── image004.jpg
│ │ │ └── 编辑器操作_files
│ │ │ ├── header.htm
│ │ │ ├── image001.png
│ │ │ ├── image002.jpg
│ │ │ ├── image003.png
│ │ │ └── image004.jpg
│ │ ├── 概述
│ │ │ ├── 整体概览.files
│ │ │ │ ├── colorschememapping.xml
│ │ │ │ ├── filelist.xml
│ │ │ │ ├── header.htm
│ │ │ │ ├── image001.png
│ │ │ │ ├── image002.jpg
│ │ │ │ └── themedata.thmx
│ │ │ ├── 整体概览.htm
│ │ │ └── 整体概览_files
│ │ │ ├── header.htm
│ │ │ ├── image001.png
│ │ │ └── image002.jpg
│ │ ├── 定制界面
│ │ │ ├── 首选项.htm
│ │ │ └── 首选项_files
│ │ │ ├── header.htm
│ │ │ ├── image001.png
│ │ │ ├── image002.jpg
│ │ │ ├── image003.png
│ │ │ ├── image004.jpg
│ │ │ ├── image005.png
│ │ │ └── image006.jpg
│ │ ├── 快速开始
│ │ │ ├── 备忘单.htm
│ │ │ └── 备忘单_files
│ │ │ ├── header.htm
│ │ │ ├── image001.png
│ │ │ ├── image002.jpg
│ │ │ ├── image003.png
│ │ │ ├── image004.jpg
│ │ │ ├── image005.png
│ │ │ └── image006.jpg
│ │ ├── 向导和对话框
│ │ │ ├── 向导.htm
│ │ │ ├── 向导_files
│ │ │ │ ├── header.htm
│ │ │ │ ├── image001.png
│ │ │ │ ├── image002.jpg
│ │ │ │ ├── image003.png
│ │ │ │ └── image004.jpg
│ │ │ ├── 对话框.files
│ │ │ │ ├── colorschememapping.xml
│ │ │ │ ├── filelist.xml
│ │ │ │ ├── header.htm
│ │ │ │ ├── image001.png
│ │ │ │ ├── image003.png
│ │ │ │ ├── image005.jpg
│ │ │ │ ├── image006.jpg
│ │ │ │ └── themedata.thmx
│ │ │ ├── 对话框.htm
│ │ │ └── 对话框_files
│ │ │ ├── header.htm
│ │ │ ├── image001.png
│ │ │ ├── image002.jpg
│ │ │ ├── image003.png
│ │ │ └── image004.jpg
│ │ └── 基本用户界面
│ │ ├── 视图.files
│ │ │ ├── colorschememapping.xml
│ │ │ ├── filelist.xml
│ │ │ ├── header.htm
│ │ │ ├── image001.png
│ │ │ ├── image002.jpg
│ │ │ ├── image003.png
│ │ │ ├── image004.jpg
│ │ │ ├── image005.png
│ │ │ ├── image006.jpg
│ │ │ ├── image007.png
│ │ │ ├── image008.jpg
│ │ │ ├── image009.png
│ │ │ ├── image010.jpg
│ │ │ ├── image011.png
│ │ │ ├── image012.jpg
│ │ │ ├── image013.gif
│ │ │ ├── image014.png
│ │ │ ├── image015.jpg
│ │ │ ├── image016.png
│ │ │ ├── image017.jpg
│ │ │ └── themedata.thmx
│ │ ├── 视图.htm
│ │ ├── 视图_files
│ │ │ ├── header.htm
│ │ │ ├── image001.png
│ │ │ ├── image002.jpg
│ │ │ ├── image003.png
│ │ │ ├── image004.jpg
│ │ │ ├── image005.png
│ │ │ ├── image006.jpg
│ │ │ ├── image007.png
│ │ │ ├── image008.jpg
│ │ │ ├── image009.png
│ │ │ ├── image010.jpg
│ │ │ ├── image011.png
│ │ │ ├── image012.jpg
│ │ │ ├── image013.gif
│ │ │ ├── image014.png
│ │ │ ├── image015.jpg
│ │ │ ├── image016.png
│ │ │ └── image017.jpg
│ │ ├── 编辑器.files
│ │ │ ├── colorschememapping.xml
│ │ │ ├── filelist.xml
│ │ │ ├── header.htm
│ │ │ ├── image001.png
│ │ │ ├── image002.jpg
│ │ │ ├── image003.png
│ │ │ ├── image004.jpg
│ │ │ ├── image005.png
│ │ │ ├── image006.jpg
│ │ │ ├── image007.png
│ │ │ ├── image008.jpg
│ │ │ └── themedata.thmx
│ │ ├── 透视图.files
│ │ │ ├── colorschememapping.xml
│ │ │ ├── filelist.xml
│ │ │ ├── header.htm
│ │ │ ├── image001.png
│ │ │ ├── image002.png
│ │ │ ├── image003.gif
│ │ │ ├── image004.png
│ │ │ ├── image005.jpg
│ │ │ └── themedata.thmx
│ │ ├── 编辑器.htm
│ │ ├── 透视图.htm
│ │ ├── 编辑器_files
│ │ │ ├── header.htm
│ │ │ ├── image001.png
│ │ │ ├── image002.jpg
│ │ │ ├── image003.png
│ │ │ ├── image004.jpg
│ │ │ ├── image005.png
│ │ │ ├── image006.jpg
│ │ │ ├── image007.png
│ │ │ └── image008.jpg
│ │ └── 透视图_files
│ │ ├── header.htm
│ │ ├── image001.png
│ │ ├── image002.png
│ │ ├── image003.gif
│ │ ├── image004.png
│ │ └── image005.jpg
│ ├── icons
│ │ ├── Thumbs.db
│ │ ├── actions
│ │ │ ├── add.gif
│ │ │ ├── delete.gif
│ │ │ ├── delete_dis.gif
│ │ │ └── filter.gif
│ │ ├── category
│ │ │ ├── business.gif
│ │ │ ├── family.gif
│ │ │ ├── friends.gif
│ │ │ ├── lover.gif
│ │ │ ├── mate.gif
│ │ │ ├── ordinary.gif
│ │ │ ├── teacher.gif
│ │ │ ├── unknown.gif
│ │ │ └── vip.gif
│ │ ├── category.gif
│ │ ├── editors
│ │ │ ├── area.gif
│ │ │ ├── basic.gif
│ │ │ ├── close_view.gif
│ │ │ ├── contact.gif
│ │ │ ├── editor.gif
│ │ │ ├── file_obj.gif
│ │ │ ├── form_banner.gif
│ │ │ ├── help_topic.gif
│ │ │ ├── large_image.gif
│ │ │ ├── linkto_help.gif
│ │ │ ├── newprj_wiz.gif
│ │ │ ├── phone.gif
│ │ │ ├── sample.gif
│ │ │ ├── th_horizontal.gif
│ │ │ └── th_vertical.gif
│ │ ├── help
│ │ │ └── help.gif
│ │ ├── people.gif
│ │ ├── perspectives
│ │ │ └── perspective.gif
│ │ ├── preferences
│ │ │ └── contact.jpg
│ │ ├── sample.gif
│ │ └── wizards
│ │ ├── new_add_wiz.gif
│ │ └── new_wiz.gif
│ ├── plugin.xml
│ ├── src
│ │ └── com
│ │ ├── plugindev
│ │ │ └── addressbook
│ │ │ ├── Activator.java
│ │ │ ├── IPageLayout.java
│ │ │ ├── actions
│ │ │ │ ├── AddAddressAction.java
│ │ │ │ ├── AddressViewerFilterAction.java
│ │ │ │ ├── CreateDefaultAddressCheatSheetAction.java
│ │ │ │ ├── DeleteAddressAction.java
│ │ │ │ ├── OpenAddressViewAction.java
│ │ │ │ └── OpenFormEditorAction.java
│ │ │ ├── dialogs
│ │ │ │ └── AddressViewFilterDialog.java
│ │ │ ├── editors
│ │ │ │ ├── AddressFormEditor.java
│ │ │ │ ├── AddressFormEditorContributor.java
│ │ │ │ ├── MasterDetailsPage.java
│ │ │ │ ├── PageWithSubPages.java
│ │ │ │ ├── ScrolledPropertiesBlock.java
│ │ │ │ ├── SourcePage.java
│ │ │ │ ├── actions
│ │ │ │ │ ├── RemoveAddressListAction.java
│ │ │ │ │ └── SaveAction.java
│ │ │ │ └── models
│ │ │ │ ├── AddressList.java
│ │ │ │ ├── AddressListManager.java
│ │ │ │ ├── AddressListProperties.java
│ │ │ │ ├── AreaAddressList.java
│ │ │ │ ├── AreaAddressListProperties.java
│ │ │ │ ├── BasicAddressList.java
│ │ │ │ ├── BasicAddressListProperties.java
│ │ │ │ ├── ChoiceItemContents.java
│ │ │ │ ├── FormEditorInput.java
│ │ │ │ ├── IManagerListener.java
│ │ │ │ ├── MYXMLMemento.java
│ │ │ │ ├── MasterContentProvider.java
│ │ │ │ ├── MasterLabelProvider.java
│ │ │ │ ├── PhoneAddressList.java
│ │ │ │ ├── PhoneAddressListItemProperties.java
│ │ │ │ ├── SimpleFormEditorInput.java
│ │ │ │ └── TextItemContents.java
│ │ │ ├── example
│ │ │ │ ├── EditorExampleAction.java
│ │ │ │ ├── ObjExampleAction.java
│ │ │ │ ├── TopEditorAction.java
│ │ │ │ ├── ViewExampleAction.java
│ │ │ │ └── ViewerExampleAction.java
│ │ │ ├── models
│ │ │ │ ├── AddressCategory.java
│ │ │ │ ├── AddressItem.java
│ │ │ │ ├── AddressItemPropertySource.java
│ │ │ │ ├── AddressManager.java
│ │ │ │ ├── AddressManagerEvent.java
│ │ │ │ └── AddressManagerListener.java
│ │ │ ├── perspectives
│ │ │ │ └── AddressBookPerspectiveFactory.java
│ │ │ ├── preferences
│ │ │ │ ├── AddressPreferencePage.java
│ │ │ │ ├── AddressRootPreferencePage.java
│ │ │ │ ├── EditorPrefPage.java
│ │ │ │ ├── PreferenceConstants.java
│ │ │ │ ├── PreferenceInitializer.java
│ │ │ │ └── ViewPrefPage.java
│ │ │ ├── util
│ │ │ │ ├── ImageCache.java
│ │ │ │ ├── ImageKeys.java
│ │ │ │ ├── Messages.java
│ │ │ │ └── StringMatcher.java
│ │ │ ├── views
│ │ │ │ ├── AddressView.java
│ │ │ │ ├── AddressViewContentProvider.java
│ │ │ │ ├── AddressViewLabelProvider.java
│ │ │ │ ├── AddressViewerCategoryFilter.java
│ │ │ │ ├── AddressViewerNameFilter.java
│ │ │ │ └── AddressViewerSorter.java
│ │ │ └── wizards
│ │ │ ├── EditListsConfigWizardPage.java
│ │ │ ├── NewAddressItemWizard.java
│ │ │ ├── NewAddressItemWizardPage.java
│ │ │ └── TableViewerLabelProvider.java
│ │ └── swtdesigner
│ │ ├── FieldLayoutPreferencePage.java
│ │ ├── ResourceManager.java
│ │ ├── SWTResourceManager.java
│ │ └── preference
│ │ └── ComboFieldEditor.java
│ ├── toc.xml
│ ├── tocactions.xml
│ ├── toccustomui.xml
│ ├── tocintroduction.xml
│ ├── tocquickstart.xml
│ ├── tocuicomponent.xml
│ └── tocwizardsanddialogs.xml
├── chapter18
│ ├── 18章程序说明.doc
│ ├── 18章程序说明.txt
│ └── com.plugindev.addressbook
│ ├── META-INF
│ │ └── MANIFEST.MF
│ ├── bin
│ │ └── com
│ │ ├── plugindev
│ │ │ └── addressbook
│ │ │ ├── Activator.class
│ │ │ ├── IPageLayout.class
│ │ │ ├── actions
│ │ │ │ ├── AddAddressAction.class
│ │ │ │ ├── AddressViewerFilterAction.class
│ │ │ │ ├── CreateDefaultAddressCheatSheetAction.class
│ │ │ │ ├── DeleteAddressAction.class
│ │ │ │ ├── OpenAddressViewAction.class
│ │ │ │ └── OpenFormEditorAction.class
│ │ │ ├── dialogs
│ │ │ │ ├── AddressViewFilterDialog$1.class
│ │ │ │ ├── AddressViewFilterDialog$2.class
│ │ │ │ └── AddressViewFilterDialog.class
│ │ │ ├── editors
│ │ │ │ ├── AddressFormEditor$1.class
│ │ │ │ ├── AddressFormEditor.class
│ │ │ │ ├── AddressFormEditorContributor.class
│ │ │ │ ├── MasterDetailsPage.class
│ │ │ │ ├── PageWithSubPages$1.class
│ │ │ │ ├── PageWithSubPages$2.class
│ │ │ │ ├── PageWithSubPages$TextSection.class
│ │ │ │ ├── PageWithSubPages.class
│ │ │ │ ├── ScrolledPropertiesBlock$1.class
│ │ │ │ ├── ScrolledPropertiesBlock$2.class
│ │ │ │ ├── ScrolledPropertiesBlock$3.class
│ │ │ │ ├── ScrolledPropertiesBlock$4.class
│ │ │ │ ├── ScrolledPropertiesBlock$5.class
│ │ │ │ ├── ScrolledPropertiesBlock$6.class
│ │ │ │ ├── ScrolledPropertiesBlock$7.class
│ │ │ │ ├── ScrolledPropertiesBlock.class
│ │ │ │ ├── SourcePage$1.class
│ │ │ │ ├── SourcePage.class
│ │ │ │ ├── actions
│ │ │ │ │ ├── RemoveAddressListAction$1.class
│ │ │ │ │ ├── RemoveAddressListAction.class
│ │ │ │ │ └── SaveAction.class
│ │ │ │ └── models
│ │ │ │ ├── AddressList.class
│ │ │ │ ├── AddressListManager.class
│ │ │ │ ├── AddressListProperties$1.class
│ │ │ │ ├── AddressListProperties$2.class
│ │ │ │ ├── AddressListProperties.class
│ │ │ │ ├── AreaAddressList.class
│ │ │ │ ├── AreaAddressListProperties.class
│ │ │ │ ├── BasicAddressList.class
│ │ │ │ ├── BasicAddressListProperties.class
│ │ │ │ ├── ChoiceItemContents.class
│ │ │ │ ├── FormEditorInput.class
│ │ │ │ ├── IManagerListener.class
│ │ │ │ ├── MYXMLMemento$DOMWriter.class
│ │ │ │ ├── MYXMLMemento.class
│ │ │ │ ├── MasterContentProvider.class
│ │ │ │ ├── MasterLabelProvider.class
│ │ │ │ ├── PhoneAddressList.class
│ │ │ │ ├── PhoneAddressListItemProperties.class
│ │ │ │ ├── SimpleFormEditorInput.class
│ │ │ │ └── TextItemContents.class
│ │ │ ├── example
│ │ │ │ ├── EditorExampleAction.class
│ │ │ │ ├── ObjExampleAction.class
│ │ │ │ ├── TopEditorAction.class
│ │ │ │ ├── ViewExampleAction.class
│ │ │ │ └── ViewerExampleAction.class
│ │ │ ├── models
│ │ │ │ ├── AddressCategory$1.class
│ │ │ │ ├── AddressCategory$2.class
│ │ │ │ ├── AddressCategory$3.class
│ │ │ │ ├── AddressCategory$4.class
│ │ │ │ ├── AddressCategory$5.class
│ │ │ │ ├── AddressCategory$6.class
│ │ │ │ ├── AddressCategory$7.class
│ │ │ │ ├── AddressCategory$8.class
│ │ │ │ ├── AddressCategory$9.class
│ │ │ │ ├── AddressCategory.class
│ │ │ │ ├── AddressItem.class
│ │ │ │ ├── AddressItemPropertySource$1.class
│ │ │ │ ├── AddressItemPropertySource$2.class
│ │ │ │ ├── AddressItemPropertySource.class
│ │ │ │ ├── AddressManager.class
│ │ │ │ ├── AddressManagerEvent.class
│ │ │ │ └── AddressManagerListener.class
│ │ │ ├── perspectives
│ │ │ │ └── AddressBookPerspectiveFactory.class
│ │ │ ├── preferences
│ │ │ │ ├── AddressPreferencePage.class
│ │ │ │ ├── AddressRootPreferencePage.class
│ │ │ │ ├── EditorPrefPage.class
│ │ │ │ ├── PreferenceConstants.class
│ │ │ │ ├── PreferenceInitializer.class
│ │ │ │ └── ViewPrefPage.class
│ │ │ ├── util
│ │ │ │ ├── ImageCache.class
│ │ │ │ ├── ImageKeys.class
│ │ │ │ ├── Messages.class
│ │ │ │ ├── StringMatcher$Position.class
│ │ │ │ └── StringMatcher.class
│ │ │ ├── views
│ │ │ │ ├── AddressView$1.class
│ │ │ │ ├── AddressView$10.class
│ │ │ │ ├── AddressView$11.class
│ │ │ │ ├── AddressView$2.class
│ │ │ │ ├── AddressView$3.class
│ │ │ │ ├── AddressView$4.class
│ │ │ │ ├── AddressView$5.class
│ │ │ │ ├── AddressView$6.class
│ │ │ │ ├── AddressView$7.class
│ │ │ │ ├── AddressView$8.class
│ │ │ │ ├── AddressView$9.class
│ │ │ │ ├── AddressView.class
│ │ │ │ ├── AddressViewContentProvider.class
│ │ │ │ ├── AddressViewLabelProvider.class
│ │ │ │ ├── AddressViewerCategoryFilter.class
│ │ │ │ ├── AddressViewerNameFilter.class
│ │ │ │ ├── AddressViewerSorter$1.class
│ │ │ │ ├── AddressViewerSorter$SortInfo.class
│ │ │ │ └── AddressViewerSorter.class
│ │ │ └── wizards
│ │ │ ├── EditListsConfigWizardPage.class
│ │ │ ├── NewAddressItemWizard$1.class
│ │ │ ├── NewAddressItemWizard$2.class
│ │ │ ├── NewAddressItemWizard.class
│ │ │ ├── NewAddressItemWizardPage$1.class
│ │ │ ├── NewAddressItemWizardPage$2.class
│ │ │ ├── NewAddressItemWizardPage.class
│ │ │ └── TableViewerLabelProvider.class
│ │ └── swtdesigner
│ │ ├── FieldLayoutPreferencePage.class
│ │ ├── ResourceManager.class
│ │ ├── SWTResourceManager$1.class
│ │ ├── SWTResourceManager$2.class
│ │ ├── SWTResourceManager.class
│ │ └── preference
│ │ ├── ComboFieldEditor$1.class
│ │ └── ComboFieldEditor.class
│ ├── build.properties
│ ├── content.xml
│ ├── content2.xml
│ ├── contentsum.xml
│ ├── contexts.xml
│ ├── html
│ │ ├── article.gif
│ │ ├── folder.gif
│ │ ├── index.htm
│ │ ├── 操作
│ │ │ ├── 概述
│ │ │ │ ├── 操作.files
│ │ │ │ │ ├── colorschememapping.xml
│ │ │ │ │ ├── filelist.xml
│ │ │ │ │ ├── header.htm
│ │ │ │ │ ├── item0007.xml
│ │ │ │ │ ├── props0008.xml
│ │ │ │ │ └── themedata.thmx
│ │ │ │ ├── 操作.htm
│ │ │ │ └── 操作_files
│ │ │ │ └── header.htm
│ │ │ └── 详细介绍
│ │ │ ├── 视图操作.htm
│ │ │ ├── 视图操作_files
│ │ │ │ ├── header.htm
│ │ │ │ ├── image001.png
│ │ │ │ ├── image002.jpg
│ │ │ │ ├── image003.png
│ │ │ │ └── image004.jpg
│ │ │ ├── 工作台操作.htm
│ │ │ ├── 编辑器操作.htm
│ │ │ ├── 工作台操作_files
│ │ │ │ ├── header.htm
│ │ │ │ ├── image001.png
│ │ │ │ ├── image002.jpg
│ │ │ │ ├── image003.png
│ │ │ │ └── image004.jpg
│ │ │ └── 编辑器操作_files
│ │ │ ├── header.htm
│ │ │ ├── image001.png
│ │ │ ├── image002.jpg
│ │ │ ├── image003.png
│ │ │ └── image004.jpg
│ │ ├── 概述
│ │ │ ├── 整体概览.files
│ │ │ │ ├── colorschememapping.xml
│ │ │ │ ├── filelist.xml
│ │ │ │ ├── header.htm
│ │ │ │ ├── image001.png
│ │ │ │ ├── image002.jpg
│ │ │ │ └── themedata.thmx
│ │ │ ├── 整体概览.htm
│ │ │ └── 整体概览_files
│ │ │ ├── header.htm
│ │ │ ├── image001.png
│ │ │ └── image002.jpg
│ │ ├── 定制界面
│ │ │ ├── 首选项.htm
│ │ │ └── 首选项_files
│ │ │ ├── header.htm
│ │ │ ├── image001.png
│ │ │ ├── image002.jpg
│ │ │ ├── image003.png
│ │ │ ├── image004.jpg
│ │ │ ├── image005.png
│ │ │ └── image006.jpg
│ │ ├── 快速开始
│ │ │ ├── 备忘单.htm
│ │ │ └── 备忘单_files
│ │ │ ├── header.htm
│ │ │ ├── image001.png
│ │ │ ├── image002.jpg
│ │ │ ├── image003.png
│ │ │ ├── image004.jpg
│ │ │ ├── image005.png
│ │ │ └── image006.jpg
│ │ ├── 向导和对话框
│ │ │ ├── 向导.htm
│ │ │ ├── 向导_files
│ │ │ │ ├── header.htm
│ │ │ │ ├── image001.png
│ │ │ │ ├── image002.jpg
│ │ │ │ ├── image003.png
│ │ │ │ └── image004.jpg
│ │ │ ├── 对话框.files
│ │ │ │ ├── colorschememapping.xml
│ │ │ │ ├── filelist.xml
│ │ │ │ ├── header.htm
│ │ │ │ ├── image001.png
│ │ │ │ ├── image003.png
│ │ │ │ ├── image005.jpg
│ │ │ │ ├── image006.jpg
│ │ │ │ └── themedata.thmx
│ │ │ ├── 对话框.htm
│ │ │ └── 对话框_files
│ │ │ ├── header.htm
│ │ │ ├── image001.png
│ │ │ ├── image002.jpg
│ │ │ ├── image003.png
│ │ │ └── image004.jpg
│ │ └── 基本用户界面
│ │ ├── 视图.files
│ │ │ ├── colorschememapping.xml
│ │ │ ├── filelist.xml
│ │ │ ├── header.htm
│ │ │ ├── image001.png
│ │ │ ├── image002.jpg
│ │ │ ├── image003.png
│ │ │ ├── image004.jpg
│ │ │ ├── image005.png
│ │ │ ├── image006.jpg
│ │ │ ├── image007.png
│ │ │ ├── image008.jpg
│ │ │ ├── image009.png
│ │ │ ├── image010.jpg
│ │ │ ├── image011.png
│ │ │ ├── image012.jpg
│ │ │ ├── image013.gif
│ │ │ ├── image014.png
│ │ │ ├── image015.jpg
│ │ │ ├── image016.png
│ │ │ ├── image017.jpg
│ │ │ └── themedata.thmx
│ │ ├── 视图.htm
│ │ ├── 视图_files
│ │ │ ├── header.htm
│ │ │ ├── image001.png
│ │ │ ├── image002.jpg
│ │ │ ├── image003.png
│ │ │ ├── image004.jpg
│ │ │ ├── image005.png
│ │ │ ├── image006.jpg
│ │ │ ├── image007.png
│ │ │ ├── image008.jpg
│ │ │ ├── image009.png
│ │ │ ├── image010.jpg
│ │ │ ├── image011.png
│ │ │ ├── image012.jpg
│ │ │ ├── image013.gif
│ │ │ ├── image014.png
│ │ │ ├── image015.jpg
│ │ │ ├── image016.png
│ │ │ └── image017.jpg
│ │ ├── 编辑器.files
│ │ │ ├── colorschememapping.xml
│ │ │ ├── filelist.xml
│ │ │ ├── header.htm
│ │ │ ├── image001.png
│ │ │ ├── image002.jpg
│ │ │ ├── image003.png
│ │ │ ├── image004.jpg
│ │ │ ├── image005.png
│ │ │ ├── image006.jpg
│ │ │ ├── image007.png
│ │ │ ├── image008.jpg
│ │ │ └── themedata.thmx
│ │ ├── 透视图.files
│ │ │ ├── colorschememapping.xml
│ │ │ ├── filelist.xml
│ │ │ ├── header.htm
│ │ │ ├── image001.png
│ │ │ ├── image002.png
│ │ │ ├── image003.gif
│ │ │ ├── image004.png
│ │ │ ├── image005.jpg
│ │ │ └── themedata.thmx
│ │ ├── 编辑器.htm
│ │ ├── 透视图.htm
│ │ ├── 编辑器_files
│ │ │ ├── header.htm
│ │ │ ├── image001.png
│ │ │ ├── image002.jpg
│ │ │ ├── image003.png
│ │ │ ├── image004.jpg
│ │ │ ├── image005.png
│ │ │ ├── image006.jpg
│ │ │ ├── image007.png
│ │ │ └── image008.jpg
│ │ └── 透视图_files
│ │ ├── header.htm
│ │ ├── image001.png
│ │ ├── image002.png
│ │ ├── image003.gif
│ │ ├── image004.png
│ │ └── image005.jpg
│ ├── icons
│ │ ├── Thumbs.db
│ │ ├── actions
│ │ │ ├── add.gif
│ │ │ ├── delete.gif
│ │ │ ├── delete_dis.gif
│ │ │ └── filter.gif
│ │ ├── category
│ │ │ ├── business.gif
│ │ │ ├── family.gif
│ │ │ ├── friends.gif
│ │ │ ├── lover.gif
│ │ │ ├── mate.gif
│ │ │ ├── ordinary.gif
│ │ │ ├── teacher.gif
│ │ │ ├── unknown.gif
│ │ │ └── vip.gif
│ │ ├── category.gif
│ │ ├── editors
│ │ │ ├── area.gif
│ │ │ ├── basic.gif
│ │ │ ├── close_view.gif
│ │ │ ├── contact.gif
│ │ │ ├── editor.gif
│ │ │ ├── file_obj.gif
│ │ │ ├── form_banner.gif
│ │ │ ├── help_topic.gif
│ │ │ ├── large_image.gif
│ │ │ ├── linkto_help.gif
│ │ │ ├── newprj_wiz.gif
│ │ │ ├── phone.gif
│ │ │ ├── sample.gif
│ │ │ ├── th_horizontal.gif
│ │ │ └── th_vertical.gif
│ │ ├── help
│ │ │ └── help.gif
│ │ ├── people.gif
│ │ ├── perspectives
│ │ │ └── perspective.gif
│ │ ├── preferences
│ │ │ └── contact.jpg
│ │ ├── sample.gif
│ │ └── wizards
│ │ ├── new_add_wiz.gif
│ │ └── new_wiz.gif
│ ├── plugin.xml
│ ├── src
│ │ └── com
│ │ ├── plugindev
│ │ │ └── addressbook
│ │ │ ├── Activator.java
│ │ │ ├── IPageLayout.java
│ │ │ ├── actions
│ │ │ │ ├── AddAddressAction.java
│ │ │ │ ├── AddressViewerFilterAction.java
│ │ │ │ ├── CreateDefaultAddressCheatSheetAction.java
│ │ │ │ ├── DeleteAddressAction.java
│ │ │ │ ├── OpenAddressViewAction.java
│ │ │ │ └── OpenFormEditorAction.java
│ │ │ ├── dialogs
│ │ │ │ └── AddressViewFilterDialog.java
│ │ │ ├── editors
│ │ │ │ ├── AddressFormEditor.java
│ │ │ │ ├── AddressFormEditorContributor.java
│ │ │ │ ├── MasterDetailsPage.java
│ │ │ │ ├── PageWithSubPages.java
│ │ │ │ ├── ScrolledPropertiesBlock.java
│ │ │ │ ├── SourcePage.java
│ │ │ │ ├── actions
│ │ │ │ │ ├── RemoveAddressListAction.java
│ │ │ │ │ └── SaveAction.java
│ │ │ │ └── models
│ │ │ │ ├── AddressList.java
│ │ │ │ ├── AddressListManager.java
│ │ │ │ ├── AddressListProperties.java
│ │ │ │ ├── AreaAddressList.java
│ │ │ │ ├── AreaAddressListProperties.java
│ │ │ │ ├── BasicAddressList.java
│ │ │ │ ├── BasicAddressListProperties.java
│ │ │ │ ├── ChoiceItemContents.java
│ │ │ │ ├── FormEditorInput.java
│ │ │ │ ├── IManagerListener.java
│ │ │ │ ├── MYXMLMemento.java
│ │ │ │ ├── MasterContentProvider.java
│ │ │ │ ├── MasterLabelProvider.java
│ │ │ │ ├── PhoneAddressList.java
│ │ │ │ ├── PhoneAddressListItemProperties.java
│ │ │ │ ├── SimpleFormEditorInput.java
│ │ │ │ └── TextItemContents.java
│ │ │ ├── example
│ │ │ │ ├── EditorExampleAction.java
│ │ │ │ ├── ObjExampleAction.java
│ │ │ │ ├── TopEditorAction.java
│ │ │ │ ├── ViewExampleAction.java
│ │ │ │ └── ViewerExampleAction.java
│ │ │ ├── models
│ │ │ │ ├── AddressCategory.java
│ │ │ │ ├── AddressItem.java
│ │ │ │ ├── AddressItemPropertySource.java
│ │ │ │ ├── AddressManager.java
│ │ │ │ ├── AddressManagerEvent.java
│ │ │ │ └── AddressManagerListener.java
│ │ │ ├── perspectives
│ │ │ │ └── AddressBookPerspectiveFactory.java
│ │ │ ├── preferences
│ │ │ │ ├── AddressPreferencePage.java
│ │ │ │ ├── AddressRootPreferencePage.java
│ │ │ │ ├── EditorPrefPage.java
│ │ │ │ ├── PreferenceConstants.java
│ │ │ │ ├── PreferenceInitializer.java
│ │ │ │ └── ViewPrefPage.java
│ │ │ ├── util
│ │ │ │ ├── ImageCache.java
│ │ │ │ ├── ImageKeys.java
│ │ │ │ ├── Messages.java
│ │ │ │ └── StringMatcher.java
│ │ │ ├── views
│ │ │ │ ├── AddressView.java
│ │ │ │ ├── AddressViewContentProvider.java
│ │ │ │ ├── AddressViewLabelProvider.java
│ │ │ │ ├── AddressViewerCategoryFilter.java
│ │ │ │ ├── AddressViewerNameFilter.java
│ │ │ │ └── AddressViewerSorter.java
│ │ │ └── wizards
│ │ │ ├── EditListsConfigWizardPage.java
│ │ │ ├── NewAddressItemWizard.java
│ │ │ ├── NewAddressItemWizardPage.java
│ │ │ └── TableViewerLabelProvider.java
│ │ └── swtdesigner
│ │ ├── FieldLayoutPreferencePage.java
│ │ ├── ResourceManager.java
│ │ ├── SWTResourceManager.java
│ │ └── preference
│ │ └── ComboFieldEditor.java
│ ├── toc.xml
│ ├── tocactions.xml
│ ├── toccustomui.xml
│ ├── tocintroduction.xml
│ ├── tocquickstart.xml
│ ├── tocuicomponent.xml
│ └── tocwizardsanddialogs.xml
├── chapter19
│ ├── com.plugindev.address
│ │ ├── build.properties
│ │ └── feature.xml
│ ├── com.plugindev.address.update
│ │ └── site.xml
│ ├── com.plugindev.addressbook
│ │ ├── META-INF
│ │ │ └── MANIFEST.MF
│ │ ├── about.ini
│ │ ├── bin
│ │ │ └── com
│ │ │ ├── plugindev
│ │ │ │ └── addressbook
│ │ │ │ ├── Activator.class
│ │ │ │ ├── IPageLayout.class
│ │ │ │ ├── actions
│ │ │ │ │ ├── ActionMessages.class
│ │ │ │ │ ├── AddAddressAction.class
│ │ │ │ │ ├── AddressViewerFilterAction.class
│ │ │ │ │ ├── CreateDefaultAddressCheatSheetAction.class
│ │ │ │ │ ├── DeleteAddressAction.class
│ │ │ │ │ ├── OpenAddressViewAction.class
│ │ │ │ │ ├── OpenFormEditorAction.class
│ │ │ │ │ ├── messages.properties
│ │ │ │ │ └── messages_zh_CN.properties
│ │ │ │ ├── cache
│ │ │ │ │ └── ExtCache.class
│ │ │ │ ├── dialogs
│ │ │ │ │ ├── AddressViewFilterDialog$1.class
│ │ │ │ │ ├── AddressViewFilterDialog$2.class
│ │ │ │ │ └── AddressViewFilterDialog.class
│ │ │ │ ├── editors
│ │ │ │ │ ├── AddressFormEditor$1.class
│ │ │ │ │ ├── AddressFormEditor.class
│ │ │ │ │ ├── AddressFormEditorContributor.class
│ │ │ │ │ ├── MasterDetailsPage.class
│ │ │ │ │ ├── PageWithSubPages$1.class
│ │ │ │ │ ├── PageWithSubPages$2.class
│ │ │ │ │ ├── PageWithSubPages$TextSection.class
│ │ │ │ │ ├── PageWithSubPages.class
│ │ │ │ │ ├── ScrolledPropertiesBlock$1.class
│ │ │ │ │ ├── ScrolledPropertiesBlock$2.class
│ │ │ │ │ ├── ScrolledPropertiesBlock$3.class
│ │ │ │ │ ├── ScrolledPropertiesBlock$4.class
│ │ │ │ │ ├── ScrolledPropertiesBlock$5.class
│ │ │ │ │ ├── ScrolledPropertiesBlock$6.class
│ │ │ │ │ ├── ScrolledPropertiesBlock$7.class
│ │ │ │ │ ├── ScrolledPropertiesBlock.class
│ │ │ │ │ ├── SourcePage$1.class
│ │ │ │ │ ├── SourcePage.class
│ │ │ │ │ ├── actions
│ │ │ │ │ │ ├── RemoveAddressListAction$1.class
│ │ │ │ │ │ ├── RemoveAddressListAction.class
│ │ │ │ │ │ └── SaveAction.class
│ │ │ │ │ └── models
│ │ │ │ │ ├── AddressList.class
│ │ │ │ │ ├── AddressListManager.class
│ │ │ │ │ ├── AddressListProperties$1.class
│ │ │ │ │ ├── AddressListProperties$2.class
│ │ │ │ │ ├── AddressListProperties.class
│ │ │ │ │ ├── AreaAddressList.class
│ │ │ │ │ ├── AreaAddressListProperties.class
│ │ │ │ │ ├── BasicAddressList.class
│ │ │ │ │ ├── BasicAddressListProperties.class
│ │ │ │ │ ├── ChoiceItemContents.class
│ │ │ │ │ ├── FormEditorInput.class
│ │ │ │ │ ├── IManagerListener.class
│ │ │ │ │ ├── MYXMLMemento$DOMWriter.class
│ │ │ │ │ ├── MYXMLMemento.class
│ │ │ │ │ ├── MasterContentProvider.class
│ │ │ │ │ ├── MasterLabelProvider.class
│ │ │ │ │ ├── PhoneAddressList.class
│ │ │ │ │ ├── PhoneAddressListItemProperties.class
│ │ │ │ │ ├── SimpleFormEditorInput.class
│ │ │ │ │ └── TextItemContents.class
│ │ │ │ ├── example
│ │ │ │ │ ├── EditorExampleAction.class
│ │ │ │ │ ├── ObjExampleAction.class
│ │ │ │ │ ├── TopEditorAction.class
│ │ │ │ │ ├── ViewExampleAction.class
│ │ │ │ │ └── ViewerExampleAction.class
│ │ │ │ ├── extension
│ │ │ │ │ ├── DemoProvider.class
│ │ │ │ │ ├── IMessageProvider.class
│ │ │ │ │ └── ShowMessageAction.class
│ │ │ │ ├── models
│ │ │ │ │ ├── AddressCategory$1.class
│ │ │ │ │ ├── AddressCategory$2.class
│ │ │ │ │ ├── AddressCategory$3.class
│ │ │ │ │ ├── AddressCategory$4.class
│ │ │ │ │ ├── AddressCategory$5.class
│ │ │ │ │ ├── AddressCategory$6.class
│ │ │ │ │ ├── AddressCategory$7.class
│ │ │ │ │ ├── AddressCategory$8.class
│ │ │ │ │ ├── AddressCategory$9.class
│ │ │ │ │ ├── AddressCategory.class
│ │ │ │ │ ├── AddressItem.class
│ │ │ │ │ ├── AddressItemPropertySource$1.class
│ │ │ │ │ ├── AddressItemPropertySource$2.class
│ │ │ │ │ ├── AddressItemPropertySource.class
│ │ │ │ │ ├── AddressManager.class
│ │ │ │ │ ├── AddressManagerEvent.class
│ │ │ │ │ └── AddressManagerListener.class
│ │ │ │ ├── perspectives
│ │ │ │ │ └── AddressBookPerspectiveFactory.class
│ │ │ │ ├── preferences
│ │ │ │ │ ├── AddressPreferencePage.class
│ │ │ │ │ ├── AddressRootPreferencePage.class
│ │ │ │ │ ├── EditorPrefPage.class
│ │ │ │ │ ├── PreferenceConstants.class
│ │ │ │ │ ├── PreferenceInitializer.class
│ │ │ │ │ └── ViewPrefPage.class
│ │ │ │ ├── util
│ │ │ │ │ ├── ImageCache.class
│ │ │ │ │ ├── ImageKeys.class
│ │ │ │ │ ├── Messages.class
│ │ │ │ │ ├── StringMatcher$Position.class
│ │ │ │ │ └── StringMatcher.class
│ │ │ │ ├── views
│ │ │ │ │ ├── AddressView$1.class
│ │ │ │ │ ├── AddressView$2.class
│ │ │ │ │ ├── AddressView$3.class
│ │ │ │ │ ├── AddressView$4.class
│ │ │ │ │ ├── AddressView$5.class
│ │ │ │ │ ├── AddressView$6.class
│ │ │ │ │ ├── AddressView$7.class
│ │ │ │ │ ├── AddressView$8.class
│ │ │ │ │ ├── AddressView$9.class
│ │ │ │ │ ├── AddressView.class
│ │ │ │ │ ├── AddressViewContentProvider.class
│ │ │ │ │ ├── AddressViewLabelProvider.class
│ │ │ │ │ ├── AddressViewerCategoryFilter.class
│ │ │ │ │ ├── AddressViewerNameFilter.class
│ │ │ │ │ ├── AddressViewerSorter$1.class
│ │ │ │ │ ├── AddressViewerSorter$SortInfo.class
│ │ │ │ │ └── AddressViewerSorter.class
│ │ │ │ └── wizards
│ │ │ │ ├── EditListsConfigWizardPage.class
│ │ │ │ ├── NewAddressItemWizard$1.class
│ │ │ │ ├── NewAddressItemWizard$2.class
│ │ │ │ ├── NewAddressItemWizard.class
│ │ │ │ ├── NewAddressItemWizardPage$1.class
│ │ │ │ ├── NewAddressItemWizardPage$2.class
│ │ │ │ ├── NewAddressItemWizardPage.class
│ │ │ │ ├── TableViewerLabelProvider.class
│ │ │ │ └── lang
│ │ │ │ ├── Messages.class
│ │ │ │ └── messages.properties
│ │ │ └── swtdesigner
│ │ │ ├── FieldLayoutPreferencePage.class
│ │ │ ├── ResourceManager.class
│ │ │ ├── SWTResourceManager$1.class
│ │ │ ├── SWTResourceManager$2.class
│ │ │ ├── SWTResourceManager.class
│ │ │ └── preference
│ │ │ ├── ComboFieldEditor$1.class
│ │ │ └── ComboFieldEditor.class
│ │ ├── build.properties
│ │ ├── content.xml
│ │ ├── icons
│ │ │ ├── Thumbs.db
│ │ │ ├── actions
│ │ │ │ ├── Thumbs.db
│ │ │ │ ├── add.gif
│ │ │ │ ├── delete.gif
│ │ │ │ ├── delete_dis.gif
│ │ │ │ └── filter.gif
│ │ │ ├── category
│ │ │ │ ├── Thumbs.db
│ │ │ │ ├── business.gif
│ │ │ │ ├── family.gif
│ │ │ │ ├── friends.gif
│ │ │ │ ├── lover.gif
│ │ │ │ ├── mate.gif
│ │ │ │ ├── ordinary.gif
│ │ │ │ ├── teacher.gif
│ │ │ │ ├── unknown.gif
│ │ │ │ └── vip.gif
│ │ │ ├── category.gif
│ │ │ ├── editors
│ │ │ │ ├── Thumbs.db
│ │ │ │ ├── area.gif
│ │ │ │ ├── basic.gif
│ │ │ │ ├── close_view.gif
│ │ │ │ ├── contact.gif
│ │ │ │ ├── editor.gif
│ │ │ │ ├── file_obj.gif
│ │ │ │ ├── form_banner.gif
│ │ │ │ ├── help_topic.gif
│ │ │ │ ├── large_image.gif
│ │ │ │ ├── linkto_help.gif
│ │ │ │ ├── newprj_wiz.gif
│ │ │ │ ├── phone.gif
│ │ │ │ ├── sample.gif
│ │ │ │ ├── th_horizontal.gif
│ │ │ │ └── th_vertical.gif
│ │ │ ├── people.gif
│ │ │ ├── perspectives
│ │ │ │ ├── Thumbs.db
│ │ │ │ └── perspective.gif
│ │ │ ├── preferences
│ │ │ │ ├── Thumbs.db
│ │ │ │ └── contact.jpg
│ │ │ ├── sample.gif
│ │ │ └── wizards
│ │ │ ├── Thumbs.db
│ │ │ ├── new_add_wiz.gif
│ │ │ └── new_wiz.gif
│ │ ├── image.gif
│ │ ├── plugin.properties
│ │ ├── plugin.xml
│ │ ├── plugin_en_US.properties
│ │ ├── schema
│ │ │ └── messages.exsd
│ │ ├── splash.bmp
│ │ └── src
│ │ └── com
│ │ ├── plugindev
│ │ │ └── addressbook
│ │ │ ├── Activator.java
│ │ │ ├── IPageLayout.java
│ │ │ ├── actions
│ │ │ │ ├── ActionMessages.java
│ │ │ │ ├── AddAddressAction.java
│ │ │ │ ├── AddressViewerFilterAction.java
│ │ │ │ ├── CreateDefaultAddressCheatSheetAction.java
│ │ │ │ ├── DeleteAddressAction.java
│ │ │ │ ├── OpenAddressViewAction.java
│ │ │ │ ├── OpenFormEditorAction.java
│ │ │ │ ├── messages.properties
│ │ │ │ └── messages_zh_CN.properties
│ │ │ ├── cache
│ │ │ │ └── ExtCache.java
│ │ │ ├── dialogs
│ │ │ │ └── AddressViewFilterDialog.java
│ │ │ ├── editors
│ │ │ │ ├── AddressFormEditor.java
│ │ │ │ ├── AddressFormEditorContributor.java
│ │ │ │ ├── MasterDetailsPage.java
│ │ │ │ ├── PageWithSubPages.java
│ │ │ │ ├── ScrolledPropertiesBlock.java
│ │ │ │ ├── SourcePage.java
│ │ │ │ ├── actions
│ │ │ │ │ ├── RemoveAddressListAction.java
│ │ │ │ │ └── SaveAction.java
│ │ │ │ └── models
│ │ │ │ ├── AddressList.java
│ │ │ │ ├── AddressListManager.java
│ │ │ │ ├── AddressListProperties.java
│ │ │ │ ├── AreaAddressList.java
│ │ │ │ ├── AreaAddressListProperties.java
│ │ │ │ ├── BasicAddressList.java
│ │ │ │ ├── BasicAddressListProperties.java
│ │ │ │ ├── ChoiceItemContents.java
│ │ │ │ ├── FormEditorInput.java
│ │ │ │ ├── IManagerListener.java
│ │ │ │ ├── MYXMLMemento.java
│ │ │ │ ├── MasterContentProvider.java
│ │ │ │ ├── MasterLabelProvider.java
│ │ │ │ ├── PhoneAddressList.java
│ │ │ │ ├── PhoneAddressListItemProperties.java
│ │ │ │ ├── SimpleFormEditorInput.java
│ │ │ │ └── TextItemContents.java
│ │ │ ├── example
│ │ │ │ ├── EditorExampleAction.java
│ │ │ │ ├── ObjExampleAction.java
│ │ │ │ ├── TopEditorAction.java
│ │ │ │ ├── ViewExampleAction.java
│ │ │ │ └── ViewerExampleAction.java
│ │ │ ├── extension
│ │ │ │ ├── DemoProvider.java
│ │ │ │ ├── IMessageProvider.java
│ │ │ │ └── ShowMessageAction.java
│ │ │ ├── models
│ │ │ │ ├── AddressCategory.java
│ │ │ │ ├── AddressItem.java
│ │ │ │ ├── AddressItemPropertySource.java
│ │ │ │ ├── AddressManager.java
│ │ │ │ ├── AddressManagerEvent.java
│ │ │ │ └── AddressManagerListener.java
│ │ │ ├── perspectives
│ │ │ │ └── AddressBookPerspectiveFactory.java
│ │ │ ├── preferences
│ │ │ │ ├── AddressPreferencePage.java
│ │ │ │ ├── AddressRootPreferencePage.java
│ │ │ │ ├── EditorPrefPage.java
│ │ │ │ ├── PreferenceConstants.java
│ │ │ │ ├── PreferenceInitializer.java
│ │ │ │ └── ViewPrefPage.java
│ │ │ ├── util
│ │ │ │ ├── ImageCache.java
│ │ │ │ ├── ImageKeys.java
│ │ │ │ ├── Messages.java
│ │ │ │ └── StringMatcher.java
│ │ │ ├── views
│ │ │ │ ├── AddressView.java
│ │ │ │ ├── AddressViewContentProvider.java
│ │ │ │ ├── AddressViewLabelProvider.java
│ │ │ │ ├── AddressViewerCategoryFilter.java
│ │ │ │ ├── AddressViewerNameFilter.java
│ │ │ │ └── AddressViewerSorter.java
│ │ │ └── wizards
│ │ │ ├── EditListsConfigWizardPage.java
│ │ │ ├── NewAddressItemWizard.java
│ │ │ ├── NewAddressItemWizardPage.java
│ │ │ ├── TableViewerLabelProvider.java
│ │ │ └── lang
│ │ │ ├── Messages.java
│ │ │ └── messages.properties
│ │ └── swtdesigner
│ │ ├── FieldLayoutPreferencePage.java
│ │ ├── ResourceManager.java
│ │ ├── SWTResourceManager.java
│ │ └── preference
│ │ └── ComboFieldEditor.java
│ ├── com.plugindev.addressbook.nl
│ │ ├── META-INF
│ │ │ └── MANIFEST.MF
│ │ ├── bin
│ │ │ └── com
│ │ │ └── plugindev
│ │ │ └── addressbook
│ │ │ └── wizards
│ │ │ └── lang
│ │ │ └── messages_en_US.properties
│ │ ├── build.properties
│ │ └── src
│ │ └── com
│ │ └── plugindev
│ │ └── addressbook
│ │ └── wizards
│ │ └── lang
│ │ └── messages_en_US.properties
│ ├── com.plugindev.addressbook.nljp
│ │ ├── META-INF
│ │ │ └── MANIFEST.MF
│ │ ├── bin
│ │ │ └── com
│ │ │ └── plugindev
│ │ │ └── addressbook
│ │ │ └── wizards
│ │ │ └── lang
│ │ │ └── messages_jp_JP.properties
│ │ ├── build.properties
│ │ └── src
│ │ └── com
│ │ └── plugindev
│ │ └── addressbook
│ │ └── wizards
│ │ └── lang
│ │ └── messages_jp_JP.properties
│ └── 第19章程序说明.doc
├── chapter20
│ ├── com.plugindev.rcp
│ │ ├── META-INF
│ │ │ └── MANIFEST.MF
│ │ ├── about.ini
│ │ ├── bin
│ │ │ └── com
│ │ │ └── plugindev
│ │ │ └── rcp
│ │ │ ├── Activator.class
│ │ │ ├── Application.class
│ │ │ ├── ApplicationActionBarAdvisor.class
│ │ │ ├── ApplicationWorkbenchAdvisor.class
│ │ │ ├── ApplicationWorkbenchWindowAdvisor.class
│ │ │ ├── Messages.class
│ │ │ ├── actions
│ │ │ │ └── UpdateAction.class
│ │ │ ├── messages.properties
│ │ │ └── messages_zh_CN.properties
│ │ ├── build.properties
│ │ ├── conceptToc.xml
│ │ ├── content
│ │ │ ├── page1.xhtml
│ │ │ ├── page2.xhtml
│ │ │ └── root.xhtml
│ │ ├── default.product
│ │ ├── doc.zip
│ │ ├── icons
│ │ │ ├── icon16.bmp
│ │ │ ├── icon32.bmp
│ │ │ ├── icon48.bmp
│ │ │ ├── sample.gif
│ │ │ └── splash.bmp
│ │ ├── index.xml
│ │ ├── introContent.xml
│ │ ├── introToc.xml
│ │ ├── plugin.properties
│ │ ├── plugin.xml
│ │ ├── plugin_zh_CN.properties
│ │ ├── src
│ │ │ └── com
│ │ │ └── plugindev
│ │ │ └── rcp
│ │ │ ├── Activator.java
│ │ │ ├── Application.java
│ │ │ ├── ApplicationActionBarAdvisor.java
│ │ │ ├── ApplicationWorkbenchAdvisor.java
│ │ │ ├── ApplicationWorkbenchWindowAdvisor.java
│ │ │ ├── Messages.java
│ │ │ ├── actions
│ │ │ │ └── UpdateAction.java
│ │ │ ├── messages.properties
│ │ │ └── messages_zh_CN.properties
│ │ ├── taskToc.xml
│ │ └── toc.xml
│ ├── rcpdev.rcpdemo
│ │ ├── META-INF
│ │ │ └── MANIFEST.MF
│ │ ├── bin
│ │ │ └── rcpdev
│ │ │ └── rcpdemo
│ │ │ ├── Activator.class
│ │ │ ├── Application.class
│ │ │ ├── ApplicationActionBarAdvisor.class
│ │ │ ├── ApplicationWorkbenchAdvisor.class
│ │ │ ├── ApplicationWorkbenchWindowAdvisor.class
│ │ │ ├── Perspective.class
│ │ │ └── views
│ │ │ └── SampleView.class
│ │ ├── build.properties
│ │ ├── icons
│ │ │ ├── alt_about.gif
│ │ │ ├── alt_launcher.icns
│ │ │ ├── alt_launcher.ico
│ │ │ ├── alt_launcher.xpm
│ │ │ ├── alt_window_16.gif
│ │ │ ├── alt_window_32.gif
│ │ │ └── splash.bmp
│ │ ├── new.product
│ │ ├── plugin.xml
│ │ └── src
│ │ └── rcpdev
│ │ └── rcpdemo
│ │ ├── Activator.java
│ │ ├── Application.java
│ │ ├── ApplicationActionBarAdvisor.java
│ │ ├── ApplicationWorkbenchAdvisor.java
│ │ ├── ApplicationWorkbenchWindowAdvisor.java
│ │ ├── Perspective.java
│ │ └── views
│ │ └── SampleView.java
│ └── 第20章程序说明.doc
├── chapter21
│ ├── HelloDraw2d
│ │ ├── META-INF
│ │ │ └── MANIFEST.MF
│ │ ├── bin
│ │ │ ├── hellodraw2d
│ │ │ │ └── Activator.class
│ │ │ └── sample
│ │ │ ├── BackgroundLayer.class
│ │ │ ├── HelloWorld.class
│ │ │ └── RoundRectangleFigure.class
│ │ ├── build.properties
│ │ └── src
│ │ ├── hellodraw2d
│ │ │ └── Activator.java
│ │ └── sample
│ │ ├── BackgroundLayer.java
│ │ ├── HelloWorld.java
│ │ └── RoundRectangleFigure.java
│ └── 第21章程序说明.doc
├── chapter22
│ ├── HelloGEF
│ │ ├── META-INF
│ │ │ └── MANIFEST.MF
│ │ ├── bin
│ │ │ └── hellogef
│ │ │ ├── Activator.class
│ │ │ ├── action
│ │ │ │ └── DiagramActionBarContributor.class
│ │ │ ├── command
│ │ │ │ ├── CreateConnectionCommand.class
│ │ │ │ ├── CreateNodeCommand.class
│ │ │ │ ├── DeleteConnectionCommand.class
│ │ │ │ ├── DeleteNodeCommand.class
│ │ │ │ ├── MoveNodeCommand.class
│ │ │ │ ├── ReconnectSourceCommand.class
│ │ │ │ └── RenameNodeCommand.class
│ │ │ ├── control
│ │ │ │ ├── ConnectionPart.class
│ │ │ │ ├── DiagramPart.class
│ │ │ │ ├── DiagramTreeEditPart.class
│ │ │ │ ├── NodeCellEditorLocator.class
│ │ │ │ ├── NodeDirectEditManager.class
│ │ │ │ ├── NodePart.class
│ │ │ │ ├── NodeTreeEditPart.class
│ │ │ │ ├── PartFactory.class
│ │ │ │ └── TreePartFactory.class
│ │ │ ├── editors
│ │ │ │ ├── BackgroundLayer.class
│ │ │ │ ├── DiagramTemplateTransferDropTargetListener.class
│ │ │ │ ├── HelloEditor$OutlinePage.class
│ │ │ │ ├── HelloEditor.class
│ │ │ │ └── MyRootEditPart.class
│ │ │ ├── factory
│ │ │ │ ├── ElementFactory.class
│ │ │ │ └── PaletteFactory.class
│ │ │ ├── model
│ │ │ │ ├── AbstractModel.class
│ │ │ │ ├── ConnectionModel.class
│ │ │ │ ├── Diagram.class
│ │ │ │ └── NodeModel.class
│ │ │ ├── policy
│ │ │ │ ├── ConnectionEditPolicy.class
│ │ │ │ ├── DiagramLayoutEditPolicy.class
│ │ │ │ ├── NodeDirectEditPolicy.class
│ │ │ │ ├── NodeEditPolicy.class
│ │ │ │ └── NodeGraphicalNodeEditPolicy.class
│ │ │ ├── tools
│ │ │ │ └── STextPropertyDescriptor.class
│ │ │ └── view
│ │ │ └── NodeFigure.class
│ │ ├── build.properties
│ │ ├── icons
│ │ │ ├── Thumbs.db
│ │ │ └── sample.gif
│ │ ├── plugin.xml
│ │ └── src
│ │ └── hellogef
│ │ ├── Activator.java
│ │ ├── action
│ │ │ └── DiagramActionBarContributor.java
│ │ ├── command
│ │ │ ├── CreateConnectionCommand.java
│ │ │ ├── CreateNodeCommand.java
│ │ │ ├── DeleteConnectionCommand.java
│ │ │ ├── DeleteNodeCommand.java
│ │ │ ├── MoveNodeCommand.java
│ │ │ ├── ReconnectSourceCommand.java
│ │ │ └── RenameNodeCommand.java
│ │ ├── control
│ │ │ ├── ConnectionPart.java
│ │ │ ├── DiagramPart.java
│ │ │ ├── DiagramTreeEditPart.java
│ │ │ ├── NodeCellEditorLocator.java
│ │ │ ├── NodeDirectEditManager.java
│ │ │ ├── NodePart.java
│ │ │ ├── NodeTreeEditPart.java
│ │ │ ├── PartFactory.java
│ │ │ └── TreePartFactory.java
│ │ ├── editors
│ │ │ ├── BackgroundLayer.java
│ │ │ ├── DiagramTemplateTransferDropTargetListener.java
│ │ │ ├── HelloEditor.java
│ │ │ └── MyRootEditPart.java
│ │ ├── factory
│ │ │ ├── ElementFactory.java
│ │ │ └── PaletteFactory.java
│ │ ├── model
│ │ │ ├── AbstractModel.java
│ │ │ ├── ConnectionModel.java
│ │ │ ├── Diagram.java
│ │ │ └── NodeModel.java
│ │ ├── policy
│ │ │ ├── ConnectionEditPolicy.java
│ │ │ ├── DiagramLayoutEditPolicy.java
│ │ │ ├── NodeDirectEditPolicy.java
│ │ │ ├── NodeEditPolicy.java
│ │ │ └── NodeGraphicalNodeEditPolicy.java
│ │ ├── tools
│ │ │ └── STextPropertyDescriptor.java
│ │ └── view
│ │ └── NodeFigure.java
│ └── 第22章程序说明.doc
├── chapter23
│ ├── 23章程序说明.doc
│ └── ch23
│ ├── contact.sql
│ ├── rcpdev.adapter
│ │ ├── META-INF
│ │ │ └── MANIFEST.MF
│ │ ├── bin
│ │ │ └── rcpdev
│ │ │ └── adapter
│ │ │ ├── Activator.class
│ │ │ ├── Adapter.class
│ │ │ ├── AdapterStartup.class
│ │ │ ├── job
│ │ │ │ └── AdapterJob.class
│ │ │ └── lang
│ │ │ ├── Messages.class
│ │ │ ├── messages.properties
│ │ │ └── messages_zh_CN.properties
│ │ ├── build.properties
│ │ ├── icons
│ │ │ └── sample.gif
│ │ ├── plugin.xml
│ │ └── src
│ │ └── rcpdev
│ │ └── adapter
│ │ ├── Activator.java
│ │ ├── Adapter.java
│ │ ├── AdapterStartup.java
│ │ ├── job
│ │ │ └── AdapterJob.java
│ │ └── lang
│ │ ├── Messages.java
│ │ ├── messages.properties
│ │ └── messages_zh_CN.properties
│ ├── rcpdev.application
│ │ ├── META-INF
│ │ │ └── MANIFEST.MF
│ │ ├── bin
│ │ │ └── rcpdev
│ │ │ └── application
│ │ │ ├── Activator.class
│ │ │ ├── Application.class
│ │ │ ├── ApplicationActionBarAdvisor.class
│ │ │ ├── ApplicationWorkbenchAdvisor.class
│ │ │ ├── ApplicationWorkbenchWindowAdvisor.class
│ │ │ └── Perspective.class
│ │ ├── build.properties
│ │ ├── icons
│ │ │ ├── alt_about.gif
│ │ │ ├── alt_launcher.icns
│ │ │ ├── alt_launcher.ico
│ │ │ ├── alt_launcher.xpm
│ │ │ ├── alt_window_16.gif
│ │ │ ├── alt_window_32.gif
│ │ │ └── splash.bmp
│ │ ├── new.product
│ │ ├── plugin.xml
│ │ └── src
│ │ └── rcpdev
│ │ └── application
│ │ ├── Activator.java
│ │ ├── Application.java
│ │ ├── ApplicationActionBarAdvisor.java
│ │ ├── ApplicationWorkbenchAdvisor.java
│ │ ├── ApplicationWorkbenchWindowAdvisor.java
│ │ └── Perspective.java
│ ├── rcpdev.common.core
│ │ ├── META-INF
│ │ │ └── MANIFEST.MF
│ │ ├── bin
│ │ │ └── rcpdev
│ │ │ └── common
│ │ │ └── core
│ │ │ ├── Activator.class
│ │ │ ├── mediator
│ │ │ │ ├── IMediatorReceiver.class
│ │ │ │ ├── IMediatorSender.class
│ │ │ │ ├── Mediator.class
│ │ │ │ └── MediatorPCSupport.class
│ │ │ └── utils
│ │ │ ├── BeanAccess.class
│ │ │ ├── DateUtils.class
│ │ │ ├── MiscUtils.class
│ │ │ ├── StringUtils.class
│ │ │ └── sort
│ │ │ ├── HeapSorter.class
│ │ │ ├── QuickSorter.class
│ │ │ ├── Sorter.class
│ │ │ └── SorterUtil.class
│ │ ├── build.properties
│ │ └── src
│ │ └── rcpdev
│ │ └── common
│ │ └── core
│ │ ├── Activator.java
│ │ ├── mediator
│ │ │ ├── IMediatorReceiver.java
│ │ │ ├── IMediatorSender.java
│ │ │ ├── Mediator.java
│ │ │ └── MediatorPCSupport.java
│ │ └── utils
│ │ ├── BeanAccess.java
│ │ ├── DateUtils.java
│ │ ├── MiscUtils.java
│ │ ├── StringUtils.java
│ │ └── sort
│ │ ├── HeapSorter.java
│ │ ├── QuickSorter.java
│ │ ├── Sorter.java
│ │ └── SorterUtil.java
│ ├── rcpdev.common.ui
│ │ ├── META-INF
│ │ │ └── MANIFEST.MF
│ │ ├── bin
│ │ │ └── rcpdev
│ │ │ └── common
│ │ │ └── ui
│ │ │ ├── Activator.class
│ │ │ ├── databinding
│ │ │ │ ├── AbstractBean.class
│ │ │ │ ├── BindingManager.class
│ │ │ │ ├── ChecksBinding.class
│ │ │ │ ├── ComboBinding.class
│ │ │ │ ├── ComboBinding2.class
│ │ │ │ ├── ControlBinding.class
│ │ │ │ ├── DateTextBinding.class
│ │ │ │ ├── IBinding.class
│ │ │ │ ├── LabelBinding.class
│ │ │ │ ├── RadiosBinding.class
│ │ │ │ ├── TextBinding.class
│ │ │ │ └── demo
│ │ │ │ ├── DemoBean.class
│ │ │ │ ├── DemoShell$1.class
│ │ │ │ └── DemoShell.class
│ │ │ ├── javabeans
│ │ │ │ ├── AbstractComposite.class
│ │ │ │ ├── CalendarComposite$1.class
│ │ │ │ ├── CalendarComposite$2.class
│ │ │ │ ├── CalendarComposite$3.class
│ │ │ │ ├── CalendarComposite$MouseMonitor.class
│ │ │ │ ├── CalendarComposite.class
│ │ │ │ ├── DateTextField$1.class
│ │ │ │ ├── DateTextField$CalendarShell$1.class
│ │ │ │ ├── DateTextField$CalendarShell.class
│ │ │ │ ├── DateTextField$DateTextFieldBinding.class
│ │ │ │ ├── DateTextField.class
│ │ │ │ └── text
│ │ │ │ ├── TextVerifier$DoubleCheck.class
│ │ │ │ ├── TextVerifier$IntCheck.class
│ │ │ │ └── TextVerifier.class
│ │ │ ├── lang
│ │ │ │ ├── Messages.class
│ │ │ │ ├── messages.properties
│ │ │ │ └── messages_zh_CN.properties
│ │ │ └── viewers
│ │ │ └── AbstractContentProvider.class
│ │ ├── build.properties
│ │ ├── plugin.xml
│ │ └── src
│ │ └── rcpdev
│ │ └── common
│ │ └── ui
│ │ ├── Activator.java
│ │ ├── databinding
│ │ │ ├── AbstractBean.java
│ │ │ ├── BindingManager.java
│ │ │ ├── ChecksBinding.java
│ │ │ ├── ComboBinding.java
│ │ │ ├── ComboBinding2.java
│ │ │ ├── ControlBinding.java
│ │ │ ├── DateTextBinding.java
│ │ │ ├── IBinding.java
│ │ │ ├── LabelBinding.java
│ │ │ ├── RadiosBinding.java
│ │ │ ├── TextBinding.java
│ │ │ └── demo
│ │ │ ├── DemoBean.java
│ │ │ └── DemoShell.java
│ │ ├── javabeans
│ │ │ ├── AbstractComposite.java
│ │ │ ├── CalendarComposite.java
│ │ │ ├── DateTextField.java
│ │ │ └── text
│ │ │ └── TextVerifier.java
│ │ ├── lang
│ │ │ ├── Messages.java
│ │ │ ├── messages.properties
│ │ │ └── messages_zh_CN.properties
│ │ └── viewers
│ │ └── AbstractContentProvider.java
│ ├── rcpdev.contact.core
│ │ ├── META-INF
│ │ │ └── MANIFEST.MF
│ │ ├── bin
│ │ │ └── rcpdev
│ │ │ └── contact
│ │ │ └── core
│ │ │ ├── Activator.class
│ │ │ ├── model
│ │ │ │ ├── BizObject.class
│ │ │ │ ├── CommonObject.class
│ │ │ │ ├── contact
│ │ │ │ │ ├── Address.class
│ │ │ │ │ ├── Contact.class
│ │ │ │ │ ├── Email.class
│ │ │ │ │ └── Phone.class
│ │ │ │ └── support
│ │ │ │ └── Category.class
│ │ │ └── persistence
│ │ │ ├── ContactFacadeException.class
│ │ │ ├── ContactFacadeFactory.class
│ │ │ ├── ContactFacadeMock.class
│ │ │ └── IContactFacade.class
│ │ ├── build.properties
│ │ ├── plugin.xml
│ │ └── src
│ │ └── rcpdev
│ │ └── contact
│ │ └── core
│ │ ├── Activator.java
│ │ ├── model
│ │ │ ├── BizObject.java
│ │ │ ├── CommonObject.java
│ │ │ ├── contact
│ │ │ │ ├── Address.java
│ │ │ │ ├── Contact.java
│ │ │ │ ├── Email.java
│ │ │ │ └── Phone.java
│ │ │ └── support
│ │ │ └── Category.java
│ │ └── persistence
│ │ ├── ContactFacadeException.java
│ │ ├── ContactFacadeFactory.java
│ │ ├── ContactFacadeMock.java
│ │ └── IContactFacade.java
│ ├── rcpdev.contact.persistence
│ │ ├── META-INF
│ │ │ └── MANIFEST.MF
│ │ ├── bin
│ │ │ ├── com
│ │ │ │ └── swtdesigner
│ │ │ │ ├── ResourceManager.class
│ │ │ │ ├── SWTResourceManager$1.class
│ │ │ │ └── SWTResourceManager.class
│ │ │ └── rcpdev
│ │ │ └── contact
│ │ │ └── persistence
│ │ │ ├── Activator.class
│ │ │ ├── TopLinkContactFacade.class
│ │ │ ├── core
│ │ │ │ ├── TopLinkContactFacadeException.class
│ │ │ │ ├── project
│ │ │ │ │ └── ContactProject.class
│ │ │ │ └── session
│ │ │ │ └── TopLinkSessionProvider.class
│ │ │ └── preferences
│ │ │ ├── MySQLPreferencePage.class
│ │ │ ├── PreferenceConstants.class
│ │ │ └── PreferenceInitializer.class
│ │ ├── build.properties
│ │ ├── plugin.xml
│ │ └── src
│ │ ├── com
│ │ │ └── swtdesigner
│ │ │ ├── ResourceManager.java
│ │ │ └── SWTResourceManager.java
│ │ └── rcpdev
│ │ └── contact
│ │ └── persistence
│ │ ├── Activator.java
│ │ ├── TopLinkContactFacade.java
│ │ ├── core
│ │ │ ├── TopLinkContactFacadeException.java
│ │ │ ├── project
│ │ │ │ └── ContactProject.java
│ │ │ └── session
│ │ │ └── TopLinkSessionProvider.java
│ │ └── preferences
│ │ ├── MySQLPreferencePage.java
│ │ ├── PreferenceConstants.java
│ │ └── PreferenceInitializer.java
│ ├── rcpdev.contact.ui
│ │ ├── META-INF
│ │ │ └── MANIFEST.MF
│ │ ├── bin
│ │ │ ├── com
│ │ │ │ └── swtdesigner
│ │ │ │ ├── ResourceManager.class
│ │ │ │ ├── SWTResourceManager$1.class
│ │ │ │ └── SWTResourceManager.class
│ │ │ └── rcpdev
│ │ │ └── contact
│ │ │ └── ui
│ │ │ ├── Activator.class
│ │ │ ├── actions
│ │ │ │ ├── contact
│ │ │ │ │ ├── ContactAction.class
│ │ │ │ │ ├── CreateContactAction.class
│ │ │ │ │ ├── CreateContactEditorAction.class
│ │ │ │ │ ├── DeleteContactAction.class
│ │ │ │ │ └── EditContactAction.class
│ │ │ │ └── lang
│ │ │ │ ├── Messages.class
│ │ │ │ ├── messages.properties
│ │ │ │ └── messages_zh_CN.properties
│ │ │ ├── common
│ │ │ │ ├── AddressComposite.class
│ │ │ │ ├── CalendarDialog$1.class
│ │ │ │ ├── CalendarDialog$2.class
│ │ │ │ ├── CalendarDialog$ModifyAdapter.class
│ │ │ │ ├── CalendarDialog$MouseAdapter.class
│ │ │ │ ├── CalendarDialog.class
│ │ │ │ ├── DropdownLabel$1.class
│ │ │ │ ├── DropdownLabel$2.class
│ │ │ │ ├── DropdownLabel.class
│ │ │ │ ├── DropdownLink$1.class
│ │ │ │ ├── DropdownLink$2.class
│ │ │ │ ├── DropdownLink.class
│ │ │ │ ├── IUserObjectProvider.class
│ │ │ │ ├── ModelComposite.class
│ │ │ │ ├── lang
│ │ │ │ │ ├── Messages.class
│ │ │ │ │ ├── messages.properties
│ │ │ │ │ └── messages_zh_CN.properties
│ │ │ │ ├── mp
│ │ │ │ │ ├── IDetailsPart.class
│ │ │ │ │ ├── IMasterPart.class
│ │ │ │ │ ├── MultiPageBlock$BlockBinding.class
│ │ │ │ │ ├── MultiPageBlock.class
│ │ │ │ │ ├── MultiPageComposite$MPCoBinding.class
│ │ │ │ │ ├── MultiPageComposite.class
│ │ │ │ │ └── MultiPageControl.class
│ │ │ │ └── provider
│ │ │ │ └── AbstractContentProvider.class
│ │ │ ├── editors
│ │ │ │ ├── contact
│ │ │ │ │ ├── ContactEditor$1.class
│ │ │ │ │ ├── ContactEditor$2.class
│ │ │ │ │ ├── ContactEditor.class
│ │ │ │ │ ├── ContactEditorActionBarContributor.class
│ │ │ │ │ ├── ContactEditorInput.class
│ │ │ │ │ ├── DetailComposite.class
│ │ │ │ │ ├── GeneralInfoComposite$1.class
│ │ │ │ │ ├── GeneralInfoComposite$2.class
│ │ │ │ │ ├── GeneralInfoComposite$3.class
│ │ │ │ │ ├── GeneralInfoComposite.class
│ │ │ │ │ └── category
│ │ │ │ │ ├── CategoryBean$CategoryItem.class
│ │ │ │ │ ├── CategoryBean.class
│ │ │ │ │ ├── CategoryComposite$1.class
│ │ │ │ │ ├── CategoryComposite.class
│ │ │ │ │ ├── CategoryContentProvider.class
│ │ │ │ │ ├── CategoryDialog.class
│ │ │ │ │ └── CategoryTableLabelProvider.class
│ │ │ │ └── lang
│ │ │ │ ├── Messages.class
│ │ │ │ └── messages.properties
│ │ │ ├── jobs
│ │ │ │ ├── ContactJob.class
│ │ │ │ ├── DeleteContactJob.class
│ │ │ │ ├── EditContactJob.class
│ │ │ │ ├── LoadContactJob$1.class
│ │ │ │ ├── LoadContactJob.class
│ │ │ │ ├── LoadPreferenceJob.class
│ │ │ │ ├── SaveCategoryJob.class
│ │ │ │ ├── SaveContactJob.class
│ │ │ │ ├── SearchContactJob$1.class
│ │ │ │ ├── SearchContactJob.class
│ │ │ │ └── StorageRule.class
│ │ │ ├── preferences
│ │ │ │ ├── CategoryBean.class
│ │ │ │ ├── CategoryContentProvider.class
│ │ │ │ ├── CategoryLabelProvider.class
│ │ │ │ ├── CategoryPreferencePage$1.class
│ │ │ │ ├── CategoryPreferencePage$2.class
│ │ │ │ ├── CategoryPreferencePage$3.class
│ │ │ │ ├── CategoryPreferencePage.class
│ │ │ │ ├── ContactPreferencePage.class
│ │ │ │ ├── InputBean.class
│ │ │ │ └── InputDialog.class
│ │ │ └── views
│ │ │ ├── common
│ │ │ │ ├── ContactComparator.class
│ │ │ │ ├── ContactComparator2.class
│ │ │ │ ├── ContactLabelProvider.class
│ │ │ │ └── SelectionMonitor.class
│ │ │ ├── contact
│ │ │ │ ├── ContactView$1.class
│ │ │ │ ├── ContactView$2.class
│ │ │ │ ├── ContactView$3.class
│ │ │ │ ├── ContactView.class
│ │ │ │ ├── ContactViewBean.class
│ │ │ │ └── provider
│ │ │ │ └── ContactContentProvider.class
│ │ │ ├── lang
│ │ │ │ ├── Messages.class
│ │ │ │ └── messages.properties
│ │ │ └── search
│ │ │ ├── SearchBean.class
│ │ │ ├── SearchComposite.class
│ │ │ ├── SearchContactView$1.class
│ │ │ ├── SearchContactView$2.class
│ │ │ ├── SearchContactView.class
│ │ │ ├── SearchResultBean.class
│ │ │ └── provider
│ │ │ └── SearchContactContentProvider.class
│ │ ├── build.properties
│ │ ├── html
│ │ │ ├── intro
│ │ │ │ ├── all_view.html
│ │ │ │ ├── intro.html
│ │ │ │ ├── main_interface.html
│ │ │ │ └── todo_view.html
│ │ │ ├── main.html
│ │ │ ├── maintopic.html
│ │ │ ├── subtopic.html
│ │ │ ├── task
│ │ │ │ ├── create.html
│ │ │ │ ├── intro.html
│ │ │ │ ├── search_update.html
│ │ │ │ └── todolist.html
│ │ │ └── toc.html
│ │ ├── icons
│ │ │ ├── Thumbs.db
│ │ │ ├── contact_delete_item.gif
│ │ │ ├── contact_edit_item.gif
│ │ │ ├── contact_editor.gif
│ │ │ ├── contact_new_item.gif
│ │ │ ├── contact_view.gif
│ │ │ ├── find_view.gif
│ │ │ ├── main_perspective.gif
│ │ │ ├── new.gif
│ │ │ ├── refresh.gif
│ │ │ └── sample.gif
│ │ ├── intro.xml
│ │ ├── main.xml
│ │ ├── plugin.xml
│ │ ├── src
│ │ │ ├── com
│ │ │ │ └── swtdesigner
│ │ │ │ ├── ResourceManager.java
│ │ │ │ └── SWTResourceManager.java
│ │ │ └── rcpdev
│ │ │ └── contact
│ │ │ └── ui
│ │ │ ├── Activator.java
│ │ │ ├── actions
│ │ │ │ ├── contact
│ │ │ │ │ ├── ContactAction.java
│ │ │ │ │ ├── CreateContactAction.java
│ │ │ │ │ ├── CreateContactEditorAction.java
│ │ │ │ │ ├── DeleteContactAction.java
│ │ │ │ │ └── EditContactAction.java
│ │ │ │ └── lang
│ │ │ │ ├── Messages.java
│ │ │ │ ├── messages.properties
│ │ │ │ └── messages_zh_CN.properties
│ │ │ ├── common
│ │ │ │ ├── AddressComposite.java
│ │ │ │ ├── CalendarDialog.java
│ │ │ │ ├── DropdownLabel.java
│ │ │ │ ├── DropdownLink.java
│ │ │ │ ├── IUserObjectProvider.java
│ │ │ │ ├── ModelComposite.java
│ │ │ │ ├── lang
│ │ │ │ │ ├── Messages.java
│ │ │ │ │ ├── messages.properties
│ │ │ │ │ └── messages_zh_CN.properties
│ │ │ │ ├── mp
│ │ │ │ │ ├── IDetailsPart.java
│ │ │ │ │ ├── IMasterPart.java
│ │ │ │ │ ├── MultiPageBlock.java
│ │ │ │ │ ├── MultiPageComposite.java
│ │ │ │ │ └── MultiPageControl.java
│ │ │ │ └── provider
│ │ │ │ └── AbstractContentProvider.java
│ │ │ ├── editors
│ │ │ │ ├── contact
│ │ │ │ │ ├── ContactEditor.java
│ │ │ │ │ ├── ContactEditorActionBarContributor.java
│ │ │ │ │ ├── ContactEditorInput.java
│ │ │ │ │ ├── DetailComposite.java
│ │ │ │ │ ├── GeneralInfoComposite.java
│ │ │ │ │ └── category
│ │ │ │ │ ├── CategoryBean.java
│ │ │ │ │ ├── CategoryComposite.java
│ │ │ │ │ ├── CategoryContentProvider.java
│ │ │ │ │ ├── CategoryDialog.java
│ │ │ │ │ └── CategoryTableLabelProvider.java
│ │ │ │ └── lang
│ │ │ │ ├── Messages.java
│ │ │ │ └── messages.properties
│ │ │ ├── jobs
│ │ │ │ ├── ContactJob.java
│ │ │ │ ├── DeleteContactJob.java
│ │ │ │ ├── EditContactJob.java
│ │ │ │ ├── LoadContactJob.java
│ │ │ │ ├── LoadPreferenceJob.java
│ │ │ │ ├── SaveCategoryJob.java
│ │ │ │ ├── SaveContactJob.java
│ │ │ │ ├── SearchContactJob.java
│ │ │ │ └── StorageRule.java
│ │ │ ├── preferences
│ │ │ │ ├── CategoryBean.java
│ │ │ │ ├── CategoryContentProvider.java
│ │ │ │ ├── CategoryLabelProvider.java
│ │ │ │ ├── CategoryPreferencePage.java
│ │ │ │ ├── ContactPreferencePage.java
│ │ │ │ ├── InputBean.java
│ │ │ │ └── InputDialog.java
│ │ │ └── views
│ │ │ ├── common
│ │ │ │ ├── ContactComparator.java
│ │ │ │ ├── ContactComparator2.java
│ │ │ │ ├── ContactLabelProvider.java
│ │ │ │ └── SelectionMonitor.java
│ │ │ ├── contact
│ │ │ │ ├── ContactView.java
│ │ │ │ ├── ContactViewBean.java
│ │ │ │ └── provider
│ │ │ │ └── ContactContentProvider.java
│ │ │ ├── lang
│ │ │ │ ├── Messages.java
│ │ │ │ └── messages.properties
│ │ │ └── search
│ │ │ ├── SearchBean.java
│ │ │ ├── SearchComposite.java
│ │ │ ├── SearchContactView.java
│ │ │ ├── SearchResultBean.java
│ │ │ └── provider
│ │ │ └── SearchContactContentProvider.java
│ │ └── task.xml
│ ├── rcpdev.thirdparty
│ │ ├── META-INF
│ │ │ └── MANIFEST.MF
│ │ ├── bin
│ │ │ └── rcpdev
│ │ │ └── thirdparty
│ │ │ └── Activator.class
│ │ ├── build.properties
│ │ ├── commons-jxpath-1.2.jar
│ │ ├── mysql-connector-java-3.0.15-ga-bin.jar
│ │ ├── src
│ │ │ └── rcpdev
│ │ │ └── thirdparty
│ │ │ └── Activator.java
│ │ └── toplink.jar
│ ├── rcpdev.todo.core
│ │ ├── META-INF
│ │ │ └── MANIFEST.MF
│ │ ├── bin
│ │ │ └── rcpdev
│ │ │ └── todo
│ │ │ └── core
│ │ │ ├── Activator.class
│ │ │ ├── model
│ │ │ │ ├── TodoItem.class
│ │ │ │ └── series
│ │ │ │ ├── SeriesInfo.class
│ │ │ │ ├── TodoSeries.class
│ │ │ │ └── info
│ │ │ │ ├── DayInfo.class
│ │ │ │ ├── MonthInfo.class
│ │ │ │ ├── WeekInfo.class
│ │ │ │ └── YearInfo.class
│ │ │ └── storage
│ │ │ ├── ITodoFacade.class
│ │ │ ├── TodoFacadeException.class
│ │ │ ├── TodoFacadeFactory.class
│ │ │ └── TodoFacadeMock.class
│ │ ├── build.properties
│ │ ├── plugin.xml
│ │ ├── schema
│ │ │ └── facade.exsd
│ │ └── src
│ │ └── rcpdev
│ │ └── todo
│ │ └── core
│ │ ├── Activator.java
│ │ ├── model
│ │ │ ├── TodoItem.java
│ │ │ └── series
│ │ │ ├── SeriesInfo.java
│ │ │ ├── TodoSeries.java
│ │ │ └── info
│ │ │ ├── DayInfo.java
│ │ │ ├── MonthInfo.java
│ │ │ ├── WeekInfo.java
│ │ │ └── YearInfo.java
│ │ └── storage
│ │ ├── ITodoFacade.java
│ │ ├── TodoFacadeException.java
│ │ ├── TodoFacadeFactory.java
│ │ └── TodoFacadeMock.java
│ ├── rcpdev.todo.persistence
│ │ ├── META-INF
│ │ │ └── MANIFEST.MF
│ │ ├── bin
│ │ │ ├── com
│ │ │ │ └── swtdesigner
│ │ │ │ ├── ResourceManager.class
│ │ │ │ ├── SWTResourceManager$1.class
│ │ │ │ └── SWTResourceManager.class
│ │ │ └── rcpdev
│ │ │ └── todo
│ │ │ └── persistence
│ │ │ ├── Activator.class
│ │ │ ├── TopLinkTodoFacade.class
│ │ │ ├── core
│ │ │ │ ├── TopLinkTodoFacadeException.class
│ │ │ │ ├── project
│ │ │ │ │ ├── AfterLoad.class
│ │ │ │ │ ├── TodoProject.class
│ │ │ │ │ └── WeekDataConverter.class
│ │ │ │ └── session
│ │ │ │ └── TopLinkSessionProvider.class
│ │ │ ├── lang
│ │ │ │ ├── Messages.class
│ │ │ │ ├── messages.properties
│ │ │ │ └── messages_zh_CN.properties
│ │ │ └── preferences
│ │ │ ├── MySQLPreferencePage.class
│ │ │ ├── PreferenceConstants.class
│ │ │ ├── PreferenceInitializer.class
│ │ │ └── TodoPreferencePage.class
│ │ ├── build.properties
│ │ ├── images
│ │ │ └── logo.JPG
│ │ ├── plugin.xml
│ │ └── src
│ │ ├── com
│ │ │ └── swtdesigner
│ │ │ ├── ResourceManager.java
│ │ │ └── SWTResourceManager.java
│ │ └── rcpdev
│ │ └── todo
│ │ └── persistence
│ │ ├── Activator.java
│ │ ├── TopLinkTodoFacade.java
│ │ ├── core
│ │ │ ├── TopLinkTodoFacadeException.java
│ │ │ ├── project
│ │ │ │ ├── AfterLoad.java
│ │ │ │ ├── TodoProject.java
│ │ │ │ └── WeekDataConverter.java
│ │ │ └── session
│ │ │ └── TopLinkSessionProvider.java
│ │ ├── lang
│ │ │ ├── Messages.java
│ │ │ ├── messages.properties
│ │ │ └── messages_zh_CN.properties
│ │ └── preferences
│ │ ├── MySQLPreferencePage.java
│ │ ├── PreferenceConstants.java
│ │ ├── PreferenceInitializer.java
│ │ └── TodoPreferencePage.java
│ ├── rcpdev.todo.ui
│ │ ├── META-INF
│ │ │ └── MANIFEST.MF
│ │ ├── bin
│ │ │ ├── com
│ │ │ │ └── swtdesigner
│ │ │ │ ├── ResourceManager.class
│ │ │ │ ├── SWTResourceManager$1.class
│ │ │ │ └── SWTResourceManager.class
│ │ │ └── rcpdev
│ │ │ └── todo
│ │ │ └── ui
│ │ │ ├── Activator.class
│ │ │ ├── calendar
│ │ │ │ └── CalendarView.class
│ │ │ ├── lang
│ │ │ │ ├── Messages.class
│ │ │ │ ├── messages.properties
│ │ │ │ └── messages_zh_CN.properties
│ │ │ └── todolist
│ │ │ ├── actions
│ │ │ │ └── CreateTodoEditorAction.class
│ │ │ ├── common
│ │ │ │ └── beans
│ │ │ │ └── todoitem
│ │ │ │ ├── StackBinding.class
│ │ │ │ ├── TestShell$1.class
│ │ │ │ ├── TestShell$2.class
│ │ │ │ ├── TestShell.class
│ │ │ │ ├── TodoItemBasicInfoComposite.class
│ │ │ │ ├── TodoItemBean.class
│ │ │ │ ├── TodoItemSeriesInfoComposite$1.class
│ │ │ │ ├── TodoItemSeriesInfoComposite$2.class
│ │ │ │ ├── TodoItemSeriesInfoComposite$3.class
│ │ │ │ └── TodoItemSeriesInfoComposite.class
│ │ │ ├── editors
│ │ │ │ ├── TodoItemEditor.class
│ │ │ │ ├── TodoItemEditorInput.class
│ │ │ │ └── jobs
│ │ │ │ └── SaveTodoItemJob.class
│ │ │ ├── provider
│ │ │ │ ├── TodoListContentProvider.class
│ │ │ │ └── TodoListLabelProvider.class
│ │ │ ├── utils
│ │ │ │ └── TimeConverter.class
│ │ │ ├── views
│ │ │ │ ├── TodoListBean.class
│ │ │ │ ├── TodoListView$1.class
│ │ │ │ ├── TodoListView$2.class
│ │ │ │ ├── TodoListView$3.class
│ │ │ │ ├── TodoListView$4.class
│ │ │ │ ├── TodoListView$5.class
│ │ │ │ ├── TodoListView$EditItemAction.class
│ │ │ │ ├── TodoListView.class
│ │ │ │ ├── actions
│ │ │ │ │ ├── DeleteItemAction.class
│ │ │ │ │ ├── ItemOperationAction.class
│ │ │ │ │ ├── Main.class
│ │ │ │ │ ├── NewItemAction.class
│ │ │ │ │ └── SelectItemMessageBox.class
│ │ │ │ └── jobs
│ │ │ │ ├── CreateTodoItemJob.class
│ │ │ │ ├── DeleteTodoItemJob.class
│ │ │ │ ├── EditTodoItemJob.class
│ │ │ │ ├── ItemOperationJob$RunDialogAction.class
│ │ │ │ ├── ItemOperationJob.class
│ │ │ │ ├── LoadTodoItemJob$1.class
│ │ │ │ ├── LoadTodoItemJob.class
│ │ │ │ ├── MarkCurrentItemJob.class
│ │ │ │ ├── SelectEditTypeDialog$1.class
│ │ │ │ ├── SelectEditTypeDialog$2.class
│ │ │ │ ├── SelectEditTypeDialog.class
│ │ │ │ ├── SelectModifyTypeDialog$1.class
│ │ │ │ ├── SelectModifyTypeDialog$2.class
│ │ │ │ └── SelectModifyTypeDialog.class
│ │ │ └── wizards
│ │ │ ├── NewItemWizard.class
│ │ │ ├── NewItemWizardPage1.class
│ │ │ ├── NewItemWizardPage2.class
│ │ │ └── WizardTestShell.class
│ │ ├── build.properties
│ │ ├── icons
│ │ │ ├── calendar_view.GIF
│ │ │ ├── todo_delete_item.gif
│ │ │ ├── todo_edit_item.gif
│ │ │ ├── todo_editor.gif
│ │ │ ├── todo_new_item.gif
│ │ │ └── todo_view.gif
│ │ ├── plugin.xml
│ │ └── src
│ │ ├── com
│ │ │ └── swtdesigner
│ │ │ ├── ResourceManager.java
│ │ │ └── SWTResourceManager.java
│ │ └── rcpdev
│ │ └── todo
│ │ └── ui
│ │ ├── Activator.java
│ │ ├── calendar
│ │ │ └── CalendarView.java
│ │ ├── lang
│ │ │ ├── Messages.java
│ │ │ ├── messages.properties
│ │ │ └── messages_zh_CN.properties
│ │ └── todolist
│ │ ├── actions
│ │ │ └── CreateTodoEditorAction.java
│ │ ├── common
│ │ │ └── beans
│ │ │ └── todoitem
│ │ │ ├── StackBinding.java
│ │ │ ├── TestShell.java
│ │ │ ├── TodoItemBasicInfoComposite.java
│ │ │ ├── TodoItemBean.java
│ │ │ └── TodoItemSeriesInfoComposite.java
│ │ ├── editors
│ │ │ ├── TodoItemEditor.java
│ │ │ ├── TodoItemEditorInput.java
│ │ │ └── jobs
│ │ │ └── SaveTodoItemJob.java
│ │ ├── provider
│ │ │ ├── TodoListContentProvider.java
│ │ │ └── TodoListLabelProvider.java
│ │ ├── utils
│ │ │ └── TimeConverter.java
│ │ ├── views
│ │ │ ├── TodoListBean.java
│ │ │ ├── TodoListView.java
│ │ │ ├── actions
│ │ │ │ ├── DeleteItemAction.java
│ │ │ │ ├── ItemOperationAction.java
│ │ │ │ ├── Main.java
│ │ │ │ ├── NewItemAction.java
│ │ │ │ └── SelectItemMessageBox.java
│ │ │ └── jobs
│ │ │ ├── CreateTodoItemJob.java
│ │ │ ├── DeleteTodoItemJob.java
│ │ │ ├── EditTodoItemJob.java
│ │ │ ├── ItemOperationJob.java
│ │ │ ├── LoadTodoItemJob.java
│ │ │ ├── MarkCurrentItemJob.java
│ │ │ ├── SelectEditTypeDialog.java
│ │ │ └── SelectModifyTypeDialog.java
│ │ └── wizards
│ │ ├── NewItemWizard.java
│ │ ├── NewItemWizardPage1.java
│ │ ├── NewItemWizardPage2.java
│ │ └── WizardTestShell.java
│ └── todo.sql
├── chapter24
│ ├── GefExample
│ │ ├── bin
│ │ │ └── com
│ │ │ └── example
│ │ │ ├── GefExamplePlugin.class
│ │ │ ├── actions
│ │ │ │ └── DiagramActionBarContributor.class
│ │ │ ├── commands
│ │ │ │ ├── ChangeNodeConstraintCommand.class
│ │ │ │ ├── CreateConnectionCommand.class
│ │ │ │ ├── CreateNodeCommand.class
│ │ │ │ ├── CreateStepCommand.class
│ │ │ │ ├── CreateSubTransNodeCommand.class
│ │ │ │ ├── DeleteConnectionCommand.class
│ │ │ │ ├── DeleteNodeCommand.class
│ │ │ │ ├── DeleteStepCommand.class
│ │ │ │ └── MoveNodeCommand.class
│ │ │ ├── dnd
│ │ │ │ └── DiagramTemplateTransferDropTargetListener.class
│ │ │ ├── figures
│ │ │ │ ├── BorderAnchor.class
│ │ │ │ ├── MappingConnection.class
│ │ │ │ ├── StepFigure.class
│ │ │ │ ├── SubTransContainerBorder.class
│ │ │ │ ├── SubTransContainerFigure.class
│ │ │ │ ├── SubTransModelFigure.class
│ │ │ │ ├── TreeItemFigure$1.class
│ │ │ │ └── TreeItemFigure.class
│ │ │ ├── image
│ │ │ │ ├── IconFactory.class
│ │ │ │ ├── ImageConstants.class
│ │ │ │ ├── add.gif
│ │ │ │ ├── column.gif
│ │ │ │ ├── dbinput.gif
│ │ │ │ ├── logo.gif
│ │ │ │ ├── mini.gif
│ │ │ │ ├── minus.gif
│ │ │ │ ├── root.gif
│ │ │ │ ├── subtransmodel.gif
│ │ │ │ └── table.gif
│ │ │ ├── model
│ │ │ │ ├── FConnection.class
│ │ │ │ ├── FElement.class
│ │ │ │ ├── FNode.class
│ │ │ │ ├── FStepModel.class
│ │ │ │ ├── FSubTransModel.class
│ │ │ │ ├── FTransModel.class
│ │ │ │ └── TreeItemModel.class
│ │ │ ├── parts
│ │ │ │ ├── AbstractPart.class
│ │ │ │ ├── ConnectionPart.class
│ │ │ │ ├── PartFactory.class
│ │ │ │ ├── StepPart.class
│ │ │ │ ├── SubTransModelPart.class
│ │ │ │ ├── TransModelPart.class
│ │ │ │ └── TreeItemPart.class
│ │ │ ├── policies
│ │ │ │ ├── ConnectionEditPolicy.class
│ │ │ │ ├── NodeDirectEditPolicy.class
│ │ │ │ ├── NodeEditPolicy.class
│ │ │ │ ├── NodeGraphicalNodeEditPolicy.class
│ │ │ │ ├── StepEditPolicy.class
│ │ │ │ ├── SubTransLayoutEditPolicy.class
│ │ │ │ └── TranModelLayoutEditPolicy.class
│ │ │ ├── tools
│ │ │ │ ├── ElementFactory.class
│ │ │ │ ├── PaletteFactory.class
│ │ │ │ ├── STextPropertyDescriptor.class
│ │ │ │ └── StepFactory.class
│ │ │ └── ui
│ │ │ ├── BackgroundLayer.class
│ │ │ ├── MyRootEditPart.class
│ │ │ ├── PracticeEditor$1.class
│ │ │ ├── PracticeEditor$2.class
│ │ │ ├── PracticeEditor.class
│ │ │ └── ShowMessage.class
│ │ ├── build.properties
│ │ ├── logo.gif
│ │ ├── plugin.xml
│ │ └── src
│ │ └── com
│ │ └── example
│ │ ├── GefExamplePlugin.java
│ │ ├── actions
│ │ │ └── DiagramActionBarContributor.java
│ │ ├── commands
│ │ │ ├── ChangeNodeConstraintCommand.java
│ │ │ ├── CreateConnectionCommand.java
│ │ │ ├── CreateNodeCommand.java
│ │ │ ├── CreateStepCommand.java
│ │ │ ├── CreateSubTransNodeCommand.java
│ │ │ ├── DeleteConnectionCommand.java
│ │ │ ├── DeleteNodeCommand.java
│ │ │ ├── DeleteStepCommand.java
│ │ │ └── MoveNodeCommand.java
│ │ ├── dnd
│ │ │ └── DiagramTemplateTransferDropTargetListener.java
│ │ ├── figures
│ │ │ ├── BorderAnchor.java
│ │ │ ├── MappingConnection.java
│ │ │ ├── StepFigure.java
│ │ │ ├── SubTransContainerBorder.java
│ │ │ ├── SubTransContainerFigure.java
│ │ │ ├── SubTransModelFigure.java
│ │ │ └── TreeItemFigure.java
│ │ ├── image
│ │ │ ├── IconFactory.java
│ │ │ ├── ImageConstants.java
│ │ │ ├── add.gif
│ │ │ ├── column.gif
│ │ │ ├── dbinput.gif
│ │ │ ├── logo.gif
│ │ │ ├── mini.gif
│ │ │ ├── minus.gif
│ │ │ ├── root.gif
│ │ │ ├── subtransmodel.gif
│ │ │ └── table.gif
│ │ ├── model
│ │ │ ├── FConnection.java
│ │ │ ├── FElement.java
│ │ │ ├── FNode.java
│ │ │ ├── FStepModel.java
│ │ │ ├── FSubTransModel.java
│ │ │ ├── FTransModel.java
│ │ │ └── TreeItemModel.java
│ │ ├── parts
│ │ │ ├── AbstractPart.java
│ │ │ ├── ConnectionPart.java
│ │ │ ├── PartFactory.java
│ │ │ ├── StepPart.java
│ │ │ ├── SubTransModelPart.java
│ │ │ ├── TransModelPart.java
│ │ │ └── TreeItemPart.java
│ │ ├── policies
│ │ │ ├── ConnectionEditPolicy.java
│ │ │ ├── NodeDirectEditPolicy.java
│ │ │ ├── NodeEditPolicy.java
│ │ │ ├── NodeGraphicalNodeEditPolicy.java
│ │ │ ├── StepEditPolicy.java
│ │ │ ├── SubTransLayoutEditPolicy.java
│ │ │ └── TranModelLayoutEditPolicy.java
│ │ ├── tools
│ │ │ ├── ElementFactory.java
│ │ │ ├── PaletteFactory.java
│ │ │ ├── STextPropertyDescriptor.java
│ │ │ └── StepFactory.java
│ │ └── ui
│ │ ├── BackgroundLayer.java
│ │ ├── MyRootEditPart.java
│ │ ├── PracticeEditor.java
│ │ └── ShowMessage.java
│ └── 第24章程序说明.doc
├── readme.txt
└── 读者交流区B.doc
818 directories, 2957 files
标签:
相关软件
小贴士
感谢您为本站写下的评论,您的评论对其它用户来说具有重要的参考价值,所以请认真填写。
- 类似“顶”、“沙发”之类没有营养的文字,对勤劳贡献的楼主来说是令人沮丧的反馈信息。
- 相信您也不想看到一排文字/表情墙,所以请不要反馈意义不大的重复字符,也请尽量不要纯表情的回复。
- 提问之前请再仔细看一遍楼主的说明,或许是您遗漏了。
- 请勿到处挖坑绊人、招贴广告。既占空间让人厌烦,又没人会搭理,于人于己都无利。
关于好例子网
本站旨在为广大IT学习爱好者提供一个非营利性互相学习交流分享平台。本站所有资源都可以被免费获取学习研究。本站资源来自网友分享,对搜索内容的合法性不具有预见性、识别性、控制性,仅供学习研究,请务必在下载后24小时内给予删除,不得用于其他任何用途,否则后果自负。基于互联网的特殊性,平台无法对用户传输的作品、信息、内容的权属或合法性、安全性、合规性、真实性、科学性、完整权、有效性等进行实质审查;无论平台是否已进行审查,用户均应自行承担因其传输的作品、信息、内容而可能或已经产生的侵权或权属纠纷等法律责任。本站所有资源不代表本站的观点或立场,基于网友分享,根据中国法律《信息网络传播权保护条例》第二十二与二十三条之规定,若资源存在侵权或相关问题请联系本站客服人员,点此联系我们。关于更多版权及免责申明参见 版权及免责申明
网友评论
我要评论