| 
						
						
							
								
							
						
						
					 | 
				
			
			 | 
			 | 
			
				@ -19,18 +19,18 @@
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				#include <Qt/QtDeclarative>
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				#include <QX11Info>
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				#include "qdeclarativeboostercache.h"
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				#include "qdeclarativeboostercache_p.h"
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				#include "mdeclarativecache.h"
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				#include "mdeclarativecache_p.h"
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				#ifdef Q_WS_X11
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				#include <X11/Xlib.h>
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				#include <X11/Xutil.h>
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				#endif
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				QDeclarativeBoosterCachePrivate * const QDeclarativeBoosterCache::d_ptr = new QDeclarativeBoosterCachePrivate;
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				const int QDeclarativeBoosterCachePrivate::ARGV_LIMIT = 32;
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				MDeclarativeCachePrivate * const MDeclarativeCache::d_ptr = new MDeclarativeCachePrivate;
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				const int MDeclarativeCachePrivate::ARGV_LIMIT = 32;
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				QDeclarativeBoosterCachePrivate::QDeclarativeBoosterCachePrivate() :
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				MDeclarativeCachePrivate::MDeclarativeCachePrivate() :
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				    qApplicationInstance(0),
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				    qDeclarativeViewInstance(0),
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				    initialArgc(ARGV_LIMIT),
 | 
			
		
		
	
	
		
			
				
					| 
						
						
						
							
								
							
						
					 | 
				
			
			 | 
			 | 
			
				@ -38,17 +38,17 @@ QDeclarativeBoosterCachePrivate::QDeclarativeBoosterCachePrivate() :
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				{
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				}
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				QDeclarativeBoosterCachePrivate::~QDeclarativeBoosterCachePrivate()
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				MDeclarativeCachePrivate::~MDeclarativeCachePrivate()
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				{
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				    delete qDeclarativeViewInstance;
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				    delete[] initialArgv;
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				}
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				void QDeclarativeBoosterCachePrivate::populate()
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				void MDeclarativeCachePrivate::populate()
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				{
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				    
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				    static const char *const emptyString = "";
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				    static const char *const appNameFormat = "qdeclarativeboostercache_pre_initialized_qapplication%d";
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				    static const char *const appNameFormat = "mdeclarativecache_pre_initialized_qapplication%d";
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				    static char appName[strlen(appNameFormat) + 8];
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				    // Append pid to appName to make it unique. This is required because the
 | 
			
		
		
	
	
		
			
				
					| 
						
						
						
							
								
							
						
					 | 
				
			
			 | 
			 | 
			
				@ -57,7 +57,7 @@ void QDeclarativeBoosterCachePrivate::populate()
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				    sprintf(appName, appNameFormat, getpid());
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				    // We support at most ARGV_LIMIT arguments in QCoreApplication. These will be set when real
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				    // arguments are known (in QDeclarativeBoosterCachePrivate::qApplication). 
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				    // arguments are known (in MDeclarativeCachePrivate::qApplication). 
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				    initialArgv[0] = const_cast<char *>(appName);
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				    for (int i = 1; i < initialArgc; i++) {
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				        initialArgv[i] = const_cast<char *>(emptyString);
 | 
			
		
		
	
	
		
			
				
					| 
						
						
						
							
								
							
						
					 | 
				
			
			 | 
			 | 
			
				@ -75,7 +75,7 @@ void QDeclarativeBoosterCachePrivate::populate()
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				    qDeclarativeViewInstance = new QDeclarativeView();
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				}
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				QApplication* QDeclarativeBoosterCachePrivate::qApplication(int &argc, char **argv)
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				QApplication* MDeclarativeCachePrivate::qApplication(int &argc, char **argv)
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				{
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				    if (qApplicationInstance == 0) {
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				        qApplicationInstance = new QApplication(argc, argv);
 | 
			
		
		
	
	
		
			
				
					| 
						
							
								
							
						
						
							
								
							
						
						
					 | 
				
			
			 | 
			 | 
			
				@ -121,7 +121,7 @@ QApplication* QDeclarativeBoosterCachePrivate::qApplication(int &argc, char **ar
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				    return qApplicationInstance;
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				}
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				QDeclarativeView* QDeclarativeBoosterCachePrivate::qDeclarativeView()
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				QDeclarativeView* MDeclarativeCachePrivate::qDeclarativeView()
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				{
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				    QDeclarativeView *returnValue;
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				    if (qDeclarativeViewInstance != 0) {
 | 
			
		
		
	
	
		
			
				
					| 
						
						
						
							
								
							
						
					 | 
				
			
			 | 
			 | 
			
				@ -133,17 +133,17 @@ QDeclarativeView* QDeclarativeBoosterCachePrivate::qDeclarativeView()
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				    return returnValue;
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				}
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				void QDeclarativeBoosterCache::populate()
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				void MDeclarativeCache::populate()
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				{
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				    d_ptr->populate();
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				}
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				QApplication* QDeclarativeBoosterCache::qApplication(int &argc, char **argv)
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				QApplication* MDeclarativeCache::qApplication(int &argc, char **argv)
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				{    
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				    return d_ptr->qApplication(argc, argv);
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				}
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				QDeclarativeView* QDeclarativeBoosterCache::qDeclarativeView()
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				QDeclarativeView* MDeclarativeCache::qDeclarativeView()
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				{
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				    return d_ptr->qDeclarativeView();
 | 
			
		
		
	
		
			
				 | 
				 | 
			
			 | 
			 | 
			
				}
 |