qtecomplugins/supplements/xqecom/xqecom.py
changeset 14 6fbed849b4f4
parent 8 71781823f776
equal deleted inserted replaced
11:06b8e2af4411 14:6fbed849b4f4
    34 	def generate(self):
    34 	def generate(self):
    35 		logging.warning("%s is not generating anything useful" % self.__class__.__name__)
    35 		logging.warning("%s is not generating anything useful" % self.__class__.__name__)
    36 	def strip(self, s):
    36 	def strip(self, s):
    37 		l = len(s) - len(s.lstrip())
    37 		l = len(s) - len(s.lstrip())
    38 		def stripOrNot(x):
    38 		def stripOrNot(x):
       
    39 			x = x + '\n'
    39 			if l>=len(x):
    40 			if l>=len(x):
    40 				return x
    41 				return x
    41 			else:
    42 			else:
    42 				return x[l:]
    43 				return x[l:]
    43 		return ''.join(map(stripOrNot, s.splitlines(True)))
    44 		return ''.join(map(stripOrNot, s.splitlines(False)))
    44 		
    45 		
    45 class RssGenerator(Generator):
    46 class RssGenerator(Generator):
    46 	"""
    47 	"""
    47 	RSS generator.
    48 	RSS generator.
    48 	"""
    49 	"""
   101 						opaque_data = "%(opaqueData)s";
   102 						opaque_data = "%(opaqueData)s";
   102 						}
   103 						}
   103 					};
   104 					};
   104 				}
   105 				}
   105 			};
   106 			};
   106 		} 		
   107 		}"""
   107 		"""
       
   108 		
   108 		
   109 		output.write(self.strip(header) % self.args )
   109 		output.write(self.strip(header) % self.args )
   110 		
   110 		
   111 
   111 
   112 class PkgGenerator(Generator):
   112 class PkgGenerator(Generator):
   114 	PKG generator.
   114 	PKG generator.
   115 	"""
   115 	"""
   116 	def __init__(self, args):
   116 	def __init__(self, args):
   117 		super(self.__class__, self).__init__(args)
   117 		super(self.__class__, self).__init__(args)
   118 	def generate(self):
   118 	def generate(self):
   119 		content="""\
   119 		content='''\
   120 		// ============================================================================
   120 		// ============================================================================
   121 		// Generated by xqecom on %(timestamp)s
   121 		// Generated by xqecom on %(timestamp)s
   122 		// This file is generated by xqecom and should not be modified by the user.
   122 		// This file is generated by xqecom and should not be modified by the user.
   123 		// ============================================================================
   123 		// ============================================================================
   124 
   124 
   141 		[0x1028315F],0,0,0,{"S60ProductID"}
   141 		[0x1028315F],0,0,0,{"S60ProductID"}
   142 		(0x2001E61C), 4, 5, 0, {"QtLibs pre-release"}
   142 		(0x2001E61C), 4, 5, 0, {"QtLibs pre-release"}
   143 
   143 
   144 		;files
   144 		;files
   145 		"\\epoc32\\release\\armv5\\urel\\%(target)s.dll"    - "!:\\sys\\bin\\%(target)s.dll"
   145 		"\\epoc32\\release\\armv5\\urel\\%(target)s.dll"    - "!:\\sys\\bin\\%(target)s.dll"
   146 		"\\epoc32\\data\\Z\\resource\\plugins\\%(target)s.rsc" - "!:\\resource\\plugins\\%(target)s.rsc" 		
   146 		"\\epoc32\\data\\Z\\resource\\plugins\\%(target)s.rsc" - "!:\\resource\\plugins\\%(target)s.rsc"'''
   147 		"""
       
   148 		
   147 		
   149 		fileName = self.args['target'] + ".pkg"
   148 		fileName = self.args['target'] + ".pkg"
   150 		output = file(fileName, "w")
   149 		output = file(fileName, "w")
   151 		output.write(self.strip(content) % self.args)
   150 		output.write(self.strip(content) % self.args)
   152 	
   151 	
   170 
   169 
   171 		#include <bldvariant.hrh>
   170 		#include <bldvariant.hrh>
   172 
   171 
   173 		ECOM_PLUGIN( %(target)s.dll, %(target)s.rsc )
   172 		ECOM_PLUGIN( %(target)s.dll, %(target)s.rsc )
   174 
   173 
   175 		#endif //%(TARGET)s_IBY 		
   174 		#endif //%(TARGET)s_IBY"""
   176 		"""
       
   177 		
   175 		
   178 		fileName = self.args['target'] + ".iby"
   176 		fileName = self.args['target'] + ".iby"
   179 		output = file(fileName, "w")
   177 		output = file(fileName, "w")
   180 		output.write(self.strip(content) % self.args)
   178 		output.write(self.strip(content) % self.args)
   181 	
   179 	
   193 		// ============================================================================
   191 		// ============================================================================
   194 
   192 
   195 		#ifndef ECOMSTUB_%(uid3)s_HRH
   193 		#ifndef ECOMSTUB_%(uid3)s_HRH
   196 		#define ECOMSTUB_%(uid3)s_HRH
   194 		#define ECOMSTUB_%(uid3)s_HRH
   197 		#define KQtEcomPluginImplementationUid %(uid3)s
   195 		#define KQtEcomPluginImplementationUid %(uid3)s
   198 		#endif //ECOMSTUB_%(uid3)s_HRH 
   196 		#endif //ECOMSTUB_%(uid3)s_HRH"""
   199 		"""
       
   200 
   197 
   201 		fileName = "ecomstub_" + self.args['uid3'] + ".hrh"
   198 		fileName = "ecomstub_" + self.args['uid3'] + ".hrh"
   202 		output = file(fileName, "w")
   199 		output = file(fileName, "w")
   203 		output.write(self.strip(contentHrh) % self.args)
   200 		output.write(self.strip(contentHrh) % self.args)
   204 
   201 
   219 
   216 
   220 		EXPORT_C const TImplementationProxy* ImplementationGroupProxy(TInt& aTableCount)
   217 		EXPORT_C const TImplementationProxy* ImplementationGroupProxy(TInt& aTableCount)
   221 			{
   218 			{
   222 			aTableCount = sizeof( implementationTable ) / sizeof( TImplementationProxy );
   219 			aTableCount = sizeof( implementationTable ) / sizeof( TImplementationProxy );
   223 			return implementationTable;
   220 			return implementationTable;
   224 			} 
   221 			}"""
   225 		"""		
       
   226 
   222 
   227 		fileName = "ecomstub_" + self.args['uid3'] + ".cpp"
   223 		fileName = "ecomstub_" + self.args['uid3'] + ".cpp"
   228 		output = file(fileName, "w")
   224 		output = file(fileName, "w")
   229 		output.write(self.strip(contentCpp) % self.args)
   225 		output.write(self.strip(contentCpp) % self.args)
   230 	
   226