videocollection/tsrc/stubs/src/hbdocumentloader.cpp
changeset 36 8aed59de29f9
parent 35 3738fe97f027
child 24 7d93ee07fb27
equal deleted inserted replaced
35:3738fe97f027 36:8aed59de29f9
    23 #include "hblabel.h"
    23 #include "hblabel.h"
    24 #include "hbwidget.h"
    24 #include "hbwidget.h"
    25 #include "hbcheckbox.h"
    25 #include "hbcheckbox.h"
    26 #include "hbpushbutton.h"
    26 #include "hbpushbutton.h"
    27 #include "hblabel.h"
    27 #include "hblabel.h"
       
    28 #include "hbgroupbox.h"
    28 #include "videocollectionuiloader.h"
    29 #include "videocollectionuiloader.h"
       
    30 #include "videocollectionuiloaderdef.h"
       
    31 #include "videolistwidget.h"
       
    32 #include "videolistview.h"
       
    33 #include "videohintwidget.h"
       
    34 #include "videolistselectiondialog.h"
    29 
    35 
    30 bool HbDocumentLoader::mFindWidgetFails = false;
    36 bool HbDocumentLoader::mFindWidgetFails = false;
    31 bool HbDocumentLoader::mFindObjectFails = false;
    37 bool HbDocumentLoader::mFindObjectFails = false;
    32 bool HbDocumentLoader::mCreateObjectFails = false;
    38 bool HbDocumentLoader::mCreateObjectFails = false;
       
    39 bool HbDocumentLoader::mVideoListWidgetFailure = false;
       
    40 bool HbDocumentLoader::mCollectionWidgetFailure = false;
       
    41 bool HbDocumentLoader::mCollectionContentWidgetFailure = false;
       
    42 bool HbDocumentLoader::mLoadFails = false;
       
    43 QObjectList HbDocumentLoader::mLoadReturns;
       
    44 
       
    45 void HbDocumentLoader::cleanup() {
       
    46     mFindWidgetFails = false;
       
    47     mFindObjectFails = false;
       
    48     mCreateObjectFails = false;
       
    49     mVideoListWidgetFailure = false;
       
    50     mCollectionWidgetFailure = false;
       
    51     mCollectionContentWidgetFailure = false;
       
    52     mLoadFails = false;
       
    53     mLoadReturns.clear();
       
    54 }
    33 
    55 
    34 HbDocumentLoader::HbDocumentLoader() : mCreatingObject(false)
    56 HbDocumentLoader::HbDocumentLoader() : mCreatingObject(false)
    35 {
    57 {
    36 
    58 
    37 }
    59 }
    42     // Not stubbed.
    64     // Not stubbed.
    43 }
    65 }
    44 
    66 
    45 HbDocumentLoader::~HbDocumentLoader()
    67 HbDocumentLoader::~HbDocumentLoader()
    46 {
    68 {
       
    69     cleanup();
    47     reset();
    70     reset();
    48 }
    71 }
    49 
    72 
    50 QObjectList HbDocumentLoader::load( const QString &fileName, const QString &section , bool *ok)
    73 QObjectList HbDocumentLoader::load( const QString &fileName, const QString &section , bool *ok)
    51 {
    74 {
    52     Q_UNUSED(fileName);
    75     Q_UNUSED(fileName);
    53     Q_UNUSED(section);
    76     Q_UNUSED(section);
    54 
    77 
    55     *ok = true;
    78     *ok = true;
    56     
    79     if(mLoadFails)
    57     QObjectList objs;
    80     {
    58     return objs;
    81         *ok = false;
       
    82     }
       
    83     
       
    84     return mLoadReturns;
    59 }
    85 }
    60 
    86 
    61 QObjectList HbDocumentLoader::load( const QString &fileName, bool *ok)
    87 QObjectList HbDocumentLoader::load( const QString &fileName, bool *ok)
    62 {
    88 {
    63     Q_UNUSED(fileName);
    89     Q_UNUSED(fileName);
    64     Q_UNUSED(ok);
    90     Q_UNUSED(ok);
    65 
    91 
    66     *ok = true;
    92     *ok = true;
    67     
    93     if(mLoadFails)
    68     QObjectList objs;
    94     {
    69     return objs;
    95         *ok = false;
       
    96     }
       
    97     
       
    98     return mLoadReturns;
    70 }
    99 }
    71     
   100     
    72 QGraphicsWidget *HbDocumentLoader::findWidget(const QString &name)
   101 QGraphicsWidget *HbDocumentLoader::findWidget(const QString &name)
    73 {   
   102 {   
    74     if(mFindWidgetFails)
   103     if(mFindWidgetFails)
    75     {
   104     {
    76         return 0;
   105         return 0;
    77     }
   106     }
    78     
   107     
       
   108     if(mVideoListWidgetFailure && name == DOCML_NAME_VC_VIDEOLISTWIDGET)
       
   109     {
       
   110         return 0;
       
   111     }
       
   112     
       
   113     if(mCollectionWidgetFailure && name == DOCML_NAME_VC_COLLECTIONWIDGET)
       
   114     {
       
   115         return 0;
       
   116     }
       
   117     
       
   118     if(mCollectionContentWidgetFailure && name == DOCML_NAME_VC_COLLECTIONCONTENTWIDGET)
       
   119     {
       
   120         return 0;
       
   121     }
       
   122 
    79     QObject *obj = 0;
   123     QObject *obj = 0;
    80     
   124     
    81     for(int i = 0; i < mObjects.count(); i++)
   125     for(int i = 0; i < mObjects.count(); i++)
    82     {
   126     {
    83         if(mObjects[i]->mName == name)
   127         if(mObjects[i]->mName == name)
    89     
   133     
    90     if(!obj && !mCreatingObject)
   134     if(!obj && !mCreatingObject)
    91     {
   135     {
    92         mCreatingObject = true;
   136         mCreatingObject = true;
    93         obj = createObject(QString(), name);
   137         obj = createObject(QString(), name);
       
   138         if(obj)
       
   139         {   
       
   140             mObjects.append(new ObjectData(obj, name));
       
   141         }
    94         mCreatingObject = false;
   142         mCreatingObject = false;
    95     }
   143     }
    96     
   144     
    97     if(obj)
   145     if(obj)
    98     {
   146     {
   121 
   169 
   122     if(!obj && !mCreatingObject)
   170     if(!obj && !mCreatingObject)
   123     {
   171     {
   124         mCreatingObject = true;
   172         mCreatingObject = true;
   125         obj = createObject(QString(), name);
   173         obj = createObject(QString(), name);
   126         mObjects.append(new ObjectData(obj, name));
   174         if(obj)
       
   175         {   
       
   176             mObjects.append(new ObjectData(obj, name));
       
   177         }
   127         mCreatingObject = false;
   178         mCreatingObject = false;
   128     }    
   179     }    
   129     
   180     
   130     return obj;
   181     return obj;
   131 }
   182 }
   149     if(mCreateObjectFails) 
   200     if(mCreateObjectFails) 
   150     {
   201     {
   151         return 0;
   202         return 0;
   152     }
   203     }
   153     
   204     
   154     if(name == DOCML_NAME_OPTIONS_MENU ||
       
   155        name == DOCML_NAME_SORT_MENU)
       
   156     {
       
   157         obj = new HbMenu();
       
   158         mObjects.append(new ObjectData(obj, name));
       
   159     }
       
   160 
       
   161     if(obj)
       
   162     {
       
   163         return obj;
       
   164     }
       
   165     
       
   166     obj = doCreateObject(name);
   205     obj = doCreateObject(name);
   167     return obj;
   206     return obj;
   168 }
   207 }
   169 
   208 
   170 QObject *HbDocumentLoader::doCreateObject(const QString &name)
   209 QObject *HbDocumentLoader::doCreateObject(const QString &name)
   171 {
   210 {
   172     QObject *obj = 0;
   211     QObject *obj = 0;
   173     if(name == DOCML_NAME_VIEW)
   212     if(name == DOCML_NAME_VIEW)
   174     {
   213     {
   175         
   214         obj = new VideoListView(0, 0);
   176     } 
   215     } 
   177     else if(name == DOCML_NAME_VC_HEADINGBANNER)
   216     else if(name == DOCML_NAME_VC_HEADINGBANNER)
   178     {
   217     {
   179         
   218         obj = new HbGroupBox();
   180     }
   219     }
   181     else if(name == DOCML_NAME_VC_COLLECTIONWIDGET)
   220     else if(name == DOCML_NAME_VC_COLLECTIONWIDGET)
   182     {
   221     {
   183         
   222         obj = new VideoListWidget(0, 0);
   184     }
   223     }
   185     else if(name == DOCML_NAME_VC_COLLECTIONCONTENTWIDGET)
   224     else if(name == DOCML_NAME_VC_COLLECTIONCONTENTWIDGET)
   186     {
   225     {
   187         
   226         obj = new VideoListWidget(0, 0);
   188     }
   227     }
   189     else if(name == DOCML_NAME_VC_VIDEOLISTWIDGET)
   228     else if(name == DOCML_NAME_VC_VIDEOLISTWIDGET)
   190     {
   229     {
   191         
   230         obj = new VideoListWidget(0, 0);
   192     }
   231     }
   193     else if(name == DOCML_NAME_VC_VIDEOHINTWIDGET)
   232     else if(name == DOCML_NAME_VC_VIDEOHINTWIDGET)
   194     {
   233     {
   195         
   234         obj = new VideoHintWidget(0, 0);
   196     }
   235     }
   197     else if(name == DOCML_NAME_OPTIONS_MENU)
   236     else if(name == DOCML_NAME_OPTIONS_MENU)
   198     {
   237     {
   199         
   238         obj = new HbMenu();
   200     }
   239     }
   201     else if(name == DOCML_NAME_SORT_MENU)
   240     else if(name == DOCML_NAME_SORT_MENU)
   202     {
   241     {
   203         
   242         obj = new HbMenu();
   204     }
   243     }
   205     else if(name == DOCML_NAME_SORT_BY_DATE)
   244     else if(name == DOCML_NAME_SORT_BY_DATE)
   206     {
   245     {
   207         
   246         obj = new HbAction();
   208     }
   247     }
   209     else if(name == DOCML_NAME_SORT_BY_NAME)
   248     else if(name == DOCML_NAME_SORT_BY_NAME)
   210     {
   249     {
   211         
   250         obj = new HbAction();
   212     }
   251     }
   213     else if(name == DOCML_NAME_SORT_BY_NUMBER_OF_ITEMS)
   252     else if(name == DOCML_NAME_SORT_BY_NUMBER_OF_ITEMS)
   214     {
   253     {
   215         
   254         obj = new HbAction();
   216     }
       
   217     else if(name == DOCML_NAME_SORT_BY_RATING)
       
   218     {
       
   219         
       
   220     }
   255     }
   221     else if(name == DOCML_NAME_SORT_BY_SIZE)
   256     else if(name == DOCML_NAME_SORT_BY_SIZE)
   222     {
   257     {
   223         
   258         obj = new HbAction();
   224     }
   259     }
   225     else if(name == DOCML_NAME_ADD_TO_COLLECTION)
   260     else if(name == DOCML_NAME_ADD_TO_COLLECTION)
   226     {
   261     {
   227         
   262         obj = new HbAction();
   228     }
   263     }
   229     else if(name == DOCML_NAME_CREATE_COLLECTION)
   264     else if(name == DOCML_NAME_CREATE_COLLECTION)
   230     {
   265     {
   231         
   266         obj = new HbAction();
   232     }
   267     }
   233     else if(name == DOCML_NAME_DELETE_MULTIPLE)
   268     else if(name == DOCML_NAME_DELETE_MULTIPLE)
   234     {
   269     {
   235         
   270         obj = new HbAction();
   236     }
   271     }
   237     else if(name == DOCML_NAME_HINT_BUTTON)
   272     else if(name == DOCML_NAME_HINT_BUTTON)
   238     {
   273     {
   239         obj = new HbPushButton();
   274         obj = new HbPushButton();
   240     }
   275     }
   246     {
   281     {
   247         obj = new HbLabel();
   282         obj = new HbLabel();
   248     }
   283     }
   249     else if(name == DOCML_VIDEOSELECTIONDIALOG_FILE)
   284     else if(name == DOCML_VIDEOSELECTIONDIALOG_FILE)
   250     {
   285     {
   251         
   286         obj = new VideoListSelectionDialog(0, 0);
   252     }
   287     }
   253     else if(name == DOCML_NAME_DIALOG)
   288     else if(name == DOCML_NAME_DIALOG)
   254     {
   289     {
   255         
   290         obj = new VideoListSelectionDialog(0, 0);
   256     }
   291     }
   257     else if(name == DOCML_NAME_DLG_HEADINGLBL)
   292     else if(name == DOCML_NAME_DLG_HEADINGLBL)
   258     {
   293     {
   259         obj = new HbLabel();
   294         obj = new HbLabel();
   260     }
   295     }
   272     }
   307     }
   273     else if(name == DOCML_NAME_LIST_CONTAINER)
   308     else if(name == DOCML_NAME_LIST_CONTAINER)
   274     {
   309     {
   275         obj = new HbStackedWidget();
   310         obj = new HbStackedWidget();
   276     }
   311     }
   277     
       
   278     if(obj)
       
   279     {   
       
   280         mObjects.append(new ObjectData(obj, name));
       
   281     }
       
   282     return obj;
   312     return obj;
   283 }
   313 }
   284