qtinternetradio/ui/src/irfavoritesview.cpp
changeset 14 896e9dbc5f19
parent 12 608f67c22514
child 15 065198191975
equal deleted inserted replaced
12:608f67c22514 14:896e9dbc5f19
    21 #include <hbgroupbox.h>
    21 #include <hbgroupbox.h>
    22 #include <hbselectiondialog.h>
    22 #include <hbselectiondialog.h>
    23 #include <QPixmap>
    23 #include <QPixmap>
    24 #include <QTimer>
    24 #include <QTimer>
    25 #include <HbInputDialog>
    25 #include <HbInputDialog>
       
    26 #include <hbscrollbar.h>
       
    27 #include <HbLineEdit>
    26 
    28 
    27 #include "irviewmanager.h"
    29 #include "irviewmanager.h"
    28 #include "irfavoritesview.h"
    30 #include "irfavoritesview.h"
    29 #include "irapplication.h"
    31 #include "irapplication.h"
    30 #include "irqfavoritesdb.h"
    32 #include "irqfavoritesdb.h"
   148         normalInit();
   150         normalInit();
   149         
   151         
   150         //initialization from handleCommand()
   152         //initialization from handleCommand()
   151         handleCommand(EIR_ViewCommand_TOBEACTIVATED, EIR_ViewCommandReason_Show);
   153         handleCommand(EIR_ViewCommand_TOBEACTIVATED, EIR_ViewCommandReason_Show);
   152         handleCommand(EIR_ViewCommand_ACTIVATED, EIR_ViewCommandReason_Show);
   154         handleCommand(EIR_ViewCommand_ACTIVATED, EIR_ViewCommandReason_Show);
       
   155         emit applicationReady();
   153     }
   156     }
   154 }
   157 }
   155 
   158 
   156 void IRFavoritesView::normalInit()
   159 void IRFavoritesView::normalInit()
   157 {
   160 {
   218         header->setHeading(hbTrId("txt_irad_subtitle_select_items_to_delete"));
   221         header->setHeading(hbTrId("txt_irad_subtitle_select_items_to_delete"));
   219 #else
   222 #else
   220         header->setHeading(hbTrId("Select items to delete"));        
   223         header->setHeading(hbTrId("Select items to delete"));        
   221 #endif
   224 #endif
   222         iMultiDeleteDialog->setHeadingWidget(header);
   225         iMultiDeleteDialog->setHeadingWidget(header);
   223         
   226     }
   224         
   227 
   225         QList<QAction *> oriActions = iMultiDeleteDialog->actions();
   228     iMultiDeleteDialog->setModel(NULL);
   226         for(int i = 0; i< oriActions.count(); i++)
       
   227         {
       
   228             iMultiDeleteDialog->removeAction(oriActions.at(i));
       
   229             delete oriActions.at(i);
       
   230         }
       
   231 
       
   232 #ifdef SUBTITLE_STR_BY_LOCID
       
   233         iMultiDeleteDialog->addAction(new HbAction(hbTrId("txt_common_button_delete")));
       
   234         iMultiDeleteDialog->addAction(new HbAction(hbTrId("txt_common_button_cancel")));
       
   235 #else
       
   236         iMultiDeleteDialog->addAction(new HbAction(hbTrId("Delete")));
       
   237         iMultiDeleteDialog->addAction(new HbAction(hbTrId("Cancel")));        
       
   238 #endif
       
   239     }
       
   240 
       
   241     iMultiDeleteDialog->setModel(iModel);
   229     iMultiDeleteDialog->setModel(iModel);
       
   230     QList<QAction *> oriActions = iMultiDeleteDialog->actions();
       
   231     if (oriActions.count() >= 2)
       
   232     {
       
   233 #ifdef SUBTITLE_STR_BY_LOCID
       
   234         oriActions.at(0)->setText(hbTrId("txt_common_button_delete"));
       
   235         oriActions.at(1)->setText(hbTrId("txt_common_button_cancel"));
       
   236 #else
       
   237         oriActions.at(0)->setText("Delete");
       
   238         oriActions.at(1)->setText("Cancel");       
       
   239 #endif
       
   240     }
       
   241     
   242     iMultiDeleteDialog->open(this,SLOT(deleteDialogClosed(HbAction*)));
   242     iMultiDeleteDialog->open(this,SLOT(deleteDialogClosed(HbAction*)));
   243 }
   243 }
   244 
   244 
   245 void IRFavoritesView::networkRequestNotified(IRQNetworkEvent aEvent)
   245 void IRFavoritesView::networkRequestNotified(IRQNetworkEvent aEvent)
   246 {
   246 {
   370     setHeadingText(headingStr);
   370     setHeadingText(headingStr);
   371     updateIconIndexArray();
   371     updateIconIndexArray();
   372     
   372     
   373     iListView->reset();
   373     iListView->reset();
   374     iListView->setCurrentIndex(iModel->index(0));
   374     iListView->setCurrentIndex(iModel->index(0));
       
   375     iListView->verticalScrollBar()->setValue(0.0);
   375 }
   376 }
   376 
   377 
   377 void IRFavoritesView::deleteDialogClosed(HbAction *aAction)
   378 void IRFavoritesView::deleteDialogClosed(HbAction *aAction)
   378 {
   379 {
   379     if (iMultiDeleteDialog->actions().at(0) == aAction)
   380     if (iMultiDeleteDialog->actions().at(0) == aAction)
   407             if (!iIconIndexArray.empty())
   408             if (!iIconIndexArray.empty())
   408             {
   409             {
   409                 iConvertTimer->start();
   410                 iConvertTimer->start();
   410             }
   411             }
   411         }
   412         }
   412     }
   413     }   
   413     iMultiDeleteDialog->setModel(NULL);    
       
   414 }
   414 }
   415 
   415 
   416 void IRFavoritesView::actionClicked(HbAction *aAction)
   416 void IRFavoritesView::actionClicked(HbAction *aAction)
   417 {
   417 {
   418     if ( aAction )
   418     if ( aAction )
   422         {
   422         {
   423             shareContextAction();
   423             shareContextAction();
   424         }
   424         }
   425         else if ( objectName == KActionDeleteName)
   425         else if ( objectName == KActionDeleteName)
   426         {
   426         {
   427             deleteContextAction();                            
   427             popupDeleteContextConfirmMessageBox();                            
   428         }
   428         }
   429         else if (objectName == KActionRenameName)
   429         else if (objectName == KActionRenameName)
   430         {
   430         {
   431             renameContextAction();
   431             renameContextAction();
   432         }
   432         }
   446     iFavoritesAction->setChecked(true);
   446     iFavoritesAction->setChecked(true);
   447 }
   447 }
   448 
   448 
   449 void IRFavoritesView::listViewLongPressed(HbAbstractViewItem *aItem, const QPointF& aCoords)
   449 void IRFavoritesView::listViewLongPressed(HbAbstractViewItem *aItem, const QPointF& aCoords)
   450 {
   450 {
   451     Q_UNUSED(aItem);         
   451     Q_UNUSED(aItem);            
   452     Q_UNUSED(aCoords);
       
   453     
   452     
   454     HbAction *action = NULL;
   453     HbAction *action = NULL;
   455     
   454     
   456     HbMenu *contextMenu = new HbMenu(); 
   455     HbMenu *contextMenu = new HbMenu(); 
   457     contextMenu->setAttribute(Qt::WA_DeleteOnClose);
   456     contextMenu->setAttribute(Qt::WA_DeleteOnClose);
   480 #else
   479 #else
   481     action = contextMenu->addAction(hbTrId("Details"));    
   480     action = contextMenu->addAction(hbTrId("Details"));    
   482 #endif
   481 #endif
   483     action->setObjectName(KActionDetailsName);
   482     action->setObjectName(KActionDetailsName);
   484     
   483     
       
   484     contextMenu->setPos(aCoords);
   485     contextMenu->open();         
   485     contextMenu->open();         
   486 } 
   486 } 
   487 
   487 
   488 void IRFavoritesView::shareContextAction()
   488 void IRFavoritesView::shareContextAction()
   489 {
   489 {
   512 
   512 
   513 void IRFavoritesView::renameContextAction()
   513 void IRFavoritesView::renameContextAction()
   514 {
   514 {
   515     int current = iListView->currentIndex().row();
   515     int current = iListView->currentIndex().row();
   516     IRQPreset *preset = iModel->getPreset(current);
   516     IRQPreset *preset = iModel->getPreset(current);
   517 #ifdef SUBTITLE_STR_BY_LOCID
   517 
   518     HbInputDialog::getText(hbTrId("txt_common_menu_rename_item"), this, SLOT(renameConfirmed(HbAction*)), preset->name);
   518     HbInputDialog *dlg = new HbInputDialog;
   519 #else
   519 #ifdef SUBTITLE_STR_BY_LOCID    
   520     HbInputDialog::getText(hbTrId("Rename"), this, SLOT(renameConfirmed(HbAction*)), preset->name);    
   520     dlg->setPromptText(hbTrId("txt_common_menu_rename_item"));
   521 #endif
   521 #else
       
   522     dlg->setPromptText(hbTrId("Rename"));
       
   523 #endif
       
   524     HbLineEdit* lineEdit = dlg->lineEdit();
       
   525     lineEdit->setMaxLength(256);
       
   526     dlg->setInputMode(HbInputDialog::TextInput);
       
   527     dlg->setValue(preset->name);   
       
   528     dlg->setAttribute(Qt::WA_DeleteOnClose);
       
   529     dlg->open(this, SLOT(renameConfirmed(HbAction*)));
   522 }
   530 }
   523 
   531 
   524 void IRFavoritesView::detailsContextAction()
   532 void IRFavoritesView::detailsContextAction()
   525 {   
   533 {   
   526     int selectedItemIndex = iListView->currentIndex().row();
   534     int selectedItemIndex = iListView->currentIndex().row();
   620     viewToolBar->addAction(iGenresAction);
   628     viewToolBar->addAction(iGenresAction);
   621     viewToolBar->addAction(iCollectionsAction);
   629     viewToolBar->addAction(iCollectionsAction);
   622     viewToolBar->addAction(iFavoritesAction);
   630     viewToolBar->addAction(iFavoritesAction);
   623     viewToolBar->addAction(iSearchAction);
   631     viewToolBar->addAction(iSearchAction);
   624 }
   632 }
       
   633 
       
   634 void IRFavoritesView::popupDeleteContextConfirmMessageBox()
       
   635 {
       
   636 #ifdef SUBTITLE_STR_BY_LOCID
       
   637     HbMessageBox::question(hbTrId("txt_irad_info_delete_station"), this, SLOT(deleteContext(HbAction*)), HbMessageBox::Ok | HbMessageBox::Cancel);
       
   638 #else
       
   639     HbMessageBox::question("Delete station?", this, SLOT(deleteContext(HbAction*)), HbMessageBox::Ok | HbMessageBox::Cancel);    
       
   640 #endif
       
   641 }
       
   642 
       
   643 void IRFavoritesView::deleteContext(HbAction *aAction)
       
   644 {
       
   645     HbMessageBox *dialog = static_cast<HbMessageBox*>(sender());
       
   646     if (dialog)
       
   647     {
       
   648         if (aAction == dialog->actions().at(0))
       
   649         {
       
   650             deleteContextAction();
       
   651         }
       
   652     }        
       
   653 }