Skip to main content

Notice: this Wiki will be going read only early in 2024 and edits will no longer be possible. Please see: https://gitlab.eclipse.org/eclipsefdn/helpdesk/-/wikis/Wiki-shutdown-plan for the plan.

Jump to: navigation, search

Difference between revisions of "JFaceSnippets"

(Snippet074 Wizard with access to application window)
(111 intermediate revisions by 10 users not shown)
Line 1: Line 1:
JFace-Snippets are small easy understandable programming example how to use JFace API.
+
JFace-Snippets are small and easy understandable programming examples how to use the JFace API. To browse the examples, navigate to the [http://git.eclipse.org/c/platform/eclipse.platform.ui.git/tree/examples/org.eclipse.jface.snippets examples GIT repository].  
  
To browse examples, navigate to [http://git.eclipse.org/c/platform/eclipse.platform.ui.git/tree/examples/org.eclipse.jface.snippets examples GIT repository]. (Historically examples were stored in [http://dev.eclipse.org/viewcvs/index.cgi/org.eclipse.jface.snippets/ CVS repository].)
+
;Copy Paste
 +
:The header section of each snippet is a link to the plain source. You can copy the source and paste it directly on the source folder or package in an eclipse project. The package and the class will be created automatically. <br> * [[JfaceSnippets/Instructions#Copy Paste|Click here for a visual explanation]].  
 +
 
 +
 
 +
__TOC__
  
 
== Dialogs ==
 
== Dialogs ==
  
=== [http://git.eclipse.org/c/platform/eclipse.platform.ui.git/tree/examples/org.eclipse.jface.snippets/Eclipse%20JFace%20Snippets/org/eclipse/jface/snippets/dialogs/Snippet012DialogWithImageButtons.java Snippet012DialogWithImageButtons] ===
+
=== [http://git.eclipse.org/c/platform/eclipse.platform.ui.git/plain/examples/org.eclipse.jface.snippets/Eclipse%20JFace%20Snippets/org/eclipse/jface/snippets/dialogs/Snippet012DialogWithImageButtons.java Snippet012 - Dialog with Image Buttons] ===
  
Demonstrates usage of Icons in Buttons of Dialogs  
+
Demonstrates usage of Icons in Buttons of Dialogs
 +
 
 +
[[Image:Snippet012DialogWithImageButtons.png]]
 +
 
 +
Drop these icons also in the same package
 +
 
 +
[[Image:filesave.png]] [[Image:cancel.png]]
  
 
== Layout  ==
 
== Layout  ==
  
=== [http://git.eclipse.org/c/platform/eclipse.platform.ui.git/tree/examples/org.eclipse.jface.snippets/Eclipse%20JFace%20Snippets/org/eclipse/jface/snippets/layout/Snippet013GridLayoutFactory.java Snippet013GridLayoutFactory]  ===
+
=== [http://git.eclipse.org/c/platform/eclipse.platform.ui.git/plain/examples/org.eclipse.jface.snippets/Eclipse%20JFace%20Snippets/org/eclipse/jface/snippets/layout/Snippet013GridLayoutFactory.java Snippet013 Grid Layout Factory]  ===
 +
 
 +
Demonstrates usage of the GridLayoutFactory to enhance readability
 +
 
 +
[[Image:Snippet013_Shell1.png]]
 +
[[Image:Snippet013_Shell2.png]]
 +
[[Image:Snippet013_Shell3.png]]
 +
 
 +
=== [http://git.eclipse.org/c/platform/eclipse.platform.ui.git/plain/examples/org.eclipse.jface.snippets/Eclipse%20JFace%20Snippets/org/eclipse/jface/snippets/layout/Snippet016TableLayout.java Snippet016 - Table Layout]  ===
  
Demonstrates usage of the GridLayoutFactory to make more readable
+
Demonstrates (dynamic)layout support for TableColumns available as of JFace 3.3
  
=== [http://git.eclipse.org/c/platform/eclipse.platform.ui.git/tree/examples/org.eclipse.jface.snippets/Eclipse%20JFace%20Snippets/org/eclipse/jface/snippets/layout/Snippet016TableLayout.java Snippet016TableLayout] ===
+
[[Image:Snippet016.png]]
  
Demonstrates (dynamic)layout support for TableColumns available as of JFace 3.3
+
=== [http://git.eclipse.org/c/platform/eclipse.platform.ui.git/plain/examples/org.eclipse.jface.snippets/Eclipse%20JFace%20Snippets/org/eclipse/jface/snippets/layout/Snippet027TreeLayout.java Snippet027 - Tree Layout]  ===
  
=== [http://git.eclipse.org/c/platform/eclipse.platform.ui.git/tree/examples/org.eclipse.jface.snippets/Eclipse%20JFace%20Snippets/org/eclipse/jface/snippets/layout/Snippet027TreeLayout.java Snippet027TreeLayout]  ===
+
Demonstrates (dynamic)layout support for TreeColumns available as of JFace 3.3
  
Demonstrates (dynamic)layout support for TreeColumns available as of JFace 3.3
+
[[Image:Snippet027.png]]
  
 
== Viewers  ==
 
== Viewers  ==
  
=== [http://git.eclipse.org/c/platform/eclipse.platform.ui.git/tree/examples/org.eclipse.jface.snippets/Eclipse%20JFace%20Snippets/org/eclipse/jface/snippets/viewers/Snippet001TableViewer.java Snippet001TableViewer]  ===
+
=== [http://git.eclipse.org/c/platform/eclipse.platform.ui.git/plain/examples/org.eclipse.jface.snippets/Eclipse%20JFace%20Snippets/org/eclipse/jface/snippets/viewers/Snippet001TableViewer.java Snippet001 - Table Viewer]  ===
  
 
Demonstrates a simply TableViewer with one column. It holds all important classes used for all Table-like JFace-Viewers (''[http://help.eclipse.org/help32/index.jsp?topic=/org.eclipse.platform.doc.isv/reference/api/org/eclipse/jface/viewers/LabelProvider.html LabelProvider]'',''[http://help.eclipse.org/help32/index.jsp?topic=/org.eclipse.platform.doc.isv/reference/api/org/eclipse/jface/viewers/IStructuredContentProvider.html IStructuredContentProvider]'')  
 
Demonstrates a simply TableViewer with one column. It holds all important classes used for all Table-like JFace-Viewers (''[http://help.eclipse.org/help32/index.jsp?topic=/org.eclipse.platform.doc.isv/reference/api/org/eclipse/jface/viewers/LabelProvider.html LabelProvider]'',''[http://help.eclipse.org/help32/index.jsp?topic=/org.eclipse.platform.doc.isv/reference/api/org/eclipse/jface/viewers/IStructuredContentProvider.html IStructuredContentProvider]'')  
Line 31: Line 49:
 
[[Image:Snippet1.png]]  
 
[[Image:Snippet1.png]]  
  
=== [http://git.eclipse.org/c/platform/eclipse.platform.ui.git/tree/examples/org.eclipse.jface.snippets/Eclipse%20JFace%20Snippets/org/eclipse/jface/snippets/viewers/Snippet002TreeViewer.java Snippet002TreeViewer]  ===
+
=== [http://git.eclipse.org/c/platform/eclipse.platform.ui.git/plain/examples/org.eclipse.jface.snippets/Eclipse%20JFace%20Snippets/org/eclipse/jface/snippets/viewers/Snippet002TreeViewer.java Snippet002 - Tree Viewer]  ===
  
 
Demonstrates a simply TreeViewer with one column. It describes all important classes used for all Tree-like JFace-Viewers (''[http://help.eclipse.org/help32/index.jsp?topic=/org.eclipse.platform.doc.isv/reference/api/org/eclipse/jface/viewers/LabelProvider.html LabelProvider]'',''[http://help.eclipse.org/help32/index.jsp?topic=/org.eclipse.platform.doc.isv/reference/api/org/eclipse/jface/viewers/ITreeContentProvider.html ITreeContentProvider]'')  
 
Demonstrates a simply TreeViewer with one column. It describes all important classes used for all Tree-like JFace-Viewers (''[http://help.eclipse.org/help32/index.jsp?topic=/org.eclipse.platform.doc.isv/reference/api/org/eclipse/jface/viewers/LabelProvider.html LabelProvider]'',''[http://help.eclipse.org/help32/index.jsp?topic=/org.eclipse.platform.doc.isv/reference/api/org/eclipse/jface/viewers/ITreeContentProvider.html ITreeContentProvider]'')  
Line 37: Line 55:
 
[[Image:Snippet2.png]]  
 
[[Image:Snippet2.png]]  
  
=== [http://git.eclipse.org/c/platform/eclipse.platform.ui.git/tree/examples/org.eclipse.jface.snippets/Eclipse%20JFace%20Snippets/org/eclipse/jface/snippets/viewers/Snippet003TableLabelProvider.java Snippet003TableLabelProvider]  ===
+
=== [http://git.eclipse.org/c/platform/eclipse.platform.ui.git/plain/examples/org.eclipse.jface.snippets/Eclipse%20JFace%20Snippets/org/eclipse/jface/snippets/viewers/Snippet003TableLabelProvider.java Snippet003 - Table Label Provider]  ===
  
 
Demonstrates tables with more than one column and the usage of ''[http://help.eclipse.org/help32/index.jsp?topic=/org.eclipse.platform.doc.isv/reference/api/org/eclipse/jface/viewers/ITableLabelProvider.html ITableLabelProvider]''  
 
Demonstrates tables with more than one column and the usage of ''[http://help.eclipse.org/help32/index.jsp?topic=/org.eclipse.platform.doc.isv/reference/api/org/eclipse/jface/viewers/ITableLabelProvider.html ITableLabelProvider]''  
  
[[Image:Snippet3.png]]  
+
[[Image:Snippet003.png]]
  
=== [http://git.eclipse.org/c/platform/eclipse.platform.ui.git/tree/examples/org.eclipse.jface.snippets/Eclipse%20JFace%20Snippets/org/eclipse/jface/snippets/viewers/Snippet004HideSelection.java Snippet004HideSelection]  ===
+
=== [http://git.eclipse.org/c/platform/eclipse.platform.ui.git/plain/examples/org.eclipse.jface.snippets/Eclipse%20JFace%20Snippets/org/eclipse/jface/snippets/viewers/Snippet004HideSelection.java Snippet004 - Hide Selection]  ===
  
 
Demonstrates how the selection can be hidden when the user click in a tablerow/column which doesn't hold any information. The standard behaviour of SWT-Table is to leave the selection on the last column. This snippet removes the selection if the user clicks in an area not selectable  
 
Demonstrates how the selection can be hidden when the user click in a tablerow/column which doesn't hold any information. The standard behaviour of SWT-Table is to leave the selection on the last column. This snippet removes the selection if the user clicks in an area not selectable  
Line 49: Line 67:
 
[[Image:Snippet004.png]]  
 
[[Image:Snippet004.png]]  
  
=== [http://git.eclipse.org/c/platform/eclipse.platform.ui.git/tree/examples/org.eclipse.jface.snippets/Eclipse%20JFace%20Snippets/org/eclipse/jface/snippets/viewers/Snippet005TreeCustomMenu.java Snippet005TreeCustomMenu]  ===
+
=== [http://git.eclipse.org/c/platform/eclipse.platform.ui.git/plain/examples/org.eclipse.jface.snippets/Eclipse%20JFace%20Snippets/org/eclipse/jface/snippets/viewers/Snippet005TreeCustomMenu.java Snippet005 - Tree Custom Menu]  ===
  
 
Demonstrates how to create a different context menu depending on which item in the tree is currently selected this can also be used with a table of course  
 
Demonstrates how to create a different context menu depending on which item in the tree is currently selected this can also be used with a table of course  
Line 55: Line 73:
 
[[Image:Snippet005.png]]  
 
[[Image:Snippet005.png]]  
  
=== [http://git.eclipse.org/c/platform/eclipse.platform.ui.git/tree/examples/org.eclipse.jface.snippets/Eclipse%20JFace%20Snippets/org/eclipse/jface/snippets/viewers/Snippet006TableMultiLineCells.java Snippet006TableMultiLineCells]  ===
+
=== [http://git.eclipse.org/c/platform/eclipse.platform.ui.git/plain/examples/org.eclipse.jface.snippets/Eclipse%20JFace%20Snippets/org/eclipse/jface/snippets/viewers/Snippet006TableMultiLineCells.java Snippet006 - Table Multi Line Cells]  ===
  
 
Demonstrates first use case for the new OwnerDraw-Support added to JFace in 3.3 (available at SWT-Level since 3.2). This example uses the new Viewers API in this special case the ''OwnerDrawLabelProvider'' to make items with more than one line of text.  
 
Demonstrates first use case for the new OwnerDraw-Support added to JFace in 3.3 (available at SWT-Level since 3.2). This example uses the new Viewers API in this special case the ''OwnerDrawLabelProvider'' to make items with more than one line of text.  
Line 61: Line 79:
 
[[Image:Snippet006.png]]  
 
[[Image:Snippet006.png]]  
  
=== [http://git.eclipse.org/c/platform/eclipse.platform.ui.git/tree/examples/org.eclipse.jface.snippets/Eclipse%20JFace%20Snippets/org/eclipse/jface/snippets/viewers/Snippet007FullSelection.java Snippet007FullSelection]  ===
+
=== [http://git.eclipse.org/c/platform/eclipse.platform.ui.git/plain/examples/org.eclipse.jface.snippets/Eclipse%20JFace%20Snippets/org/eclipse/jface/snippets/viewers/Snippet007FullSelection.java Snippet007 - Full Selection]  ===
  
 
Demonstrates how you can use a use inline editing in tables with multiple columns which requires to use SWT.FULL_SELECTION but hiding the selection from the user.  
 
Demonstrates how you can use a use inline editing in tables with multiple columns which requires to use SWT.FULL_SELECTION but hiding the selection from the user.  
Line 67: Line 85:
 
[[Image:Snippet007.png]]  
 
[[Image:Snippet007.png]]  
  
=== [http://git.eclipse.org/c/platform/eclipse.platform.ui.git/tree/examples/org.eclipse.jface.snippets/Eclipse%20JFace%20Snippets/org/eclipse/jface/snippets/viewers/Snippet008RevealElement.java Snippet008RevealElement]  ===
+
=== [http://git.eclipse.org/c/platform/eclipse.platform.ui.git/plain/examples/org.eclipse.jface.snippets/Eclipse%20JFace%20Snippets/org/eclipse/jface/snippets/viewers/Snippet008RevealElement.java Snippet008 - Reveal Element]  ===
  
 
Demonstrates how you can scroll a TableViewer to the specific model element using TableViewer#reveal(Object)  
 
Demonstrates how you can scroll a TableViewer to the specific model element using TableViewer#reveal(Object)  
Line 73: Line 91:
 
[[Image:Snippet008.png]]  
 
[[Image:Snippet008.png]]  
  
=== [http://git.eclipse.org/c/platform/eclipse.platform.ui.git/tree/examples/org.eclipse.jface.snippets/Eclipse%20JFace%20Snippets/org/eclipse/jface/snippets/viewers/Snippet009CellEditors.java Snippet009CellEditors]  ===
+
=== [http://git.eclipse.org/c/platform/eclipse.platform.ui.git/plain/examples/org.eclipse.jface.snippets/Eclipse%20JFace%20Snippets/org/eclipse/jface/snippets/viewers/Snippet009CellEditors.java Snippet009 - Cell Editors]  ===
  
 
Demonstrates minimal example when trying to add inline editing to tables to get familiar with the various classes needed (3.2 API)  
 
Demonstrates minimal example when trying to add inline editing to tables to get familiar with the various classes needed (3.2 API)  
Line 79: Line 97:
 
[[Image:Snippet009.png]]  
 
[[Image:Snippet009.png]]  
  
=== [http://git.eclipse.org/c/platform/eclipse.platform.ui.git/tree/examples/org.eclipse.jface.snippets/Eclipse%20JFace%20Snippets/org/eclipse/jface/snippets/viewers/Snippet010OwnerDraw.java Snippet010OwnerDraw]  ===
+
=== [http://git.eclipse.org/c/platform/eclipse.platform.ui.git/plain/examples/org.eclipse.jface.snippets/Eclipse%20JFace%20Snippets/org/eclipse/jface/snippets/viewers/Snippet010OwnerDraw.java Snippet010 - Owner Draw]  ===
  
 
Demonstrates usage of new OwnerDraw-Support feature provided by JFace in 3.3(available in SWT since 3.2). This example uses the new Viewers API in this special case the ''OwnerDrawLabelProvider''.  
 
Demonstrates usage of new OwnerDraw-Support feature provided by JFace in 3.3(available in SWT since 3.2). This example uses the new Viewers API in this special case the ''OwnerDrawLabelProvider''.  
Line 85: Line 103:
 
[[Image:Snippet010.png]]  
 
[[Image:Snippet010.png]]  
  
=== [http://git.eclipse.org/c/platform/eclipse.platform.ui.git/tree/examples/org.eclipse.jface.snippets/Eclipse%20JFace%20Snippets/org/eclipse/jface/snippets/viewers/Snippet011CustomTooltips.java Snippet011CustomTooltips]  ===
+
=== [http://git.eclipse.org/c/platform/eclipse.platform.ui.git/plain/examples/org.eclipse.jface.snippets/Eclipse%20JFace%20Snippets/org/eclipse/jface/snippets/viewers/Snippet011CustomTooltips.java Snippet011 - Custom Tooltips]  ===
  
Demonstrates usage of new custom tooltip support in 3.3 used to provide a tooltip for each cell in TableViewer  
+
Demonstrates usage of new custom tooltip support in 3.3 used to provide a tooltip for each cell in TableViewer
  
=== [http://git.eclipse.org/c/platform/eclipse.platform.ui.git/tree/examples/org.eclipse.jface.snippets/Eclipse%20JFace%20Snippets/org/eclipse/jface/snippets/viewers/Snippet013TableViewerNoMandatoryLabelProvider.java Snippet013TableViewerNoMandatoryLabelProvider] ===
+
[[Image:Snippet011.png]]
  
Demonstrates usage of none mandatory LabelProviders in TableViewers to set colors and fonts with 3.2-API
+
=== [http://git.eclipse.org/c/platform/eclipse.platform.ui.git/plain/examples/org.eclipse.jface.snippets/Eclipse%20JFace%20Snippets/org/eclipse/jface/snippets/viewers/Snippet013TableViewerNoMandatoryLabelProvider.java Snippet013 - Table Viewer No Mandatory Label Provider]]  ===
  
=== [http://git.eclipse.org/c/platform/eclipse.platform.ui.git/tree/examples/org.eclipse.jface.snippets/Eclipse%20JFace%20Snippets/org/eclipse/jface/snippets/viewers/Snippet014TreeViewerNoMandatoryLabelProvider.java Snippet014TreeViewerNoMandatoryLabelProvider]  ===
+
Demonstrates usage of none mandatory LabelProviders in TableViewers to set colors and fonts with 3.2-API
  
 +
[[file:jfacesnippet013.png]]
 +
 +
=== [http://git.eclipse.org/c/platform/eclipse.platform.ui.git/plain/examples/org.eclipse.jface.snippets/Eclipse%20JFace%20Snippets/org/eclipse/jface/snippets/viewers/Snippet014TreeViewerNoMandatoryLabelProvider.java Snippet014 - Tree Viewer No Mandatory Label Provider]]  ===
 
Demonstrates usage of none mandatory LabelProviders in TreeViewers to set colors and font with 3.2-API  
 
Demonstrates usage of none mandatory LabelProviders in TreeViewers to set colors and font with 3.2-API  
  
=== [http://git.eclipse.org/c/platform/eclipse.platform.ui.git/tree/examples/org.eclipse.jface.snippets/Eclipse%20JFace%20Snippets/org/eclipse/jface/snippets/viewers/Snippet015CustomTooltipsForTree.java Snippet015CustomTooltipsForTree] ===
+
[[Image:Snippet014TreeViewerNoMandatoryLabelProvider.png]]
  
Demonstrates usage of new custom tooltip support in 3.3 used to provide a tooltip for each cell in a TreeViewer  
+
=== [http://git.eclipse.org/c/platform/eclipse.platform.ui.git/plain/examples/org.eclipse.jface.snippets/Eclipse%20JFace%20Snippets/org/eclipse/jface/snippets/viewers/Snippet015CustomTooltipsForTree.java Snippet015 - Custom Tooltips For Tree]  ===
 +
Demonstrates usage of custom tooltip support used to provide a tooltip for each cell in a TreeViewer  
  
=== [http://git.eclipse.org/c/platform/eclipse.platform.ui.git/tree/examples/org.eclipse.jface.snippets/Eclipse%20JFace%20Snippets/org/eclipse/jface/snippets/viewers/Snippet017TableViewerHideShowColumns.java Snippet017TableViewerHideShowColumns] ===
+
[[Image:Snippet015CustomTooltipsForTree.png]]
  
 +
=== [http://git.eclipse.org/c/platform/eclipse.platform.ui.git/plain/examples/org.eclipse.jface.snippets/Eclipse%20JFace%20Snippets/org/eclipse/jface/snippets/viewers/Snippet017TableViewerHideShowColumns.java Snippet017 - Table Viewer Hide Show Columns]  ===
 
Demonstrates hiding and showing of columns (animated)  
 
Demonstrates hiding and showing of columns (animated)  
  
=== [http://git.eclipse.org/c/platform/eclipse.platform.ui.git/tree/examples/org.eclipse.jface.snippets/Eclipse%20JFace%20Snippets/org/eclipse/jface/snippets/viewers/Snippet018TableViewerAddRemoveColumnsWithEditing.java Snippet018TableViewerAddRemoveColumnsWithEditing] ===
+
[[Image:Snippet017TableViewerHideShowColumns.png]]
  
Demonstrates adding/removing of columns in conjunction with inline editing which makes this a bit tougher than without it (using 3.2 API)
+
=== [http://git.eclipse.org/c/platform/eclipse.platform.ui.git/plain/examples/org.eclipse.jface.snippets/Eclipse%20JFace%20Snippets/org/eclipse/jface/snippets/viewers/Snippet019TableViewerAddRemoveColumnsWithEditing.java Snippet019 - Table Viewer Add Remove Columns With Editing]  ===
 +
Demonstrates adding/removing of columns in conjunction with the inline editing with JFace-API  
  
=== [http://git.eclipse.org/c/platform/eclipse.platform.ui.git/tree/examples/org.eclipse.jface.snippets/Eclipse%20JFace%20Snippets/org/eclipse/jface/snippets/viewers/Snippet019TableViewerAddRemoveColumnsWithEditingNewAPI.java Snippet019TableViewerAddRemoveColumnsWithEditingNewAPI]  ===
+
[[Image:Snippet019TableViewerAddRemoveColumnsWithEditing.png]]
 
+
Demonstrates adding/removing of columns in conjunction with the inline editing but with the new JFace-API who makes this a much easier and less error prone
+
 
+
=== [http://git.eclipse.org/c/platform/eclipse.platform.ui.git/tree/examples/org.eclipse.jface.snippets/Eclipse%20JFace%20Snippets/org/eclipse/jface/snippets/viewers/Snippet021CellEditorsOnDoubleClick.java Snippet021CellEditorsOnDoubleClick] ===
+
 
+
Demonstrates editor activation on double-click with the 3.2 API which makes this fairly complex
+
 
+
=== [http://git.eclipse.org/c/platform/eclipse.platform.ui.git/tree/examples/org.eclipse.jface.snippets/Eclipse%20JFace%20Snippets/org/eclipse/jface/snippets/viewers/Snippet022TableViewerRefreshNoScroll.java Snippet022TableViewerRefreshNoScroll]  ===
+
 
+
Demonstrates how to refresh and viewer without scrolling the selection into after the refresh with 3.2 API. In 3.3 a special refresh-API for TableViewers is added.
+
 
+
=== [http://git.eclipse.org/c/platform/eclipse.platform.ui.git/tree/examples/org.eclipse.jface.snippets/Eclipse%20JFace%20Snippets/org/eclipse/jface/snippets/viewers/Snippet024TableViewerExploreNewAPI.java Snippet024TableViewerExploreNewAPI] ===
+
  
 +
=== [http://git.eclipse.org/c/platform/eclipse.platform.ui.git/plain/examples/org.eclipse.jface.snippets/Eclipse%20JFace%20Snippets/org/eclipse/jface/snippets/viewers/Snippet024TableViewerExploreNewAPI.java Snippet024 - Table Viewer Explore]  ===
 
Demonstrates the base classes of 3.3 API  
 
Demonstrates the base classes of 3.3 API  
  
=== [http://git.eclipse.org/c/platform/eclipse.platform.ui.git/tree/examples/org.eclipse.jface.snippets/Eclipse%20JFace%20Snippets/org/eclipse/jface/snippets/viewers/Snippet025TabEditing.java Snippet025TabEditing] ===
+
[[Image:Snippet024TableViewerExploreNewAPI.png]]
  
 +
=== [http://git.eclipse.org/c/platform/eclipse.platform.ui.git/plain/examples/org.eclipse.jface.snippets/Eclipse%20JFace%20Snippets/org/eclipse/jface/snippets/viewers/Snippet025TabEditing.java Snippet025 - Tab Editing]  ===
 
Demonstrates how one can use the new 3.3 API to add tab-editing support to your viewer  
 
Demonstrates how one can use the new 3.3 API to add tab-editing support to your viewer  
  
=== [http://git.eclipse.org/c/platform/eclipse.platform.ui.git/tree/examples/org.eclipse.jface.snippets/Eclipse%20JFace%20Snippets/org/eclipse/jface/snippets/viewers/Snippet026TreeViewerTabEditing.java Snippet026TreeViewerTabEditing] ===
+
[[Image:Snippet025TabEditing.png]]
  
 +
Press Tab to jump from cell to cell
 +
 +
=== [http://git.eclipse.org/c/platform/eclipse.platform.ui.git/plain/examples/org.eclipse.jface.snippets/Eclipse%20JFace%20Snippets/org/eclipse/jface/snippets/viewers/Snippet026TreeViewerTabEditing.java Snippet026 - Tree Viewer Tab Editing]  ===
 
Demonstrates all fancy things one can do with new 3.3 API (Tab-Editing, Keyboard-Navigation from Cell to Cell, Editor-Activation with the Keyboard)  
 
Demonstrates all fancy things one can do with new 3.3 API (Tab-Editing, Keyboard-Navigation from Cell to Cell, Editor-Activation with the Keyboard)  
  
 
[[Image:Snippet026TreeViewerTabEditing.gif]]  
 
[[Image:Snippet026TreeViewerTabEditing.gif]]  
  
=== [http://git.eclipse.org/c/platform/eclipse.platform.ui.git/tree/examples/org.eclipse.jface.snippets/Eclipse%20JFace%20Snippets/org/eclipse/jface/snippets/viewers/Snippet027ComboBoxCellEditors.java Snippet027ComboBoxCellEditors]  ===
+
=== [http://git.eclipse.org/c/platform/eclipse.platform.ui.git/plain/examples/org.eclipse.jface.snippets/Eclipse%20JFace%20Snippets/org/eclipse/jface/snippets/viewers/Snippet027ComboBoxCellEditors.java Snippet027 - Combo Box Cell Editors]  ===
 
+
 
Demonstrates usage of the ComboBoxCellEditor in JFace-Viewers  
 
Demonstrates usage of the ComboBoxCellEditor in JFace-Viewers  
  
=== [http://git.eclipse.org/c/platform/eclipse.platform.ui.git/tree/examples/org.eclipse.jface.snippets/Eclipse%20JFace%20Snippets/org/eclipse/jface/snippets/viewers/Snippet029VirtualTableViewer.java Snippet029VirtualTableViewer] ===
+
[[Image:Snippet027ComboBoxCellEditors.png]]
  
Demonstrates usage of JFace-Viewers in virtual mode with an ordinary content provider (often the bottel neck is not the model but the UI). Using this Virtual viewers in conjunction with an ordinary content provider has the advantage that Sorting and Filtering is supported in 3.3.  
+
=== [http://git.eclipse.org/c/platform/eclipse.platform.ui.git/plain/examples/org.eclipse.jface.snippets/Eclipse%20JFace%20Snippets/org/eclipse/jface/snippets/viewers/Snippet029VirtualTableViewer.java Snippet029 - Virtual Table Viewer]  ===
 +
Demonstrates usage of JFace-Viewers in virtual mode with an ordinary content provider (often the bottel neck is not the model but the UI). Using this Virtual viewers in conjunction with an ordinary content provider has the advantage that Sorting and Filtering is supported in 3.3.
  
=== [http://git.eclipse.org/c/platform/eclipse.platform.ui.git/tree/examples/org.eclipse.jface.snippets/Eclipse%20JFace%20Snippets/org/eclipse/jface/snippets/viewers/Snippet030VirtualLazyTableViewer.java Snippet030VirtualLazyTableViewer]  ===
+
=== [http://git.eclipse.org/c/platform/eclipse.platform.ui.git/plain/examples/org.eclipse.jface.snippets/Eclipse%20JFace%20Snippets/org/eclipse/jface/snippets/viewers/Snippet030VirtualLazyTableViewer.java Snippet030 - Virtual Lazy Table Viewer]  ===
 
+
Demonstrates usage of JFace-Viewer virtual mode with a lazy content provider
Demonstrates usage of JFace-Viewer virtual mode with a lazy content provider  
+
 
+
=== [http://git.eclipse.org/c/platform/eclipse.platform.ui.git/tree/examples/org.eclipse.jface.snippets/Eclipse%20JFace%20Snippets/org/eclipse/jface/snippets/viewers/Snippet031TableViewerCustomTooltipsMultiSelection.java Snippet031TableViewerCustomTooltipsMultiSelection]  ===
+
  
 +
=== [http://git.eclipse.org/c/platform/eclipse.platform.ui.git/plain/examples/org.eclipse.jface.snippets/Eclipse%20JFace%20Snippets/org/eclipse/jface/snippets/viewers/Snippet031TableViewerCustomTooltipsMultiSelection.java Snippet031 - Table Viewer Custom Tooltips Multi Selection]]  ===
 
Demonstrates creation of tooltips for cells for pre 3.3 users  
 
Demonstrates creation of tooltips for cells for pre 3.3 users  
  
=== [http://git.eclipse.org/c/platform/eclipse.platform.ui.git/tree/examples/org.eclipse.jface.snippets/Eclipse%20JFace%20Snippets/org/eclipse/jface/snippets/viewers/Snippet032TableTreeViewer.java Snippet032TableTreeViewer] ===
+
[[Image:Snippet031TableViewerCustomTooltipsMultiSelection.png]]
  
Demonstrates a JFace-Viewer ontop of the old TableTree-Widget.
+
=== [http://git.eclipse.org/c/platform/eclipse.platform.ui.git/plain/examples/org.eclipse.jface.snippets/Eclipse%20JFace%20Snippets/org/eclipse/jface/snippets/viewers/Snippet034CellEditorPerRow.java Snippet034 - Cell Editor Per Row New]  ===
 +
Demonstrates different CellEditor-Types in one COLUMN of JFace-Viewers
  
'''NOTE: DO NOT USE THIS VIEWER ANY MORE. IT IS ONLY KEPT FOR BACKWARDS COMPLIANCE. USE TREEVIEWER INSTEAD.'''
+
[[Image:Snippet034CellEditorPerRow.png]]
  
=== [http://git.eclipse.org/c/platform/eclipse.platform.ui.git/tree/examples/org.eclipse.jface.snippets/Eclipse%20JFace%20Snippets/org/eclipse/jface/snippets/viewers/Snippet033CellEditorPerRowPre33.java Snippet033CellEditorPerRowPre33]  ===
+
=== [http://git.eclipse.org/c/platform/eclipse.platform.ui.git/plain/examples/org.eclipse.jface.snippets/Eclipse%20JFace%20Snippets/org/eclipse/jface/snippets/viewers/Snippet035TableCursorCellHighlighter.java Snippet035 - Table Cursor Cell Highlighter]  ===
 +
Demonstrates keyboard navigation in TableViewers using a TableCursor showing the flexibility of the cell navigation support
  
Demonstrates how one can handle different CellEditors-Types in one COLUMN before 3.3 and how difficult this has been.  
+
You also need these classes:
 +
* [http://git.eclipse.org/c/platform/eclipse.platform.ui.git/plain/examples/org.eclipse.jface.snippets/Eclipse%20JFace%20Snippets/org/eclipse/jface/snippets/viewers/CursorCellHighlighter.java CursorCellHighlighter.java]
 +
* [http://git.eclipse.org/c/platform/eclipse.platform.ui.git/plain/examples/org.eclipse.jface.snippets/Eclipse%20JFace%20Snippets/org/eclipse/jface/snippets/viewers/AbstractCellCursor.java AbstractCellCursor.java]
 +
* [http://git.eclipse.org/c/platform/eclipse.platform.ui.git/plain/examples/org.eclipse.jface.snippets/Eclipse%20JFace%20Snippets/org/eclipse/jface/snippets/viewers/TableCursor.java TableCursor.java]
  
=== [http://git.eclipse.org/c/platform/eclipse.platform.ui.git/tree/examples/org.eclipse.jface.snippets/Eclipse%20JFace%20Snippets/org/eclipse/jface/snippets/viewers/Snippet034CellEditorPerRowNewAPI.java Snippet034CellEditorPerRowNewAPI]  ===
 
  
Demonstrates different CellEditor-Types in one COLUMN with 3.3-API of JFace-Viewers
+
[[Image:Snippet035TableCursorCellHighlighter.png]]
  
=== [http://git.eclipse.org/c/platform/eclipse.platform.ui.git/tree/examples/org.eclipse.jface.snippets/Eclipse%20JFace%20Snippets/org/eclipse/jface/snippets/viewers/Snippet035TableCursorCellHighlighter.java Snippet035TableCursorCellHighlighter]  ===
+
=== [http://git.eclipse.org/c/platform/eclipse.platform.ui.git/plain/examples/org.eclipse.jface.snippets/Eclipse%20JFace%20Snippets/org/eclipse/jface/snippets/viewers/Snippet036FocusBorderCellHighlighter.java Snippet036 - Focus Border Cell Highlighter]  ===
 +
Demonstrates keyboard navigation by highlighting the currently selected cell with a focus border showing once more the flexibility of the cell navigation support
  
Demonstrates keyboard navigation in TableViewers using a TableCursor showing the flexibility of the new cell navigation support
+
You also need:
 +
* [http://git.eclipse.org/c/platform/eclipse.platform.ui.git/plain/examples/org.eclipse.jface.snippets/Eclipse%20JFace%20Snippets/org/eclipse/jface/snippets/viewers/FocusBorderCellHighlighter.java FocusBorderCellHighlighter.java]
  
=== [http://git.eclipse.org/c/platform/eclipse.platform.ui.git/tree/examples/org.eclipse.jface.snippets/Eclipse%20JFace%20Snippets/org/eclipse/jface/snippets/viewers/Snippet036FocusBorderCellHighlighter.java Snippet036FocusBorderCellHighlighter]  ===
 
  
Demonstrates keyboard navigation by highlighting the currently selected cell with a focus border showing once more the flexibility of the new cell navigation support
+
[[Image:Snippet036FocusBorderCellHighlighter.png]]
 
+
=== [http://git.eclipse.org/c/platform/eclipse.platform.ui.git/tree/examples/org.eclipse.jface.snippets/Eclipse%20JFace%20Snippets/org/eclipse/jface/snippets/viewers/Snippet037FancyCustomTooltips.java Snippet037FancyCustomTooltips] ===
+
  
 +
=== [http://git.eclipse.org/c/platform/eclipse.platform.ui.git/plain/examples/org.eclipse.jface.snippets/Eclipse%20JFace%20Snippets/org/eclipse/jface/snippets/viewers/Snippet037FancyCustomTooltips.java Snippet037 - Fancy Custom Tooltips]  ===
 
Demonstrates customizability of the 3.3 JFace-Support for cell tooltips using the Browser-Widget and presenting HTML  
 
Demonstrates customizability of the 3.3 JFace-Support for cell tooltips using the Browser-Widget and presenting HTML  
  
=== [http://git.eclipse.org/c/platform/eclipse.platform.ui.git/tree/examples/org.eclipse.jface.snippets/Eclipse%20JFace%20Snippets/org/eclipse/jface/snippets/viewers/Snippet038TreeViewerInlinelEditingOldAPI.java Snippet038TreeViewerInlinelEditingOldAPI] ===
+
[[Image:Snippet037FancyCustomTooltips.png]]
 
+
Demonstrates editing support as of 3.2 for TreeViewers
+
 
+
=== [http://git.eclipse.org/c/platform/eclipse.platform.ui.git/tree/examples/org.eclipse.jface.snippets/Eclipse%20JFace%20Snippets/org/eclipse/jface/snippets/viewers/Snippet039ListViewer.java Snippet039ListViewer] ===
+
  
 +
=== [http://git.eclipse.org/c/platform/eclipse.platform.ui.git/plain/examples/org.eclipse.jface.snippets/Eclipse%20JFace%20Snippets/org/eclipse/jface/snippets/viewers/Snippet039ListViewer.java Snippet039 - List Viewer]  ===
 
Demonstrates a very simple usage of ListViewer  
 
Demonstrates a very simple usage of ListViewer  
  
=== [http://git.eclipse.org/c/platform/eclipse.platform.ui.git/tree/examples/org.eclipse.jface.snippets/Eclipse%20JFace%20Snippets/org/eclipse/jface/snippets/viewers/Snippet040TableViewerSorting.java Snippet040TableViewerSorting] ===
+
[[Image:Snippet039ListViewer.png]]
  
Demonstrates sorting(asc/desc) in TableViewers by clicking the column header. This snippet uses classes from JFace 3.3 but can be easily adopted to work with JFace from 3.2
+
=== [http://git.eclipse.org/c/platform/eclipse.platform.ui.git/plain/examples/org.eclipse.jface.snippets/Eclipse%20JFace%20Snippets/org/eclipse/jface/snippets/viewers/Snippet040TableViewerSorting.java Snippet040 - Table Viewer Sorting]  ===
 +
Demonstrates sorting(asc/desc) in TableViewers by clicking the column header.  
  
=== [http://git.eclipse.org/c/platform/eclipse.platform.ui.git/tree/examples/org.eclipse.jface.snippets/Eclipse%20JFace%20Snippets/org/eclipse/jface/snippets/viewers/Snippet041TableViewerAlternatingColors.java Snippet041TableViewerAlternatingColors] ===
+
[[Image:Snippet040TableViewerSorting.png]]
  
Demonstrates how to achieve alternating row-colors with TableViewer and the new JFace 3.3 API which allows for faster algorithms and can be used in conjunction with virtual-bits to even work with big tables (e.g. 100,000 rows in this example).  
+
=== [http://git.eclipse.org/c/platform/eclipse.platform.ui.git/plain/examples/org.eclipse.jface.snippets/Eclipse%20JFace%20Snippets/org/eclipse/jface/snippets/viewers/Snippet041TableViewerAlternatingColors.java Snippet 041 - Table Viewer Alternating Colors and Viewer Filters]  ===
 +
Demonstrates how to achieve alternating row-colors with TableViewer. It can also be used in conjunction with virtual-bits to even work with big tables (e.g. 100,000 rows in this example). In addition, this snippet provided a button that will demonstrate the usage of viewer filters.
  
=== [http://git.eclipse.org/c/platform/eclipse.platform.ui.git/tree/examples/org.eclipse.jface.snippets/Eclipse%20JFace%20Snippets/org/eclipse/jface/snippets/viewers/Snippet042ToolTipSupportFor32API.java Snippet042ToolTipSupportFor32API] ===
+
[[Image:Snippet041TableViewerAlternatingColors.png]]
  
Because ColumnViewerToolTipSupport forces one to use the new 3.3 CellLabelProvider-API it is of no use for people stuck with the old LabelProvider API. This snippet shows how a potential class for 3.2 API could look like.  
+
=== [http://git.eclipse.org/c/platform/eclipse.platform.ui.git/plain/examples/org.eclipse.jface.snippets/Eclipse%20JFace%20Snippets/org/eclipse/jface/snippets/viewers/Snippet043TreeViewerKeyboardEditing.java Snippet043 - Tree Viewer Keyboard Editing]  ===
 +
Demonstrates the JFace 3.3 keyboard editing support for Trees without columns. Tabbing from editor to editor is supported since 3.4. In addition this snippet provided a button that shows how to enter in edit mode programmatically.
  
=== [http://git.eclipse.org/c/platform/eclipse.platform.ui.git/tree/examples/org.eclipse.jface.snippets/Eclipse%20JFace%20Snippets/org/eclipse/jface/snippets/viewers/Snippet043NoColumnTreeViewerKeyboardEditing.java Snippet043NoColumnTreeViewerKeyboardEditing] ===
+
[[Image:Snippet043TreeViewerKeyboardEditing.png]]
 
+
Demonstrates the JFace 3.3 keyboard editing support for Trees without columns. Tabbing from editor to editor is supported since 3.4.
+
 
+
=== [http://git.eclipse.org/c/platform/eclipse.platform.ui.git/tree/examples/org.eclipse.jface.snippets/Eclipse%20JFace%20Snippets/org/eclipse/jface/snippets/viewers/Snippet044NoColumnTableViewerKeyboardEditing.java Snippet044NoColumnTableViewerKeyboardEditing] ===
+
  
 +
=== [http://git.eclipse.org/c/platform/eclipse.platform.ui.git/plain/examples/org.eclipse.jface.snippets/Eclipse%20JFace%20Snippets/org/eclipse/jface/snippets/viewers/Snippet044TableViewerKeyboardEditing.java Snippet044 - Table Viewer Keyboard Editing]  ===
 
Demonstrates the JFace 3.3 keyboard editing support for Tables without columns. Tabbing from editor to editor is supported since 3.4.  
 
Demonstrates the JFace 3.3 keyboard editing support for Tables without columns. Tabbing from editor to editor is supported since 3.4.  
  
=== [http://git.eclipse.org/c/platform/eclipse.platform.ui.git/tree/examples/org.eclipse.jface.snippets/Eclipse%20JFace%20Snippets/org/eclipse/jface/snippets/viewers/Snippet045TableViewerFillFromBackgroundThread.java Snippet045TableViewerFillFromBackgroundThread] ===
+
You also need:
 +
* [http://git.eclipse.org/c/platform/eclipse.platform.ui.git/plain/examples/org.eclipse.jface.snippets/Eclipse%20JFace%20Snippets/org/eclipse/jface/snippets/viewers/FocusBorderCellHighlighter.java FocusBorderCellHighlighter.java]
  
 +
=== [http://git.eclipse.org/c/platform/eclipse.platform.ui.git/plain/examples/org.eclipse.jface.snippets/Eclipse%20JFace%20Snippets/org/eclipse/jface/snippets/viewers/Snippet045TableViewerFillFromBackgroundThread.java Snippet045 - Table Viewer Fill From Background Thread] ===
 
Demonstrates how a TableViewer with a sorter can be filled from a NON-UI thread  
 
Demonstrates how a TableViewer with a sorter can be filled from a NON-UI thread  
  
=== [http://git.eclipse.org/c/platform/eclipse.platform.ui.git/tree/examples/org.eclipse.jface.snippets/Eclipse%20JFace%20Snippets/org/eclipse/jface/snippets/viewers/Snippet046UpdateViewerFromBackgroundThread.java Snippet046UpdateViewerFromBackgroundThread] ===
+
[[Image:Snippet045TableViewerFillFromBackgroundThread.gif]]
  
 +
=== [http://git.eclipse.org/c/platform/eclipse.platform.ui.git/plain/examples/org.eclipse.jface.snippets/Eclipse%20JFace%20Snippets/org/eclipse/jface/snippets/viewers/Snippet046UpdateViewerFromBackgroundThread.java Snippet046 - Update Viewer From Background Thread]  ===
 
Demonstrates how to update a viewer from a long running task (which is executed in a thread) and calls back to the UI-Thread using asyncExec  
 
Demonstrates how to update a viewer from a long running task (which is executed in a thread) and calls back to the UI-Thread using asyncExec  
  
=== [http://git.eclipse.org/c/platform/eclipse.platform.ui.git/tree/examples/org.eclipse.jface.snippets/Eclipse%20JFace%20Snippets/org/eclipse/jface/snippets/viewers/Snippet047VirtualLazyTreeViewer.java Snippet047VirtualLazyTreeViewer] ===
+
[[Image:Snippet046UpdateViewerFromBackgroundThread.gif]]
  
Demonstrates the usage of ILazyContentProvider in conjunction with a Virtual-TreeViewer  
+
=== [http://git.eclipse.org/c/platform/eclipse.platform.ui.git/plain/examples/org.eclipse.jface.snippets/Eclipse%20JFace%20Snippets/org/eclipse/jface/snippets/viewers/Snippet047VirtualLazyTreeViewer.java Snippet047 - Virtual Lazy Tree Viewer]  ===
 +
Demonstrates the usage of ILazyContentProvider in conjunction with a Virtual-TreeViewer. The snippet shows how using a lazy tree can minimize the memory footprint and maximize the speed when viewing large models.
  
=== [http://git.eclipse.org/c/platform/eclipse.platform.ui.git/tree/examples/org.eclipse.jface.snippets/Eclipse%20JFace%20Snippets/org/eclipse/jface/snippets/viewers/Snippet048TreeViewerTabWithCheckboxFor3_3.java Snippet048TreeViewerTabWithCheckboxFor3_3] ===
+
[[Image:Snippet047VirtualLazyTreeViewer.png]]
  
 +
=== [http://git.eclipse.org/c/platform/eclipse.platform.ui.git/plain/examples/org.eclipse.jface.snippets/Eclipse%20JFace%20Snippets/org/eclipse/jface/snippets/viewers/Snippet048TreeViewerTabWithCheckboxFor3_3.java Snippet048 - Tree Viewer Tab With Checkbox]  ===
 
Demonstrates how to overcome a limitation when it comes to key-navigation and CheckBoxEditors in 3.3.1.  
 
Demonstrates how to overcome a limitation when it comes to key-navigation and CheckBoxEditors in 3.3.1.  
  
=== [http://git.eclipse.org/c/platform/eclipse.platform.ui.git/tree/examples/org.eclipse.jface.snippets/Eclipse%20JFace%20Snippets/org/eclipse/jface/snippets/viewers/Snippet049StyledCellLabelProvider.java Snippet049StyledCellLabelProvider] ===
+
This is a workaround for bug [https://bugs.eclipse.org/bugs/show_bug.cgi?id=198502 https://bugs.eclipse.org/bugs/show_bug.cgi?id=198502]
  
Demonstrates a new LabelProvider-Type which uses StyleRanges. This Snippet requires SWT/JFace 3.4.  
+
[[Image:Snippet048TreeViewerTabWithCheckboxFor3_3.png]]
  
[[Image:Snippet050DelegatingStyledCellLabelProvider.gif]]  
+
=== [http://git.eclipse.org/c/platform/eclipse.platform.ui.git/plain/examples/org.eclipse.jface.snippets/Eclipse%20JFace%20Snippets/org/eclipse/jface/snippets/viewers/Snippet049StyledCellLabelProvider.java Snippet049 - Styled Cell Label Provider] ===
 +
Demonstrates a new LabelProvider-Type which uses StyleRanges. This Snippet requires SWT/JFace 3.4.
  
=== [http://git.eclipse.org/c/platform/eclipse.platform.ui.git/tree/examples/org.eclipse.jface.snippets/Eclipse%20JFace%20Snippets/org/eclipse/jface/snippets/viewers/Snippet050DelegatingStyledCellLabelProvider.java Snippet050DelegatingStyledCellLabelProvider] ===
+
[[Image:Snippet049StyledCellLabelProvider.gif]]
  
 +
=== [http://git.eclipse.org/c/platform/eclipse.platform.ui.git/plain/examples/org.eclipse.jface.snippets/Eclipse%20JFace%20Snippets/org/eclipse/jface/snippets/viewers/Snippet050DelegatingStyledCellLabelProvider.java Snippet050 - Delegating Styled Cell Label Provider]  ===
 
Demonstrates how you can add styled text by wrapping an existing label provider. This Snippet requires SWT/JFace 3.4.  
 
Demonstrates how you can add styled text by wrapping an existing label provider. This Snippet requires SWT/JFace 3.4.  
  
=== [http://git.eclipse.org/c/platform/eclipse.platform.ui.git/tree/examples/org.eclipse.jface.snippets/Eclipse%20JFace%20Snippets/org/eclipse/jface/snippets/viewers/Snippet051TableCenteredImage.java Snippet051TableCenteredImage] ===
+
[[Image:Snippet050DelegatingStyledCellLabelProvider.png]]
  
Demonstrate how to center an image using owner draw. This snippet requires SWT/JFace 3.3.  
+
=== [http://git.eclipse.org/c/platform/eclipse.platform.ui.git/plain/examples/org.eclipse.jface.snippets/Eclipse%20JFace%20Snippets/org/eclipse/jface/snippets/viewers/Snippet051TableCenteredImage.java Snippet051 - Table Centered Image]  ===
 +
Demonstrate how to center an image and create graphics in a cell using a technique called "owner draw".
  
=== [http://git.eclipse.org/c/platform/eclipse.platform.ui.git/tree/examples/org.eclipse.jface.snippets/Eclipse%20JFace%20Snippets/org/eclipse/jface/snippets/viewers/Snippet052DouleClickCellEditor.java Snippet052DouleClickCellEditor] ===
+
[[Image:Snippet051TableCenteredImage.png]]
  
Demonstrate how to start cell-editors on double click. This snippet requires SWT/JFace 3.3
+
=== [http://git.eclipse.org/c/platform/eclipse.platform.ui.git/plain/examples/org.eclipse.jface.snippets/Eclipse%20JFace%20Snippets/org/eclipse/jface/snippets/viewers/Snippet052DoubleClickCellEditor.java Snippet052 - Double Click Cell Editor]  ===
 +
Demonstrate how to start cell-editors on double click.
  
=== [http://git.eclipse.org/c/platform/eclipse.platform.ui.git/tree/examples/org.eclipse.jface.snippets/Eclipse%20JFace%20Snippets/org/eclipse/jface/snippets/viewers/Snippet053StartEditorWithContextMenu.java Snippet053StartEditorWithContextMenu] ===
+
[[Image:Snippet052DoubleClickCellEditor.png]]
  
Demonstrate how to start up an editor with a context menu and not with mouse clicking on the cell.  
+
=== [http://git.eclipse.org/c/platform/eclipse.platform.ui.git/plain/examples/org.eclipse.jface.snippets/Eclipse%20JFace%20Snippets/org/eclipse/jface/snippets/viewers/Snippet053StartEditorWithContextMenu.java Snippet053 - Start Editor With Context Menu]  ===
 +
Demonstrate how to start up a cell editor with a context menu and not with mouse clicking on the cell.  
  
=== [http://git.eclipse.org/c/platform/eclipse.platform.ui.git/tree/examples/org.eclipse.jface.snippets/Eclipse%20JFace%20Snippets/org/eclipse/jface/snippets/viewers/Snippet055HideShowColumn.java Snippet055HideShowColumn] ===
+
[[Image:Snippet053StartEditorWithContextMenu.png]]
  
Demonstrate hiding and showing columns  
+
=== [http://git.eclipse.org/c/platform/eclipse.platform.ui.git/plain/examples/org.eclipse.jface.snippets/Eclipse%20JFace%20Snippets/org/eclipse/jface/snippets/viewers/Snippet055HideShowColumn.java Snippet055 - Hide Show Column]  ===
 +
Demonstrate hiding and showing columns and starting a cell editor programmatically.
  
=== [http://git.eclipse.org/c/platform/eclipse.platform.ui.git/tree/examples/org.eclipse.jface.snippets/Eclipse%20JFace%20Snippets/org/eclipse/jface/snippets/viewers/Snippet056BooleanCellEditor.java Snippet056BooleanCellEditor] ===
+
[[Image:Snippet055HideShowColumn.png]]
  
 +
=== [http://git.eclipse.org/c/platform/eclipse.platform.ui.git/plain/examples/org.eclipse.jface.snippets/Eclipse%20JFace%20Snippets/org/eclipse/jface/snippets/viewers/Snippet056BooleanCellEditor.java Snippet056 - Boolean Cell Editor]  ===
 
Demonstrate a custom cell-editor which uses a real Checkbox-Button  
 
Demonstrate a custom cell-editor which uses a real Checkbox-Button  
  
=== [http://git.eclipse.org/c/platform/eclipse.platform.ui.git/tree/examples/org.eclipse.jface.snippets/Eclipse%20JFace%20Snippets/org/eclipse/jface/snippets/viewers/Snippet057TableViewerSkipHiddenCells.java Snippet057TableViewerSkipHiddenCells] ===
+
You also need these classes:
 +
* [http://git.eclipse.org/c/platform/eclipse.platform.ui.git/plain/examples/org.eclipse.jface.snippets/Eclipse%20JFace%20Snippets/org/eclipse/jface/snippets/viewers/BooleanCellEditor.java BooleanCellEditor.java]  
  
Example of showing how easy cell-navigation with hidden cells is in 3.4
 
  
=== [http://git.eclipse.org/c/platform/eclipse.platform.ui.git/tree/examples/org.eclipse.jface.snippets/Eclipse%20JFace%20Snippets/org/eclipse/jface/snippets/viewers/Snippet058CellNavigationIn34.java Snippet058CellNavigationIn34] ===
+
[[Image:Snippet056BooleanCellEditor.png]]
  
Example for full feature cell navigation until bug 230955 is fixed
+
=== [http://git.eclipse.org/c/platform/eclipse.platform.ui.git/plain/examples/org.eclipse.jface.snippets/Eclipse%20JFace%20Snippets/org/eclipse/jface/snippets/viewers/Snippet057TableViewerSkipHiddenCells.java Snippet057 - Table Viewer Skip Hidden Cells]  ===
 +
Example of showing how easy cell-navigation with hidden cells is. Use the cursor keys to navigate between cells. Then use the context menu to hide a column.
  
=== [http://git.eclipse.org/c/platform/eclipse.platform.ui.git/tree/examples/org.eclipse.jface.snippets/Eclipse%20JFace%20Snippets/org/eclipse/jface/snippets/viewers/Snippet059CellNavigationIn33.java Snippet059CellNavigationIn33] ===
+
[[Image:Snippet057TableViewerSkipHiddenCells.png]]
  
Example for full feature cell navigation in 3.3. This snippet uses internal API by reflection so its not guaranteed to work for ever. The problem of invisible cells is fixed in 3.4. The problem with horizontal scrolling is going to be fixed in 3.5.  
+
=== [http://git.eclipse.org/c/platform/eclipse.platform.ui.git/plain/examples/org.eclipse.jface.snippets/Eclipse%20JFace%20Snippets/org/eclipse/jface/snippets/viewers/Snippet058CellNavigationIn34.java Snippet058 - Cell Navigation]  ===
 +
Shows how to automatically reveal cells when navigating. Run the snippet and then edit the first cell by double clicking. Pressing tab will advance to the next cell in edit mode and reveal the cell if it is not in the viewport.
  
=== [http://git.eclipse.org/c/platform/eclipse.platform.ui.git/tree/examples/org.eclipse.jface.snippets/Eclipse%20JFace%20Snippets/org/eclipse/jface/snippets/viewers/Snippet060TextCellEditorWithContentProposal.java Snippet060TextCellEditorWithContentProposal] ===
+
[[Image:Snippet058CellNavigationIn34.gif]]
  
 +
=== [http://git.eclipse.org/c/platform/eclipse.platform.ui.git/plain/examples/org.eclipse.jface.snippets/Eclipse%20JFace%20Snippets/org/eclipse/jface/snippets/viewers/Snippet060TextCellEditorWithContentProposal.java Snippet060 - Text Cell Editor With Content Proposal/Field assists]  ===
 
Show how to use content-proposal inside a CellEditor  
 
Show how to use content-proposal inside a CellEditor  
  
=== [http://git.eclipse.org/c/platform/eclipse.platform.ui.git/tree/examples/org.eclipse.jface.snippets/Eclipse%20JFace%20Snippets/org/eclipse/jface/snippets/viewers/Snippet061FakedNativeCellEditor.java Snippet061FakedNativeCellEditor] ===
+
[[Image:Snippet060TextCellEditorWithContentProposal.png]]
  
 +
=== [http://git.eclipse.org/c/platform/eclipse.platform.ui.git/plain/examples/org.eclipse.jface.snippets/Eclipse%20JFace%20Snippets/org/eclipse/jface/snippets/viewers/Snippet061FakedNativeCellEditor.java Snippet061 - Faked Native Cell Editor]  ===
 
Full featured native looking viewer with checkboxes in an arbitary column  
 
Full featured native looking viewer with checkboxes in an arbitary column  
  
=== [http://git.eclipse.org/c/platform/eclipse.platform.ui.git/tree/examples/org.eclipse.jface.snippets/Eclipse%20JFace%20Snippets/org/eclipse/jface/snippets/viewers/Snippet62TextAndDialogCellEditor.java Snippet62TextAndDialogCellEditor]
+
You also need these classes:
 +
* [http://git.eclipse.org/c/platform/eclipse.platform.ui.git/plain/examples/org.eclipse.jface.snippets/Eclipse%20JFace%20Snippets/org/eclipse/jface/snippets/viewers/BooleanCellEditor.java BooleanCellEditor.java]  
  
 +
 +
 +
[[Image:Snippet061FakedNativeCellEditor.png]]
 +
 +
=== [http://git.eclipse.org/c/platform/eclipse.platform.ui.git/plain/examples/org.eclipse.jface.snippets/Eclipse%20JFace%20Snippets/org/eclipse/jface/snippets/viewers/Snippet062TextAndDialogCellEditor.java Snippet062 - Text And Dialog Cell Editor] ===
 
Demonstrates usage of TextAndDialogCellEditor. The email column uses the TextAndDialogCellEditor; othe columns use ordinary TextCellEditor.
 
Demonstrates usage of TextAndDialogCellEditor. The email column uses the TextAndDialogCellEditor; othe columns use ordinary TextCellEditor.
  
=== [http://git.eclipse.org/c/platform/eclipse.platform.ui.git/tree/examples/org.eclipse.jface.snippets/Eclipse%20JFace%20Snippets/org/eclipse/jface/snippets/viewers/Snippet063ComboViewer.java Snippet063ComboViewer] ===
+
You also need these classes:
 +
* [http://git.eclipse.org/c/platform/eclipse.platform.ui.git/plain/examples/org.eclipse.jface.snippets/Eclipse%20JFace%20Snippets/org/eclipse/jface/snippets/viewers/TextAndDialogCellEditor.java TextAndDialogCellEditor.java]  
  
 +
 +
[[Image:Snippet062TextAndDialogCellEditor.png]]
 +
 +
=== [http://git.eclipse.org/c/platform/eclipse.platform.ui.git/plain/examples/org.eclipse.jface.snippets/Eclipse%20JFace%20Snippets/org/eclipse/jface/snippets/viewers/Snippet063ComboViewer.java Snippet063 - Combo Viewer] ===
 
Show how to use ComboViewer and set a inital selection
 
Show how to use ComboViewer and set a inital selection
  
== Window  ==
+
[[Image:Snippet063ComboViewer.png]]
  
=== [http://git.eclipse.org/c/platform/eclipse.platform.ui.git/tree/examples/org.eclipse.jface.snippets/Eclipse%20JFace%20Snippets/org/eclipse/jface/snippets/window/Snippet020CustomizedControlTooltips.java Snippet020CustomizedControlTooltips] ===
+
=== [https://git.eclipse.org/c/platform/eclipse.platform.ui.git/plain/examples/org.eclipse.jface.snippets/Eclipse%20JFace%20Snippets/org/eclipse/jface/snippets/viewers/Snippet064TreeViewerReplacingElements.java Snippet064 - Replacing elements in a TreeViewer with child elements] ===
 +
A TreeViewer with observable collections as input, to demonstrate, how elements are replaced, especially what happens to selected items on replacement
  
Demonstrates usage of new JFace 3.3 to show really cool ToolTips for your controls
+
[[Image:Snippet064TreeViewerReplacingElements.png]]
  
=== [http://git.eclipse.org/c/platform/eclipse.platform.ui.git/tree/examples/org.eclipse.jface.snippets/Eclipse%20JFace%20Snippets/org/eclipse/jface/snippets/window/Snippet023TreeViewerCustomTooltips.java Snippet023TreeViewerCustomTooltips] ===
+
=== [https://git.eclipse.org/c/platform/eclipse.platform.ui.git/plain/examples/org.eclipse.jface.snippets/Eclipse%20JFace%20Snippets/org/eclipse/jface/snippets/viewers/Snippet065TableViewerReplacingElements.java Snippet065 - Replacing elements in a TreeViewer without child elements] ===
 +
A TreeViewer with observable collections as input, to demonstrate, how elements are replaced, especially what happens to selected items on replacement
  
Demonstrates creation of ToolTips for users pre 3.3.  
+
[[Image:Snippet065TableViewerReplacingElements.png]]
  
=== [http://git.eclipse.org/c/platform/eclipse.platform.ui.git/tree/examples/org.eclipse.jface.snippets/Eclipse%20JFace%20Snippets/org/eclipse/jface/snippets/window/Snippet031TableStaticTooltip.java Snippet031TableStaticTooltip.java] ===
+
=== [https://git.eclipse.org/c/platform/eclipse.platform.ui.git/plain/examples/org.eclipse.jface.snippets/Eclipse%20JFace%20Snippets/org/eclipse/jface/snippets/viewers/Snippet066TableViewerWithLabelDecorator.java Snippet066 - TableViewer with Label Decorator] ===
 +
A TableViewer that shows how to add an status icon to a Label with IStyledLabelProvider and DecorationOverlayIcon
  
Demonstrates creation of ToolTips for Tables without using the JFace-Viewers API but only JFace-Tooltips
+
[[Image:Snippet066TableViewerWithLabelDecorator.png]]
  
 +
== Window  ==
  
 +
=== [http://git.eclipse.org/c/platform/eclipse.platform.ui.git/plain/examples/org.eclipse.jface.snippets/Eclipse%20JFace%20Snippets/org/eclipse/jface/snippets/window/Snippet020CustomizedControlTooltips.java Snippet020 - Customized Control Tooltips]  ===
 +
Demonstrates usage of new JFace 3.3 to show really cool ToolTips for your controls
 +
 +
For full fun you also need:
 +
* [http://git.eclipse.org/c/platform/eclipse.platform.ui.git/plain/examples/org.eclipse.jface.snippets/Eclipse%20JFace%20Snippets/org/eclipse/jface/snippets/window/linkto_help.gif Help Icon]
 +
* [http://git.eclipse.org/c/platform/eclipse.platform.ui.git/plain/examples/org.eclipse.jface.snippets/Eclipse%20JFace%20Snippets/org/eclipse/jface/snippets/window/showerr_tsk.gif Error Icon]
 +
 +
 +
[[Image:Snippet020CustomizedControlTooltips.png]]
 +
 +
=== [http://git.eclipse.org/c/platform/eclipse.platform.ui.git/plain/examples/org.eclipse.jface.snippets/Eclipse%20JFace%20Snippets/org/eclipse/jface/snippets/window/Snippet031TableStaticTooltip.java Snippet031 - Table Static Tooltip]  ===
 +
Demonstrates creation of ToolTips for Tables without using the JFace-Viewers API but only JFace-Tooltips
 +
 +
[[Image:Snippet031TableStaticTooltip.png]]
  
 
== Wizard ==
 
== Wizard ==
  
=== [http://git.eclipse.org/c/platform/eclipse.platform.ui.git/tree/examples/org.eclipse.jface.snippets/Eclipse%20JFace%20Snippets/org/eclipse/jface/snippets/wizard/Snippet047WizardWithLongRunningOperation.java Snippet047WizardWithLongRunningOperation]  ===
+
=== [http://git.eclipse.org/c/platform/eclipse.platform.ui.git/plain/examples/org.eclipse.jface.snippets/Eclipse%20JFace%20Snippets/org/eclipse/jface/snippets/wizard/Snippet047WizardWithLongRunningOperation.java Snippet047 - Wizard with Long Running Operation from Page]  ===
 +
Demonstrates how to work with JFace-Wizards and fill a TableViewer from a Background-Thread without blocking the UI showing a progress bar in the meanwhile
 +
 
 +
[[Image:Snippet047.gif]]
 +
 
 +
=== [http://git.eclipse.org/c/platform/eclipse.platform.ui.git/plain/examples/org.eclipse.jface.snippets/Eclipse%20JFace%20Snippets/org/eclipse/jface/snippets/wizard/Snippet071WizardWithProgressAndCancel.java Snippet071 - Wizard with Progress and Cancel] ===
 +
Demonstrates a wizard with internal progress.
 +
 
 +
[[Image:Snippet071WizardWithProgressAndCancel.gif]]
 +
 
 +
=== [http://git.eclipse.org/c/platform/eclipse.platform.ui.git/plain/examples/org.eclipse.jface.snippets/Eclipse%20JFace%20Snippets/org/eclipse/jface/snippets/wizard/Snippet072WizardWithProgressSubtasksAndCancel.java Snippet072 Wizard with Progress Subtasks and Cancel]  ===
 +
 
 +
Demonstrates a wizard with internal progress using SubMonitor and subtasks.
 +
 
 +
[[Image:Snippet072WizardWithProgressSubtasksAndCancel.png]]
 +
 
 +
 
 +
=== [http://git.eclipse.org/c/platform/eclipse.platform.ui.git/plain/examples/org.eclipse.jface.snippets/Eclipse%20JFace%20Snippets/org/eclipse/jface/snippets/wizard/Snippet074ModelesWizard.java Snippet074 Wizard with access to application window]  ===
 +
 
 +
Demonstrates a wizard that enables access to the calling shell..
  
Demonstrates how to work with JFace-Wizards and fill a TableViewer from a Background-Thread without blocking the UI showing a progress bar in the meanwhile
+
[[Image:Snippet074ModelesWizard.gif]]
  
 
[[Category:Snippets]] [[Category:RCP]] [[Category:Platform_UI]]
 
[[Category:Snippets]] [[Category:RCP]] [[Category:Platform_UI]]

Revision as of 17:47, 20 May 2019

JFace-Snippets are small and easy understandable programming examples how to use the JFace API. To browse the examples, navigate to the examples GIT repository.

Copy Paste
The header section of each snippet is a link to the plain source. You can copy the source and paste it directly on the source folder or package in an eclipse project. The package and the class will be created automatically.
* Click here for a visual explanation.


Contents

Dialogs

Snippet012 - Dialog with Image Buttons

Demonstrates usage of Icons in Buttons of Dialogs

Snippet012DialogWithImageButtons.png

Drop these icons also in the same package

Filesave.png Cancel.png

Layout

Snippet013 Grid Layout Factory

Demonstrates usage of the GridLayoutFactory to enhance readability

Snippet013 Shell1.png Snippet013 Shell2.png Snippet013 Shell3.png

Snippet016 - Table Layout

Demonstrates (dynamic)layout support for TableColumns available as of JFace 3.3

Snippet016.png

Snippet027 - Tree Layout

Demonstrates (dynamic)layout support for TreeColumns available as of JFace 3.3

Snippet027.png

Viewers

Snippet001 - Table Viewer

Demonstrates a simply TableViewer with one column. It holds all important classes used for all Table-like JFace-Viewers (LabelProvider,IStructuredContentProvider)

Snippet1.png

Snippet002 - Tree Viewer

Demonstrates a simply TreeViewer with one column. It describes all important classes used for all Tree-like JFace-Viewers (LabelProvider,ITreeContentProvider)

Snippet2.png

Snippet003 - Table Label Provider

Demonstrates tables with more than one column and the usage of ITableLabelProvider

Snippet003.png

Snippet004 - Hide Selection

Demonstrates how the selection can be hidden when the user click in a tablerow/column which doesn't hold any information. The standard behaviour of SWT-Table is to leave the selection on the last column. This snippet removes the selection if the user clicks in an area not selectable

Snippet004.png

Snippet005 - Tree Custom Menu

Demonstrates how to create a different context menu depending on which item in the tree is currently selected this can also be used with a table of course

Snippet005.png

Snippet006 - Table Multi Line Cells

Demonstrates first use case for the new OwnerDraw-Support added to JFace in 3.3 (available at SWT-Level since 3.2). This example uses the new Viewers API in this special case the OwnerDrawLabelProvider to make items with more than one line of text.

Snippet006.png

Snippet007 - Full Selection

Demonstrates how you can use a use inline editing in tables with multiple columns which requires to use SWT.FULL_SELECTION but hiding the selection from the user.

Snippet007.png

Snippet008 - Reveal Element

Demonstrates how you can scroll a TableViewer to the specific model element using TableViewer#reveal(Object)

Snippet008.png

Snippet009 - Cell Editors

Demonstrates minimal example when trying to add inline editing to tables to get familiar with the various classes needed (3.2 API)

Snippet009.png

Snippet010 - Owner Draw

Demonstrates usage of new OwnerDraw-Support feature provided by JFace in 3.3(available in SWT since 3.2). This example uses the new Viewers API in this special case the OwnerDrawLabelProvider.

Snippet010.png

Snippet011 - Custom Tooltips

Demonstrates usage of new custom tooltip support in 3.3 used to provide a tooltip for each cell in TableViewer

Snippet011.png

Snippet013 - Table Viewer No Mandatory Label Provider]

Demonstrates usage of none mandatory LabelProviders in TableViewers to set colors and fonts with 3.2-API

Jfacesnippet013.png

Snippet014 - Tree Viewer No Mandatory Label Provider]

Demonstrates usage of none mandatory LabelProviders in TreeViewers to set colors and font with 3.2-API

Snippet014TreeViewerNoMandatoryLabelProvider.png

Snippet015 - Custom Tooltips For Tree

Demonstrates usage of custom tooltip support used to provide a tooltip for each cell in a TreeViewer

Snippet015CustomTooltipsForTree.png

Snippet017 - Table Viewer Hide Show Columns

Demonstrates hiding and showing of columns (animated)

Snippet017TableViewerHideShowColumns.png

Snippet019 - Table Viewer Add Remove Columns With Editing

Demonstrates adding/removing of columns in conjunction with the inline editing with JFace-API

Snippet019TableViewerAddRemoveColumnsWithEditing.png

Snippet024 - Table Viewer Explore

Demonstrates the base classes of 3.3 API

Snippet024TableViewerExploreNewAPI.png

Snippet025 - Tab Editing

Demonstrates how one can use the new 3.3 API to add tab-editing support to your viewer

Snippet025TabEditing.png

Press Tab to jump from cell to cell

Snippet026 - Tree Viewer Tab Editing

Demonstrates all fancy things one can do with new 3.3 API (Tab-Editing, Keyboard-Navigation from Cell to Cell, Editor-Activation with the Keyboard)

Snippet026TreeViewerTabEditing.gif

Snippet027 - Combo Box Cell Editors

Demonstrates usage of the ComboBoxCellEditor in JFace-Viewers

Snippet027ComboBoxCellEditors.png

Snippet029 - Virtual Table Viewer

Demonstrates usage of JFace-Viewers in virtual mode with an ordinary content provider (often the bottel neck is not the model but the UI). Using this Virtual viewers in conjunction with an ordinary content provider has the advantage that Sorting and Filtering is supported in 3.3.

Snippet030 - Virtual Lazy Table Viewer

Demonstrates usage of JFace-Viewer virtual mode with a lazy content provider

Snippet031 - Table Viewer Custom Tooltips Multi Selection]

Demonstrates creation of tooltips for cells for pre 3.3 users

Snippet031TableViewerCustomTooltipsMultiSelection.png

Snippet034 - Cell Editor Per Row New

Demonstrates different CellEditor-Types in one COLUMN of JFace-Viewers

Snippet034CellEditorPerRow.png

Snippet035 - Table Cursor Cell Highlighter

Demonstrates keyboard navigation in TableViewers using a TableCursor showing the flexibility of the cell navigation support

You also need these classes:


Snippet035TableCursorCellHighlighter.png

Snippet036 - Focus Border Cell Highlighter

Demonstrates keyboard navigation by highlighting the currently selected cell with a focus border showing once more the flexibility of the cell navigation support

You also need:


Snippet036FocusBorderCellHighlighter.png

Snippet037 - Fancy Custom Tooltips

Demonstrates customizability of the 3.3 JFace-Support for cell tooltips using the Browser-Widget and presenting HTML

Snippet037FancyCustomTooltips.png

Snippet039 - List Viewer

Demonstrates a very simple usage of ListViewer

Snippet039ListViewer.png

Snippet040 - Table Viewer Sorting

Demonstrates sorting(asc/desc) in TableViewers by clicking the column header.

Snippet040TableViewerSorting.png

Snippet 041 - Table Viewer Alternating Colors and Viewer Filters

Demonstrates how to achieve alternating row-colors with TableViewer. It can also be used in conjunction with virtual-bits to even work with big tables (e.g. 100,000 rows in this example). In addition, this snippet provided a button that will demonstrate the usage of viewer filters.

Snippet041TableViewerAlternatingColors.png

Snippet043 - Tree Viewer Keyboard Editing

Demonstrates the JFace 3.3 keyboard editing support for Trees without columns. Tabbing from editor to editor is supported since 3.4. In addition this snippet provided a button that shows how to enter in edit mode programmatically.

Snippet043TreeViewerKeyboardEditing.png

Snippet044 - Table Viewer Keyboard Editing

Demonstrates the JFace 3.3 keyboard editing support for Tables without columns. Tabbing from editor to editor is supported since 3.4.

You also need:

Snippet045 - Table Viewer Fill From Background Thread

Demonstrates how a TableViewer with a sorter can be filled from a NON-UI thread

Snippet045TableViewerFillFromBackgroundThread.gif

Snippet046 - Update Viewer From Background Thread

Demonstrates how to update a viewer from a long running task (which is executed in a thread) and calls back to the UI-Thread using asyncExec

Snippet046UpdateViewerFromBackgroundThread.gif

Snippet047 - Virtual Lazy Tree Viewer

Demonstrates the usage of ILazyContentProvider in conjunction with a Virtual-TreeViewer. The snippet shows how using a lazy tree can minimize the memory footprint and maximize the speed when viewing large models.

Snippet047VirtualLazyTreeViewer.png

Snippet048 - Tree Viewer Tab With Checkbox

Demonstrates how to overcome a limitation when it comes to key-navigation and CheckBoxEditors in 3.3.1.

This is a workaround for bug https://bugs.eclipse.org/bugs/show_bug.cgi?id=198502

Snippet048TreeViewerTabWithCheckboxFor3 3.png

Snippet049 - Styled Cell Label Provider

Demonstrates a new LabelProvider-Type which uses StyleRanges. This Snippet requires SWT/JFace 3.4.

Snippet049StyledCellLabelProvider.gif

Snippet050 - Delegating Styled Cell Label Provider

Demonstrates how you can add styled text by wrapping an existing label provider. This Snippet requires SWT/JFace 3.4.

Snippet050DelegatingStyledCellLabelProvider.png

Snippet051 - Table Centered Image

Demonstrate how to center an image and create graphics in a cell using a technique called "owner draw".

Snippet051TableCenteredImage.png

Snippet052 - Double Click Cell Editor

Demonstrate how to start cell-editors on double click.

Snippet052DoubleClickCellEditor.png

Snippet053 - Start Editor With Context Menu

Demonstrate how to start up a cell editor with a context menu and not with mouse clicking on the cell.

Snippet053StartEditorWithContextMenu.png

Snippet055 - Hide Show Column

Demonstrate hiding and showing columns and starting a cell editor programmatically.

Snippet055HideShowColumn.png

Snippet056 - Boolean Cell Editor

Demonstrate a custom cell-editor which uses a real Checkbox-Button

You also need these classes:


Snippet056BooleanCellEditor.png

Snippet057 - Table Viewer Skip Hidden Cells

Example of showing how easy cell-navigation with hidden cells is. Use the cursor keys to navigate between cells. Then use the context menu to hide a column.

Snippet057TableViewerSkipHiddenCells.png

Snippet058 - Cell Navigation

Shows how to automatically reveal cells when navigating. Run the snippet and then edit the first cell by double clicking. Pressing tab will advance to the next cell in edit mode and reveal the cell if it is not in the viewport.

Snippet058CellNavigationIn34.gif

Snippet060 - Text Cell Editor With Content Proposal/Field assists

Show how to use content-proposal inside a CellEditor

Snippet060TextCellEditorWithContentProposal.png

Snippet061 - Faked Native Cell Editor

Full featured native looking viewer with checkboxes in an arbitary column

You also need these classes:


Snippet061FakedNativeCellEditor.png

Snippet062 - Text And Dialog Cell Editor

Demonstrates usage of TextAndDialogCellEditor. The email column uses the TextAndDialogCellEditor; othe columns use ordinary TextCellEditor.

You also need these classes:


Snippet062TextAndDialogCellEditor.png

Snippet063 - Combo Viewer

Show how to use ComboViewer and set a inital selection

Snippet063ComboViewer.png

Snippet064 - Replacing elements in a TreeViewer with child elements

A TreeViewer with observable collections as input, to demonstrate, how elements are replaced, especially what happens to selected items on replacement

Snippet064TreeViewerReplacingElements.png

Snippet065 - Replacing elements in a TreeViewer without child elements

A TreeViewer with observable collections as input, to demonstrate, how elements are replaced, especially what happens to selected items on replacement

Snippet065TableViewerReplacingElements.png

Snippet066 - TableViewer with Label Decorator

A TableViewer that shows how to add an status icon to a Label with IStyledLabelProvider and DecorationOverlayIcon

Snippet066TableViewerWithLabelDecorator.png

Window

Snippet020 - Customized Control Tooltips

Demonstrates usage of new JFace 3.3 to show really cool ToolTips for your controls

For full fun you also need:


Snippet020CustomizedControlTooltips.png

Snippet031 - Table Static Tooltip

Demonstrates creation of ToolTips for Tables without using the JFace-Viewers API but only JFace-Tooltips

Snippet031TableStaticTooltip.png

Wizard

Snippet047 - Wizard with Long Running Operation from Page

Demonstrates how to work with JFace-Wizards and fill a TableViewer from a Background-Thread without blocking the UI showing a progress bar in the meanwhile

Snippet047.gif

Snippet071 - Wizard with Progress and Cancel

Demonstrates a wizard with internal progress.

Snippet071WizardWithProgressAndCancel.gif

Snippet072 Wizard with Progress Subtasks and Cancel

Demonstrates a wizard with internal progress using SubMonitor and subtasks.

Snippet072WizardWithProgressSubtasksAndCancel.png


Snippet074 Wizard with access to application window

Demonstrates a wizard that enables access to the calling shell..

Snippet074ModelesWizard.gif

Back to the top