|
Lines 1-5
Link Here
|
| 1 |
/******************************************************************************* |
1 |
/******************************************************************************* |
| 2 |
* Copyright (c) 2002, 2010 Innoopract Informationssysteme GmbH. |
2 |
* Copyright (c) 2002, 2011 Innoopract Informationssysteme GmbH. |
| 3 |
* All rights reserved. This program and the accompanying materials |
3 |
* All rights reserved. This program and the accompanying materials |
| 4 |
* are made available under the terms of the Eclipse Public License v1.0 |
4 |
* are made available under the terms of the Eclipse Public License v1.0 |
| 5 |
* which accompanies this distribution, and is available at |
5 |
* which accompanies this distribution, and is available at |
|
Lines 27-34
Link Here
|
| 27 |
import org.eclipse.swt.graphics.*; |
27 |
import org.eclipse.swt.graphics.*; |
| 28 |
import org.eclipse.swt.internal.events.ActivateAdapter; |
28 |
import org.eclipse.swt.internal.events.ActivateAdapter; |
| 29 |
import org.eclipse.swt.internal.events.ActivateEvent; |
29 |
import org.eclipse.swt.internal.events.ActivateEvent; |
| 30 |
import org.eclipse.swt.internal.widgets.ITreeAdapter; |
30 |
import org.eclipse.swt.internal.widgets.*; |
| 31 |
import org.eclipse.swt.internal.widgets.Props; |
|
|
| 32 |
import org.eclipse.swt.internal.widgets.treekit.TreeLCA.ItemMetrics; |
31 |
import org.eclipse.swt.internal.widgets.treekit.TreeLCA.ItemMetrics; |
| 33 |
import org.eclipse.swt.layout.FillLayout; |
32 |
import org.eclipse.swt.layout.FillLayout; |
| 34 |
import org.eclipse.swt.widgets.*; |
33 |
import org.eclipse.swt.widgets.*; |
|
Lines 530-535
Link Here
|
| 530 |
hasListeners = ( Boolean )adapter.getPreserved( Props.ACTIVATE_LISTENER ); |
529 |
hasListeners = ( Boolean )adapter.getPreserved( Props.ACTIVATE_LISTENER ); |
| 531 |
assertEquals( Boolean.TRUE, hasListeners ); |
530 |
assertEquals( Boolean.TRUE, hasListeners ); |
| 532 |
} |
531 |
} |
|
|
532 |
|
| 533 |
public void testPreserveEnableCellToolTip() { |
| 534 |
Tree tree = new Tree( shell, SWT.BORDER ); |
| 535 |
Fixture.markInitialized( display ); |
| 536 |
Fixture.preserveWidgets(); |
| 537 |
IWidgetAdapter adapter = WidgetUtil.getAdapter( tree ); |
| 538 |
Boolean preserved |
| 539 |
= ( Boolean )adapter.getPreserved( TreeLCA.PROP_ENABLE_CELL_TOOLTIP ); |
| 540 |
assertEquals( Boolean.FALSE, preserved ); |
| 541 |
Fixture.clearPreserved(); |
| 542 |
tree.setData( ICellToolTipProvider.ENABLE_CELL_TOOLTIP, Boolean.TRUE ); |
| 543 |
Fixture.preserveWidgets(); |
| 544 |
adapter = WidgetUtil.getAdapter( tree ); |
| 545 |
preserved |
| 546 |
= ( Boolean )adapter.getPreserved( TreeLCA.PROP_ENABLE_CELL_TOOLTIP ); |
| 547 |
assertEquals( Boolean.TRUE, preserved ); |
| 548 |
Fixture.clearPreserved(); |
| 549 |
} |
| 533 |
|
550 |
|
| 534 |
public void testSelectionEvent() { |
551 |
public void testSelectionEvent() { |
| 535 |
final StringBuffer log = new StringBuffer(); |
552 |
final StringBuffer log = new StringBuffer(); |
|
Lines 672-677
Link Here
|
| 672 |
String expected = "w.setHasScrollBarsSelectionListener( true );"; |
689 |
String expected = "w.setHasScrollBarsSelectionListener( true );"; |
| 673 |
assertTrue( markup.indexOf( expected ) != -1 ); |
690 |
assertTrue( markup.indexOf( expected ) != -1 ); |
| 674 |
} |
691 |
} |
|
|
692 |
|
| 693 |
public void testWriteEnableCellToolTip() throws IOException { |
| 694 |
Tree tree = new Tree( shell, SWT.NONE ); |
| 695 |
createTreeItems( tree, 5 ); |
| 696 |
Fixture.fakeNewRequest(); |
| 697 |
tree.setData( ICellToolTipProvider.ENABLE_CELL_TOOLTIP, Boolean.TRUE ); |
| 698 |
TreeLCA treeLCA = new TreeLCA(); |
| 699 |
treeLCA.renderChanges( tree ); |
| 700 |
String markup = Fixture.getAllMarkup(); |
| 701 |
String expected = "w.setEnableCellToolTip( true )"; |
| 702 |
assertTrue( markup.indexOf( expected ) != -1 ); |
| 703 |
} |
| 704 |
|
| 705 |
public void testGetCellToolTipText() { |
| 706 |
Tree tree = new Tree( shell, SWT.NONE ); |
| 707 |
createTreeItems( tree, 5 ); |
| 708 |
Object adapter = tree.getAdapter( ITreeAdapter.class ); |
| 709 |
final ITreeAdapter treeAdapter = ( ITreeAdapter )adapter; |
| 710 |
treeAdapter.setCellToolTipProvider( new ICellToolTipProvider() { |
| 711 |
public void getToolTipText( final Item item, |
| 712 |
final int columnIndex ) |
| 713 |
{ |
| 714 |
StringBuffer buffer = new StringBuffer(); |
| 715 |
buffer.append( "[" ); |
| 716 |
buffer.append( WidgetUtil.getId( item ) ); |
| 717 |
buffer.append( "," ); |
| 718 |
buffer.append( columnIndex ); |
| 719 |
buffer.append( "]" ); |
| 720 |
treeAdapter.setToolTipText( buffer.toString() ); |
| 721 |
} |
| 722 |
} ); |
| 723 |
Fixture.fakeNewRequest(); |
| 724 |
Fixture.executeLifeCycleFromServerThread(); |
| 725 |
String markup = Fixture.getAllMarkup(); |
| 726 |
String expected = "w.setCellToolTipText("; |
| 727 |
assertTrue( markup.indexOf( expected ) == -1 ); |
| 728 |
String itemId = WidgetUtil.getId( tree.getItem( 2 ) ); |
| 729 |
processCellToolTipRequest( tree, itemId, 0 ); |
| 730 |
markup = Fixture.getAllMarkup(); |
| 731 |
expected = "w.setCellToolTipText( \"[" + itemId + ",0]\" );"; |
| 732 |
assertTrue( markup.indexOf( expected ) != -1 ); |
| 733 |
} |
| 734 |
|
| 735 |
public void testGetCellToolTipTextForSubitems() { |
| 736 |
Tree tree = new Tree( shell, SWT.NONE ); |
| 737 |
createTreeItems( tree, 5 ); |
| 738 |
Object adapter = tree.getAdapter( ITreeAdapter.class ); |
| 739 |
final ITreeAdapter treeAdapter = ( ITreeAdapter )adapter; |
| 740 |
treeAdapter.setCellToolTipProvider( new ICellToolTipProvider() { |
| 741 |
public void getToolTipText( final Item item, |
| 742 |
final int columnIndex ) |
| 743 |
{ |
| 744 |
StringBuffer buffer = new StringBuffer(); |
| 745 |
buffer.append( "[" ); |
| 746 |
buffer.append( WidgetUtil.getId( item ) ); |
| 747 |
buffer.append( "," ); |
| 748 |
buffer.append( columnIndex ); |
| 749 |
buffer.append( "]" ); |
| 750 |
treeAdapter.setToolTipText( buffer.toString() ); |
| 751 |
} |
| 752 |
} ); |
| 753 |
Fixture.fakeNewRequest(); |
| 754 |
Fixture.executeLifeCycleFromServerThread(); |
| 755 |
String markup = Fixture.getAllMarkup(); |
| 756 |
String expected = "w.setCellToolTipText("; |
| 757 |
assertTrue( markup.indexOf( expected ) == -1 ); |
| 758 |
String itemId = WidgetUtil.getId( tree.getItem( 2 ).getItem( 1 ) ); |
| 759 |
processCellToolTipRequest( tree, itemId, 0 ); |
| 760 |
markup = Fixture.getAllMarkup(); |
| 761 |
expected = "w.setCellToolTipText( \"[" + itemId + ",0]\" );"; |
| 762 |
assertTrue( markup.indexOf( expected ) != -1 ); |
| 763 |
} |
| 764 |
|
| 765 |
public void testCellTooltipRequestForMissingCells() { |
| 766 |
Tree tree = new Tree( shell, SWT.NONE ); |
| 767 |
createTreeItems( tree, 3 ); |
| 768 |
final StringBuffer log = new StringBuffer(); |
| 769 |
final ITreeAdapter treeAdapter |
| 770 |
= ( ITreeAdapter )tree.getAdapter( ITreeAdapter.class ); |
| 771 |
treeAdapter.setCellToolTipProvider( new ICellToolTipProvider() { |
| 772 |
|
| 773 |
public void getToolTipText( final Item item, final int columnIndex ) { |
| 774 |
StringBuffer buffer = new StringBuffer(); |
| 775 |
buffer.append( "[" ); |
| 776 |
buffer.append( WidgetUtil.getId( item ) ); |
| 777 |
buffer.append( "," ); |
| 778 |
buffer.append( columnIndex ); |
| 779 |
buffer.append( "]" ); |
| 780 |
log.append( buffer.toString() ); |
| 781 |
} |
| 782 |
} ); |
| 783 |
String itemId = WidgetUtil.getId( tree.getItem( 0 ) ); |
| 784 |
processCellToolTipRequest( tree, itemId, 0 ); |
| 785 |
String expected = "[" + itemId + ",0]"; |
| 786 |
assertEquals( expected, log.toString() ); |
| 787 |
log.setLength( 0 ); |
| 788 |
itemId = WidgetUtil.getId( tree.getItem( 2 ) ); |
| 789 |
processCellToolTipRequest( tree, itemId, 0 ); |
| 790 |
expected = "[" + itemId + ",0]"; |
| 791 |
assertEquals( expected, log.toString() ); |
| 792 |
log.setLength( 0 ); |
| 793 |
processCellToolTipRequest( tree, "xyz", 0 ); |
| 794 |
assertEquals( "", log.toString() ); |
| 795 |
processCellToolTipRequest( tree, itemId, 1 ); |
| 796 |
assertEquals( "", log.toString() ); |
| 797 |
createTreeColumns( tree, 2 ); |
| 798 |
processCellToolTipRequest( tree, itemId, 1 ); |
| 799 |
expected = "[" + itemId + ",1]"; |
| 800 |
assertEquals( expected, log.toString() ); |
| 801 |
log.setLength( 0 ); |
| 802 |
processCellToolTipRequest( tree, itemId, 2 ); |
| 803 |
assertEquals( "", log.toString() ); |
| 804 |
} |
| 805 |
|
| 806 |
private static void createTreeColumns( final Tree tree, final int count ) { |
| 807 |
for( int i = 0; i < count; i++ ) { |
| 808 |
new TreeColumn( tree, SWT.NONE ); |
| 809 |
} |
| 810 |
} |
| 811 |
|
| 812 |
private static void createTreeItems( final Tree tree, final int count ) { |
| 813 |
for( int i = 0; i < count; i++ ) { |
| 814 |
TreeItem item = new TreeItem( tree, SWT.NONE ); |
| 815 |
for( int j = 0; j < count; j++ ) { |
| 816 |
new TreeItem( item, SWT.NONE ); |
| 817 |
} |
| 818 |
item.setExpanded( true ); |
| 819 |
} |
| 820 |
} |
| 821 |
|
| 822 |
private static void processCellToolTipRequest( final Tree tree, |
| 823 |
final String itemId, |
| 824 |
final int column ) |
| 825 |
{ |
| 826 |
Fixture.fakeNewRequest(); |
| 827 |
String displayId = DisplayUtil.getId( tree.getDisplay() ); |
| 828 |
Fixture.fakeRequestParam( RequestParams.UIROOT, displayId ); |
| 829 |
String treeId = WidgetUtil.getId( tree ); |
| 830 |
Fixture.fakeRequestParam( JSConst.EVENT_CELL_TOOLTIP_REQUESTED, treeId ); |
| 831 |
String cellString = itemId + "," + column; |
| 832 |
Fixture.fakeRequestParam( JSConst.EVENT_CELL_TOOLTIP_DETAILS, cellString ); |
| 833 |
Fixture.executeLifeCycleFromServerThread(); |
| 834 |
} |
| 675 |
|
835 |
|
| 676 |
// TODO [tb] : Test for fake redraw calls checkAllData |
836 |
// TODO [tb] : Test for fake redraw calls checkAllData |
| 677 |
|
837 |
|