def __init__(self, parent, main): QtGui.QWidget.__init__(self, parent) self.main = main self.project_file_path = None self.project_settings_file = None self.project_settings = None mainLayout = QtGui.QHBoxLayout() mainLayout.setContentsMargins(0, 0, 0, 0) mainLayout.setSpacing(0) self.setLayout(mainLayout) ######################################### ## Editor/Terminal on left, Compiler Bar on right self.editorCompilerSplitter = QtGui.QSplitter(self) mainLayout.addWidget(self.editorCompilerSplitter, 20) self.editorCompilerSplitter.setOrientation(QtCore.Qt.Horizontal) #################################################### ## Editor at top, Terminal at bottom Splitter self.editorTerminalSplitter = QtGui.QSplitter(self) self.editorTerminalSplitter.setOrientation(QtCore.Qt.Vertical) self.editorCompilerSplitter.addWidget(self.editorTerminalSplitter) ######################################### ## Editor Widget self.editor = EditorWidget(self, self.main) self.editorTerminalSplitter.addWidget(self.editor) ######################################### ## Terminal Widget self.terminalWidget = TerminalWidget(self, self.main) self.editorTerminalSplitter.addWidget(self.terminalWidget) ############################################################## ### Arduino Compiler Bar self.arduinoCompilerBar = ArduinoCompilerBar(self, self.main) self.connect(self.arduinoCompilerBar, QtCore.SIGNAL("compile_action"), self.on_compile_action) self.connect(self.arduinoCompilerBar, QtCore.SIGNAL("project_settings_changed"), self.on_project_settings_changed) self.editorCompilerSplitter.addWidget(self.arduinoCompilerBar) ## Layout tweeks - TODO store thas in project self.editorCompilerSplitter.setStretchFactor(0, 2) self.editorCompilerSplitter.setStretchFactor(1, 0) self.editorTerminalSplitter.setStretchFactor(0, 5) self.editorTerminalSplitter.setStretchFactor(1, 2)