homescreenapp/hsapplication/src/main.cpp
changeset 62 341166945d65
parent 46 23b5d6a29cce
child 63 52b0f64eeb51
equal deleted inserted replaced
57:2e2dc3d30ca8 62:341166945d65
    42                                     QTranslator &alTranslator);
    42                                     QTranslator &alTranslator);
    43 void copyWallpapersFromRom();
    43 void copyWallpapersFromRom();
    44 void copyHsDatabaseFileFromRom();
    44 void copyHsDatabaseFileFromRom();
    45 void createPrivateFolder();
    45 void createPrivateFolder();
    46 
    46 
       
    47 /*!
       
    48     \fn setHomescreenAsSystemAppL(CEikonEnv* eikonEnv)
       
    49     \ingroup group_hsapplication
       
    50     \internal
       
    51     \brief TODO
       
    52 */
    47 void setHomescreenAsSystemAppL(CEikonEnv* eikonEnv)
    53 void setHomescreenAsSystemAppL(CEikonEnv* eikonEnv)
    48 {
    54 {
    49     CApaWindowGroupName* wgName = CApaWindowGroupName::NewLC(eikonEnv->WsSession());
    55     CApaWindowGroupName* wgName = CApaWindowGroupName::NewLC(eikonEnv->WsSession());
    50     wgName->SetSystem(ETrue); // Allow only application with PowerManagement cap to shut us down
    56     wgName->SetSystem(ETrue); // Allow only application with PowerManagement cap to shut us down
    51     wgName->SetCaptionL(_L("hsapplication"));
    57     wgName->SetCaptionL(_L("hsapplication"));
    52     wgName->SetAppUid(TUid::Uid(0x20022F35));
    58     wgName->SetAppUid(TUid::Uid(0x20022F35));
    53     wgName->SetWindowGroupName(eikonEnv->RootWin());
    59     wgName->SetWindowGroupName(eikonEnv->RootWin());
    54     CleanupStack::PopAndDestroy();
    60     CleanupStack::PopAndDestroy();
    55 }
    61 }
    56 
    62 
       
    63 /*!
       
    64     \fn myMessageOutput(QtMsgType type, const char *msg)
       
    65     \ingroup group_hsapplication
       
    66     \internal    
       
    67     \brief TODO
       
    68 */
    57 void myMessageOutput(QtMsgType type, const char *msg)
    69 void myMessageOutput(QtMsgType type, const char *msg)
    58 {
    70 {
    59     switch (type) {
    71     switch (type) {
    60 
    72 
    61     case QtDebugMsg:
    73     case QtDebugMsg:
    77 }
    89 }
    78 
    90 
    79 #endif //Q_OS_SYMBIAN
    91 #endif //Q_OS_SYMBIAN
    80 
    92 
    81 /*!
    93 /*!
    82 
    94     \fn main(int argc, char *argv[])
       
    95     \ingroup group_hsapplication
       
    96     \internal    
       
    97     \brief TODO
    83 */
    98 */
    84 int main(int argc, char *argv[])
    99 int main(int argc, char *argv[])
    85 {
   100 {
    86 #ifdef Q_OS_SYMBIAN
   101 #ifdef Q_OS_SYMBIAN
    87      qInstallMsgHandler(myMessageOutput);
   102      qInstallMsgHandler(myMessageOutput);
    88 #endif
   103 #endif
    89 
   104 
    90     HSTEST_FUNC_ENTRY("HS::main()");
   105     HSTEST_FUNC_ENTRY("HS::main()");
    91 
   106 
    92     HbApplication app(argc, argv);
   107     HbApplication app(argc, argv, Hb::NoSplash);
    93 
   108 
    94 #ifdef Q_OS_SYMBIAN
   109 #ifdef Q_OS_SYMBIAN
    95     QString currentPath = QString(argv[0]).left(2);
   110     QString currentPath = QString(argv[0]).left(2);
    96     QDir::setCurrent(currentPath);
   111     QDir::setCurrent(currentPath);
    97     QString debugMsg = "HS::main() - HsApplication's current dir set to: " + currentPath;
   112     QString debugMsg = "HS::main() - HsApplication's current dir set to: " + currentPath;
   145 }
   160 }
   146 
   161 
   147 #ifdef Q_OS_SYMBIAN
   162 #ifdef Q_OS_SYMBIAN
   148 
   163 
   149 /*!
   164 /*!
   150  * Creates private folder to c: drive if not exists yet.
   165     \fn createPrivateFolder()
   151  */
   166     \ingroup group_hsapplication
       
   167     \internal    
       
   168     \brief Private folder creator
       
   169     Creates private folder to c: drive if not exists yet.
       
   170 */
   152 void createPrivateFolder()
   171 void createPrivateFolder()
   153 {
   172 {
   154     QDir dir("c:/private/20022f35/");
   173     QDir dir("c:/private/20022f35/");
   155     if(!dir.exists()) {
   174     if(!dir.exists()) {
   156         HSTEST("HS::main() - c:/private/20022f35/ does not exist.");
   175         HSTEST("HS::main() - c:/private/20022f35/ does not exist.");
   166         }
   185         }
   167     }
   186     }
   168     HSTEST("HS::main() - c:/private/20022f35/ exists.");
   187     HSTEST("HS::main() - c:/private/20022f35/ exists.");
   169 }
   188 }
   170 
   189 
   171 /*!
   190 
   172  * Copies homescreen database from rom if database does not exist on c: drive
   191 /*!
   173  */
   192     \fn copyHsDatabaseFileFromRom()
       
   193     \ingroup group_hsapplication
       
   194     \internal    
       
   195     \brief Database copier
       
   196     Copies homescreen database from rom if database does not exist on c: drive
       
   197 */
   174 void copyHsDatabaseFileFromRom()
   198 void copyHsDatabaseFileFromRom()
   175 {
   199 {
   176     QFile file("c:/private/20022f35/homescreen.db");
   200     QFile file("c:/private/20022f35/homescreen.db");
   177     //If DB file does not exist copy default DB from z: (ROM)
   201     //If DB file does not exist copy default DB from z: (ROM)
   178     if(!file.exists()) {
   202     if(!file.exists()) {
   202 #endif
   226 #endif
   203     
   227     
   204 }
   228 }
   205 
   229 
   206 /*!
   230 /*!
   207  * Copies homescreen wallpapers from rom if wallpaper directory does not exist on c: drive
   231     \fn copyWallpapersFromRom()
   208  */
   232     \ingroup group_hsapplication
       
   233     \internal    
       
   234     \brief Wallpaper copier
       
   235     Copies homescreen wallpapers from rom if wallpaper directory
       
   236     does not exist on c: drive
       
   237 */
   209 void copyWallpapersFromRom()
   238 void copyWallpapersFromRom()
   210 {
   239 {
   211     QDir dir("c:/private/20022f35/wallpapers");
   240     {
   212     if(!dir.exists()) {
   241         QDir dir("c:/private/20022f35/wallpapers/scene");
   213         dir.mkpath("c:/private/20022f35/wallpapers/");
   242         if(!dir.exists()) {
   214         QDir dir2("z:/private/20022f35/wallpapers");
   243             dir.mkpath("c:/private/20022f35/wallpapers/scene");
   215         dir2.setFilter(QDir::Files);
   244             QDir dir2("z:/private/20022f35/wallpapers/scene");
   216         QStringList files = dir2.entryList();
   245             dir2.setFilter(QDir::Files);
   217         foreach(QString file, files)
   246             QStringList files = dir2.entryList();
   218         {
   247             foreach(QString file, files)
   219             QString targetFile("c:/private/20022f35/wallpapers/" + file);
   248             {
   220             if ( QFile::copy(dir2.absoluteFilePath(file), targetFile) ) {
   249                 QString targetFile("c:/private/20022f35/wallpapers/scene/" + file);
   221                 qDebug() << "image copied" << dir2.absoluteFilePath(file);
   250                 if ( QFile::copy(dir2.absoluteFilePath(file), targetFile) ) {
   222             } 
   251                     qDebug() << "image copied" << dir2.absoluteFilePath(file);
   223             QFile createdFile(targetFile);
   252                 } 
   224             if(!createdFile.setPermissions(QFile::ReadOwner | QFile::WriteOwner)) {
   253                 QFile createdFile(targetFile);
   225                 qDebug() << "read write permission set failed for file" << targetFile;
   254                 if(!createdFile.setPermissions(QFile::ReadOwner | QFile::WriteOwner)) {
       
   255                     qDebug() << "read write permission set failed for file" << targetFile;
       
   256                 }
   226             }
   257             }
   227         }
   258         }
   228     }
   259     }
   229 }
   260     {
   230 
   261         QDir dir("c:/private/20022f35/wallpapers/page");
   231 /*!
   262         if(!dir.exists()) {
   232  * Load translation files.
   263             dir.mkpath("c:/private/20022f35/wallpapers/page");
   233  */
   264             QDir dir2("z:/private/20022f35/wallpapers/page");
       
   265             dir2.setFilter(QDir::Files);
       
   266             QStringList files = dir2.entryList();
       
   267             foreach(QString file, files)
       
   268             {
       
   269                 QString targetFile("c:/private/20022f35/wallpapers/page/" + file);
       
   270                 if ( QFile::copy(dir2.absoluteFilePath(file), targetFile) ) {
       
   271                     qDebug() << "image copied" << dir2.absoluteFilePath(file);
       
   272                 } 
       
   273                 QFile createdFile(targetFile);
       
   274                 if(!createdFile.setPermissions(QFile::ReadOwner | QFile::WriteOwner)) {
       
   275                     qDebug() << "read write permission set failed for file" << targetFile;
       
   276                 }
       
   277             }
       
   278         }
       
   279     }
       
   280 }
       
   281 
       
   282 /*!
       
   283     \fn loadTranslationFilesOnSymbian(QTranslator &commonTranslator, 
       
   284                                       QTranslator &hsTranslator, 
       
   285                                       QTranslator &alTranslator)
       
   286     \ingroup group_hsapplication
       
   287     \internal    
       
   288     \brief translation loader
       
   289     Load translation files.
       
   290 */
   234 void loadTranslationFilesOnSymbian(QTranslator &commonTranslator, 
   291 void loadTranslationFilesOnSymbian(QTranslator &commonTranslator, 
   235                                    QTranslator &hsTranslator, 
   292                                    QTranslator &hsTranslator, 
   236                                    QTranslator &alTranslator)
   293                                    QTranslator &alTranslator)
   237 {
   294 {
   238     QString locale = QLocale::system().name();
   295     QString locale = QLocale::system().name();