diff -r c8382f7b54ef -r 726fba06891a emailuis/uicomponents/src/fstreevisualizerbase.cpp --- a/emailuis/uicomponents/src/fstreevisualizerbase.cpp Wed Sep 15 11:52:37 2010 +0300 +++ b/emailuis/uicomponents/src/fstreevisualizerbase.cpp Wed Oct 13 14:11:15 2010 +0300 @@ -24,6 +24,7 @@ #include //////TOOLKIT INCLUDES +// SF #include #include #include @@ -49,6 +50,7 @@ //visuals #include #include +// //////PROJECT INCLUDES @@ -362,6 +364,8 @@ aItems.Reset(); TInt i(0); aOffset = 0; + aBeginIndex = KErrNotFound; + if (aY > Height()) { aHeight = -1; @@ -1062,40 +1066,20 @@ // Sets icon for a mark sign. // --------------------------------------------------------------------------- // -void CFsTreeVisualizerBase::SetMarkOnIcon(CAlfTexture& aMarkOnIcon) +void CFsTreeVisualizerBase::SetMarkIcon(CAlfTexture& aMarkIcon) { FUNC_LOG; - iMarkOnIcon = &aMarkOnIcon; - } - -// --------------------------------------------------------------------------- -// Sets icon for a unmark sign. -// --------------------------------------------------------------------------- -// -void CFsTreeVisualizerBase::SetMarkOffIcon(CAlfTexture& aMarkOffIcon) - { - FUNC_LOG; - iMarkOffIcon = &aMarkOffIcon; + iMarkIcon = &aMarkIcon; } // --------------------------------------------------------------------------- // Returns icon used to mark items. // --------------------------------------------------------------------------- // -CAlfTexture* CFsTreeVisualizerBase::MarkOnIcon() +CAlfTexture* CFsTreeVisualizerBase::MarkIcon() { FUNC_LOG; - return iMarkOnIcon; - } - -// --------------------------------------------------------------------------- -// Returns icon used to unmark items. -// --------------------------------------------------------------------------- -// -CAlfTexture* CFsTreeVisualizerBase::MarkOffIcon() - { - FUNC_LOG; - return iMarkOffIcon; + return iMarkIcon; } // --------------------------------------------------------------------------- @@ -1127,7 +1111,7 @@ data = &(iTreeData->ItemData(aItemId)); vis->UpdateL(*data, IsItemFocused(aItemId) && IsFocusShown(), - iTreeData->Level(aItemId), iMarkOnIcon, iMarkOffIcon, iMenuIcon); + iTreeData->Level(aItemId), iMarkIcon, iMenuIcon); } } @@ -1287,8 +1271,7 @@ MakeSelectorVisibleL(EFalse); visualizer->UpdateL(*data, EFalse, iTreeData->Level(iFocusedItem), - iMarkOnIcon, iMarkOffIcon, - iMenuIcon, iCurrentScrollSpeed); + iMarkIcon, iMenuIcon, iCurrentScrollSpeed); } } } @@ -1299,57 +1282,6 @@ } // --------------------------------------------------------------------------- -// The functions sets wether all item in the list should be always in -// extended state or in normal state. -// --------------------------------------------------------------------------- -// -void CFsTreeVisualizerBase::SetMarkingModeL( TBool aMarkingMode ) - { - FUNC_LOG; - // Do not change this to: IsMarkingMode() != aAlwaysExtended, because - // it will not work. TBool is defined as TInt and thus this comparison - // comes out as TInt != TInt, which always evaluates true in this case. - if ( ( IsMarkingMode() && !aMarkingMode ) || - ( !IsMarkingMode() && aMarkingMode ) ) - { - iFlags.Assign(EMarkingMode, aMarkingMode); - TFsTreeIterator treeIter( - iTreeData->Iterator(KFsTreeRootID, KFsTreeRootID)); - while (treeIter.HasNext()) - { - TFsTreeItemId itemId(treeIter.Next()); - if (itemId != KFsTreeNoneID && !iTreeData->IsNode(itemId)) - { - MFsTreeItemVisualizer* itemviz(iTreeData->ItemVisualizer(itemId)); - ApplyListSpecificValuesToItem(itemviz); - } - } - const TBool isUpdating(iWorld.IsUpdating()); - if (!isUpdating) - { - iWorld.BeginUpdate(); - } - iWorld.RemoveAllL(); - treeIter = iTreeData->Iterator(KFsTreeRootID, KFsTreeRootID, - KFsTreeIteratorSkipCollapsedFlag); - while (treeIter.HasNext()) - { - TFsTreeItemId itemId(treeIter.Next()); - if (itemId != KFsTreeNoneID) - { - MFsTreeItemVisualizer* itemviz(iTreeData->ItemVisualizer(itemId)); - iWorld.AppendL(itemId, itemviz->Size()); - } - } - iViewPort.ClearCache(); - if (!isUpdating) - { - iWorld.EndUpdateL(); - } - } - } - -// --------------------------------------------------------------------------- // The function sets some properties of the selector like bitmap, type // of movement. // --------------------------------------------------------------------------- @@ -1780,7 +1712,7 @@ if ( visualizer ) { visualizer->UpdateL( iTreeData->ItemData( iFocusedItem ), EFalse, - iTreeData->Level( iFocusedItem ), iMarkOnIcon, iMarkOffIcon, iMenuIcon, 0 ); + iTreeData->Level( iFocusedItem ), iMarkIcon, iMenuIcon, 0 ); } iFocusedItem = aItemId; @@ -1791,8 +1723,7 @@ if ( visualizer ) { visualizer->UpdateL( iTreeData->ItemData( iFocusedItem ), IsFocusShown(), - iTreeData->Level( iFocusedItem ), iMarkOnIcon, - iMarkOffIcon, iMenuIcon, 0 ); + iTreeData->Level( iFocusedItem ), iMarkIcon, iMenuIcon, 0 ); } if ( iFocusedItem != KFsTreeNoneID ) @@ -1841,6 +1772,7 @@ // Sets an item as first visible one in the list. // --------------------------------------------------------------------------- // +// void CFsTreeVisualizerBase::SetFirstVisibleItemL(const TFsTreeItemId /*aItemId*/) { FUNC_LOG; @@ -1856,6 +1788,9 @@ TFsTreeItemId retId = KFsTreeNoneID; if (iVisibleItems.Count()) { + // + // TRAP_IGNORE( ClearVisibleItemsListL(EFalse) ); + // retId = iVisibleItems[0]; } else @@ -1889,6 +1824,7 @@ // Displays the list. // --------------------------------------------------------------------------- // +// void CFsTreeVisualizerBase::ShowListL(const TBool aFadeIn, const TBool aSlideIn) { @@ -1897,8 +1833,7 @@ if (iTreeData->Count() == 0) { iRootVisualizer->ShowL(*iRootLayout); - iRootVisualizer->UpdateL(*iRootData, EFalse, 0, iMarkOnIcon, - iMarkOffIcon, iMenuIcon); + iRootVisualizer->UpdateL(*iRootData, EFalse, 0, iMarkIcon, iMenuIcon); } else { @@ -1913,7 +1848,7 @@ if ( visualizer ) { visualizer->UpdateL(iTreeData->ItemData(itemId), itemFocused, - iTreeData->Level(itemId), iMarkOnIcon, iMarkOffIcon, iMenuIcon, + iTreeData->Level(itemId), iMarkIcon, iMenuIcon, 0); } } @@ -1990,6 +1925,7 @@ UpdateScrollBarL(); } +// // --------------------------------------------------------------------------- // The function assures that the list view is correct. @@ -2592,7 +2528,7 @@ vis->UpdateL(iTreeData->ItemData(aItemId), IsItemFocused(aItemId) && IsFocusShown(), iTreeData->Level(aItemId), - iMarkOnIcon, iMarkOffIcon, iMenuIcon, 0); + iMarkIcon, iMenuIcon, 0); } } } @@ -2661,16 +2597,6 @@ } // --------------------------------------------------------------------------- -// The function returns if marking mode is on or off -// --------------------------------------------------------------------------- -// -TBool CFsTreeVisualizerBase::IsMarkingMode() - { - FUNC_LOG; - return iFlags.IsSet(EMarkingMode); - } - -// --------------------------------------------------------------------------- // Set the background texture, clears the background color. // --------------------------------------------------------------------------- // @@ -2806,7 +2732,9 @@ iWatermark = CFsWatermark::NewL(*iOwnerControl, *iWatermarkLayout); } + // iWatermark->SetWatermarkTextureL(*aTexture); + // } else { @@ -2918,8 +2846,8 @@ if (!iWorld.IsUpdating()) { iRootVisualizer->ShowL(*iRootLayout); - iRootVisualizer->UpdateL(*iRootData, EFalse, 0, iMarkOnIcon, - iMarkOffIcon, iMenuIcon); + iRootVisualizer->UpdateL(*iRootData, EFalse, 0, iMarkIcon, + iMenuIcon); } iVisibleItems.Reset(); iWorld.RemoveAllL(); @@ -2941,7 +2869,7 @@ { visualizer->UpdateL(iTreeData->ItemData(itemId), IsItemFocused(itemId), iTreeData->Level(itemId), - iMarkOnIcon, iMarkOffIcon, iMenuIcon, 0); + iMarkIcon, iMenuIcon, 0); } } break; @@ -3001,8 +2929,7 @@ if (iTreeData->Count() == 0) { iRootVisualizer->ShowL(*iRootLayout); - iRootVisualizer->UpdateL(*iRootData, EFalse, 0, iMarkOnIcon, - iMarkOffIcon, iMenuIcon); + iRootVisualizer->UpdateL(*iRootData, EFalse, 0, iMarkIcon, iMenuIcon); } else { @@ -3338,16 +3265,20 @@ if (iVisualizationState == EFsTreeVisible && iVisualizerObserver) { - TRAP_IGNORE(iVisualizerObserver->TreeVisualizerEventL( + // Touch + TRAP_IGNORE(iVisualizerObserver->TreeVisualizerEventL( MFsTreeVisualizerObserver::EFsTreeListVisualizerShown, KFsTreeNoneID )); + // } if (iVisualizationState == EFsTreeHidden && iVisualizerObserver) { - TRAP_IGNORE(iVisualizerObserver->TreeVisualizerEventL( + // Touch + TRAP_IGNORE(iVisualizerObserver->TreeVisualizerEventL( MFsTreeVisualizerObserver::EFsTreeListVisualizerHidden, KFsTreeNoneID )); + // } } @@ -3396,7 +3327,8 @@ if (iVisualizationState == EFsTreeVisible && iVisualizerObserver) { - TRAP_IGNORE(iVisualizerObserver->TreeVisualizerEventL( + // Touch + TRAP_IGNORE(iVisualizerObserver->TreeVisualizerEventL( MFsTreeVisualizerObserver::EFsTreeListVisualizerShown, KFsTreeNoneID )); @@ -3404,9 +3336,10 @@ if (iVisualizationState == EFsTreeHidden && iVisualizerObserver) { - TRAP_IGNORE(iVisualizerObserver->TreeVisualizerEventL( + TRAP_IGNORE(iVisualizerObserver->TreeVisualizerEventL( MFsTreeVisualizerObserver::EFsTreeListVisualizerHidden, KFsTreeNoneID )); + // } } @@ -3862,8 +3795,7 @@ { visualizer->UpdateL(iTreeData->ItemData(itemId), IsItemFocused(itemId) && IsFocusShown(), - iTreeData->Level(itemId), iMarkOnIcon, iMarkOffIcon, - iMenuIcon, 0, EFalse); + iTreeData->Level(itemId), iMarkIcon, iMenuIcon, 0, EFalse); } } UpdateSelectorVisualL(); @@ -3933,6 +3865,9 @@ border->SetLayer(EAlfBrushLayerBackground); border->SetBorders(-8, -8, -8, -8); + // + // layout values needed here (not: only used from FS action menu) + // iBorderLayout->SetPadding(TPoint(5, 5)); if (iBorderLayout->Brushes()->Count() > 0) @@ -4614,8 +4549,6 @@ FUNC_LOG; //list can have all items in extended or in a normal state aItemVis->SetAlwaysExtended(IsItemsAlwaysExtended()); - - aItemVis->SetMarkingMode(IsMarkingMode()); //global indentation in pixels for a list component aItemVis->SetIndentation(iLevelIndentation); @@ -4716,6 +4649,8 @@ return isFocused; } +// "Base class modifications for using touch" + // --------------------------------------------------------------------------- // C++ constructor. // --------------------------------------------------------------------------- @@ -4761,6 +4696,7 @@ iFlags.Assign( EPopupMode, aPopUpMode ); iFlags.Set( EExpandCollapseOnLongTap ); } +// // --------------------------------------------------------------------------- // Second phase constructor. @@ -4974,6 +4910,7 @@ { UpdatePhysicsL(); } + UpdateScrollBarL(); } // --------------------------------------------------------------------------- @@ -5019,8 +4956,8 @@ itemId); visualizer->UpdateL(iTreeData->ItemData(itemId), IsItemFocused(itemId) && IsFocusShown(), - iTreeData->Level(itemId), iMarkOnIcon, - iMarkOffIcon, iMenuIcon, 0); + iTreeData->Level(itemId), iMarkIcon, iMenuIcon, + 0); } } CleanupStack::PopAndDestroy(); @@ -5076,7 +5013,7 @@ visualizerLayout.SetSize(tpItemSize); visualizer->UpdateL(iTreeData->ItemData(itemId), IsItemFocused(itemId) && IsFocusShown(), - iTreeData->Level(itemId), iMarkOnIcon, iMarkOffIcon, iMenuIcon, + iTreeData->Level(itemId), iMarkIcon, iMenuIcon, 0); visualizerLayout.PropertySetIntegerL(KPropertyItemId(), itemId); visualizerLayout.Brushes()->AppendL(iBorderBrush, @@ -5533,3 +5470,5 @@ return ( iTouchPressed || iFocusVisible ) && iFlags.IsClear( EListPanning ); } + +//