aboutsummaryrefslogtreecommitdiffhomepage
path: root/qt/ScintillaEditPy/sepbuild.py
diff options
context:
space:
mode:
Diffstat (limited to 'qt/ScintillaEditPy/sepbuild.py')
-rw-r--r--qt/ScintillaEditPy/sepbuild.py19
1 files changed, 13 insertions, 6 deletions
diff --git a/qt/ScintillaEditPy/sepbuild.py b/qt/ScintillaEditPy/sepbuild.py
index a823a96b7..77d2cb221 100644
--- a/qt/ScintillaEditPy/sepbuild.py
+++ b/qt/ScintillaEditPy/sepbuild.py
@@ -11,6 +11,11 @@ import sys
sys.path.append(os.path.join("..", "ScintillaEdit"))
import WidgetGen
+scintillaDirectory = "../.."
+scintillaScriptsDirectory = os.path.join(scintillaDirectory, "scripts")
+sys.path.append(scintillaScriptsDirectory)
+from FileGenerator import GenerateFile
+
# Decide up front which platform, treat anything other than Windows or OS X as Linux
PLAT_WINDOWS = platform.system() == "Windows"
PLAT_DARWIN = platform.system() == "Darwin"
@@ -56,8 +61,7 @@ def usage():
print("-u --underscore-names use method_names consistent with GTK+ standards")
modifyFunctionElement = """ <modify-function signature="%s">%s
- </modify-function>
-"""
+ </modify-function>"""
injectCode = """
<inject-code class="target" position="beginning">%s
@@ -83,7 +87,8 @@ def methodSignature(name, v, options):
constDeclarator = " const" if v["FeatureType"] == "get" else ""
return methodName + "(" + argTypes + ")" + constDeclarator
-def printTypeSystemFile(f,out, options):
+def printTypeSystemFile(f, options):
+ out = []
for name in f.order:
v = f.features[name]
if v["Category"] != "Deprecated":
@@ -99,9 +104,10 @@ def printTypeSystemFile(f,out, options):
checks = checks + (injectCheckN % 1)
if checks:
inject = injectCode % checks
- out.write(modifyFunctionElement % (methodSignature(name, v, options), inject))
+ out.append(modifyFunctionElement % (methodSignature(name, v, options), inject))
#if v["Param1Type"] == "string":
- # out.write("<string-xml>" + name + "</string-xml>\n")
+ # out.append("<string-xml>" + name + "</string-xml>\n")
+ return out
def doubleBackSlashes(s):
# Quote backslashes so qmake does not produce warnings
@@ -193,7 +199,8 @@ class SepBuilder:
f = WidgetGen.readInterface(False)
os.chdir(os.path.join("..", "ScintillaEditPy"))
options = {"qtStyle": self.qtStyleInterface}
- WidgetGen.Generate("typesystem_ScintillaEdit.xml.template", "typesystem_ScintillaEdit.xml", printTypeSystemFile, f, options)
+ GenerateFile("typesystem_ScintillaEdit.xml.template", "typesystem_ScintillaEdit.xml",
+ "<!-- ", True, printTypeSystemFile(f, options))
def runGenerator(self):
generatorrunner = "shiboken"