widgetmodel/alfwidgetmodel/src/alfgridlayoutpolicyimpl.cpp
branchRCL_3
changeset 19 4ea6f81c838a
parent 17 514d98f21c43
child 20 0e9bb658ef58
--- a/widgetmodel/alfwidgetmodel/src/alfgridlayoutpolicyimpl.cpp	Mon Jun 21 16:15:51 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,206 +0,0 @@
-/*
-* Copyright (c) 2008 Nokia Corporation and/or its subsidiary(-ies). 
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description:  layoutmanager implementation class with focus handling in 1D (next/previous)
-*
-*/
-
-
-#include <alf/ialfwidgetcontrol.h>
-#include <alf/alfvisual.h>
-#include <alf/alfgridlayout.h>
-#include "alf/alfwidget.h"
-#include <alf/alfvisualfactory.h>
-#include <alf/alfexceptions.h>
-#include <alf/ialflayoutpreferences.h>
-#include <osn/osnnew.h>
-
-//stl
-#include <algorithm> //for min & max
-
-#include "alfgridlayoutpolicyimpl.h"
-
-using namespace Alf;
-
-namespace Alf
-    {
-//ifdef to prevent compiler warning: className not used.
-#ifdef ALF_DEBUG_EXCEPTIONS
-static const char* const className = "AlfGridLayoutPolicyImpl";
-#endif
-    
-    
-// ======== MEMBER FUNCTIONS ========
-    
-// ---------------------------------------------------------------------------
-// layoutmanagerimpl constructor
-// ---------------------------------------------------------------------------
-//    
-AlfGridLayoutPolicyImpl::AlfGridLayoutPolicyImpl(
-    AlfGridLayoutManager& aGridLayoutManager) : 
-    mGridLayoutManager(aGridLayoutManager)
-    {
-    }
-    
-// ---------------------------------------------------------------------------
-// creates the layout used by the layoutmanager.
-// ---------------------------------------------------------------------------
-//    
-AlfGridLayoutPolicyImpl::~AlfGridLayoutPolicyImpl()
-    {
-    }
-
-// ---------------------------------------------------------------------------
-// from IAlfGridLayoutPolicy
-// Sets the number and weights of blocks in this grid layout in the direction of the specified
-// dimension. 
-// ---------------------------------------------------------------------------
-void AlfGridLayoutPolicyImpl::fillWeights(gridLayoutDimension aDim, int aCount, const TAlfMetric& aWeight)
-    {
-    CAlfGridLayout& gridLayout = layout();
-    TAlfGridDimension dim = (TAlfGridDimension)aDim;
-    TRAPD(err, gridLayout.FillWeightsL(dim, aCount, aWeight));
-    if(err != KErrNone)
-        {
-        ALF_THROW(AlfVisualException, err, className);
-        }
-    }
-
-// ---------------------------------------------------------------------------
-// from IAlfGridLayoutPolicy
-// Add a new line of blocks to this grid layout at the last position in the direction of the 
-// specified dimension. 
-// ---------------------------------------------------------------------------
-void AlfGridLayoutPolicyImpl::appendWeight(gridLayoutDimension aDim, const TAlfMetric& aWeight)
-    {
-    CAlfGridLayout& gridLayout = layout();
-    TAlfGridDimension dim = (TAlfGridDimension)aDim;
-    TRAPD(err, gridLayout.AppendWeightL(dim, aWeight));
-    if(err != KErrNone)
-        {
-        ALF_THROW(AlfVisualException, err, className);
-        }
-    }
-
-// ---------------------------------------------------------------------------
-// from IAlfGridLayoutPolicy
-// Add a new line of blocks to this grid layout at the specified position in the direciton of 
-// the specified dimension. 
-// ---------------------------------------------------------------------------
-void AlfGridLayoutPolicyImpl::insertWeight(gridLayoutDimension aDim, const TAlfMetric& aWeight, int aPos)
-    {
-    CAlfGridLayout& gridLayout = layout();
-    TAlfGridDimension dim = (TAlfGridDimension)aDim;
-    TRAPD(err, gridLayout.InsertWeightL(dim, aWeight, aPos));
-    if(err != KErrNone)
-        {
-        ALF_THROW(AlfVisualException, err, className);
-        }
-    }
-
-// ---------------------------------------------------------------------------
-// from IAlfGridLayoutPolicy
-// Sets the weight of a specific line of blocks in this grid layout, in the direction of the supplied dimension.
-// ---------------------------------------------------------------------------
-void AlfGridLayoutPolicyImpl::replaceWeight(gridLayoutDimension aDim, const TAlfMetric& aWeight, int aPos)
-    {
-    CAlfGridLayout& gridLayout = layout();
-    TAlfGridDimension dim = (TAlfGridDimension)aDim;
-    TRAPD(err, gridLayout.ReplaceWeightL(dim, aWeight, aPos));
-    if(err != KErrNone)
-        {
-        ALF_THROW(AlfVisualException, err, className);
-        }
-    }
-
-// ---------------------------------------------------------------------------
-// from IAlfGridLayoutPolicy
-// Remove a line of blocks from this grid layout at the specified position in the 
-// specified dimension. 
-// ---------------------------------------------------------------------------
-void AlfGridLayoutPolicyImpl::removeWeight(gridLayoutDimension aDim, int aPos)
-    {
-    CAlfGridLayout& gridLayout = layout();
-    TAlfGridDimension dim = (TAlfGridDimension)aDim;
-    TRAPD(err, gridLayout.RemoveWeightL(dim, aPos));
-    if(err != KErrNone)
-        {
-        ALF_THROW(AlfVisualException, err, className);
-        }
-    }
-
-
-// ---------------------------------------------------------------------------
-// from IAlfGridLayoutPolicy
-// Returns the weight of a specific line of blocks in this grid layout, in the
-// specified dimension. 
-// ---------------------------------------------------------------------------
-TAlfMetric AlfGridLayoutPolicyImpl::weight(gridLayoutDimension aDim, int aPos) const
-    {
-    CAlfGridLayout& gridLayout = layout();
-    TAlfGridDimension dim = (TAlfGridDimension)aDim;
-    TAlfMetric result;
-    TRAPD(err, result = gridLayout.Weight(dim, aPos));
-    if(err != KErrNone)
-        {
-        ALF_THROW(AlfVisualException, err, className);
-        }
-    return result;
-    }
-
-    
-// ---------------------------------------------------------------------------
-// from IAlfGridLayoutPolicy
-// Return the number of lines of blocks in this grid, along the specified dimension
-// ---------------------------------------------------------------------------
-int AlfGridLayoutPolicyImpl::count(gridLayoutDimension aDim) const
-    {
-    CAlfGridLayout& gridLayout = layout();
-    TAlfGridDimension dim = (TAlfGridDimension)aDim;
-    int result(0);
-    TRAPD(err, result = gridLayout.DimensionCount(dim));
-    if(err != KErrNone)
-        {
-        ALF_THROW(AlfVisualException, err, className);
-        }
-    return result;
-    }
-
-
-
-// ---------------------------------------------------------------------------
-// From class IAlfInterfaceBase.
-// Getter for interfaces provided by the element.
-// ---------------------------------------------------------------------------
-//
-IAlfInterfaceBase* AlfGridLayoutPolicyImpl::makeInterface(const IfId& aType)
-    {
-    UString param(aType.mImplementationId);
-    if (param == IAlfGridLayoutPolicy::type().mImplementationId)
-        {
-        return this;
-        }      
-    
-    return NULL;
-    }
-    
-// ---------------------------------------------------------------------------
-// returns the gridlayout used by the layoutmanager
-// ---------------------------------------------------------------------------
-//
-CAlfGridLayout& AlfGridLayoutPolicyImpl::layout() const
-    {
-    return dynamic_cast<CAlfGridLayout&>(mGridLayoutManager.getLayout());
-    }
-
- } // Alf