qtinternetradio/ui/src/irmainview.cpp
branchGCC_SURGE
changeset 13 c9471d26c7f2
parent 12 608f67c22514
child 14 896e9dbc5f19
equal deleted inserted replaced
9:bfc95e24a059 13:c9471d26c7f2
    12 * Contributors:
    12 * Contributors:
    13 *
    13 *
    14 * Description:
    14 * Description:
    15 *
    15 *
    16 */
    16 */
       
    17 #include <hbtoolbar.h>
    17 #include <hbaction.h>
    18 #include <hbaction.h>
    18 #include <hblistview.h>
    19 #include <hblistview.h>
    19 
    20 
    20 #include "irapplication.h"
    21 #include "irapplication.h"
    21 #include "irviewmanager.h"
    22 #include "irviewmanager.h"
    34  */
    35  */
    35 IRMainView::IRMainView(IRApplication* aApplication, TIRViewId aViewId) : 
    36 IRMainView::IRMainView(IRApplication* aApplication, TIRViewId aViewId) : 
    36                                                       IrAbstractListViewBase(aApplication, aViewId),
    37                                                       IrAbstractListViewBase(aApplication, aViewId),
    37                                                       iMainModel(NULL)
    38                                                       iMainModel(NULL)
    38 {
    39 {
    39     setFlag(EViewFlag_ClearStackWhenActivate);
    40     setFlag(EViewFlag_ClearStackWhenActivate|EViewFlag_StickyViewEnabled);
    40 	iLoader.load(ABSTRACT_LIST_VIEW_BASE_LAYOUT_FILENAME, ABSTRACT_LIST_VIEW_BASE_WITH_TOOLBAR_SECTION);
    41 	iLoader.load(ABSTRACT_LIST_VIEW_BASE_LAYOUT_FILENAME, ABSTRACT_LIST_VIEW_BASE_WITH_TOOLBAR_SECTION);
    41 	
    42 	
    42 	//if this view is not starting view, finish all initialization in constructor
    43 	//if this view is not starting view, finish all initialization in constructor
    43 	if (getViewManager()->views().count() > 0)
    44 	if (getViewManager()->views().count() > 0)
    44 	{
    45 	{
    45 	    lazyInit();
    46 	    normalInit();
    46 	}
    47 	}
    47 }
    48 }
    48 
    49 
    49 /*
    50 /*
    50  * Description : destructor
    51  * Description : destructor
   114     }
   115     }
   115     
   116     
   116     switch (aEvent)
   117     switch (aEvent)
   117     {
   118     {
   118     case EIRQNetworkConnectionEstablished:
   119     case EIRQNetworkConnectionEstablished:
   119         iApplication->closeConnectingDialog();
       
   120         
       
   121         if (EIR_UseNetwork_SelectItem == getUseNetworkReason())
   120         if (EIR_UseNetwork_SelectItem == getUseNetworkReason())
   122         {
   121         {
   123             handleItemSelected();
   122             handleItemSelected();
   124         }
   123         }
   125         setUseNetworkReason(EIR_UseNetwork_NoReason);
       
   126         
       
   127         break;
   124         break;
   128         
   125         
   129     default:
   126     default:
   130         setCheckedAction();
   127         setCheckedAction();
   131         break;
   128         break;
   132     }
   129     }
       
   130     
       
   131     setUseNetworkReason(EIR_UseNetwork_NoReason);
   133 }
   132 }
   134 
   133 
   135 /*
   134 /*
   136  * Description : check wether the content we need is already cached
   135  * Description : check wether the content we need is already cached
   137  *  
   136  *  
   171 {
   170 {
   172     IrAbstractListViewBase::updateView();
   171     IrAbstractListViewBase::updateView();
   173     iMainModel->checkUpdate();
   172     iMainModel->checkUpdate();
   174 }
   173 }
   175 
   174 
       
   175 //from base class IRBaseView
       
   176 TIRHandleResult IRMainView::handleCommand(TIRViewCommand aCommand, TIRViewCommandReason aReason)
       
   177 {
       
   178     if (!initCompleted())
       
   179     {
       
   180         return EIR_DoDefault;
       
   181     }
       
   182     
       
   183     Q_UNUSED(aReason);
       
   184     TIRHandleResult ret = IrAbstractListViewBase::handleCommand(aCommand, aReason);
       
   185     
       
   186     switch (aCommand)
       
   187     {
       
   188     case EIR_ViewCommand_ACTIVATED:
       
   189         getViewManager()->saveScreenShot();
       
   190         break;
       
   191         
       
   192     default:
       
   193         break;
       
   194     }
       
   195     
       
   196     return ret;
       
   197 }
       
   198 
   176 void IRMainView::lazyInit()
   199 void IRMainView::lazyInit()
   177 {
   200 {
   178     if (!initCompleted())
   201     if (!initCompleted())
   179     {
   202     {
       
   203         normalInit();
       
   204         
       
   205         //initialization from handleCommand()
       
   206         handleCommand(EIR_ViewCommand_ACTIVATED, EIR_ViewCommandReason_Show);
       
   207     }
       
   208 }
       
   209 
       
   210 void IRMainView::normalInit()
       
   211 {
       
   212     if (!initCompleted())
       
   213     {
   180         IrAbstractListViewBase::lazyInit();
   214         IrAbstractListViewBase::lazyInit();
   181         
   215         initToolBar();
   182         setCheckedAction();
   216         setCheckedAction();
   183         
   217         
   184         connect(iNetworkController, SIGNAL(networkRequestNotified(IRQNetworkEvent)),
   218         connect(iNetworkController, SIGNAL(networkRequestNotified(IRQNetworkEvent)),
   185                 this, SLOT(networkRequestNotified(IRQNetworkEvent)));
   219                 this, SLOT(networkRequestNotified(IRQNetworkEvent)));
   186         
   220         
   189         iListView->setModel(iMainModel);
   223         iListView->setModel(iMainModel);
   190         
   224         
   191         setInitCompleted(true);
   225         setInitCompleted(true);
   192     }
   226     }
   193 }
   227 }
       
   228 
       
   229 void IRMainView::initToolBar()
       
   230 {
       
   231     HbToolBar *viewToolBar = toolBar();
       
   232     viewToolBar->addAction(iGenresAction);
       
   233     viewToolBar->addAction(iCollectionsAction);
       
   234     viewToolBar->addAction(iFavoritesAction);
       
   235     viewToolBar->addAction(iSearchAction);
       
   236 }