Guide:Mod Organizer/Python Plugins

From Step Mods | Change The Game

How to add Python plugins to Mod Organizer[edit | edit source]

requirements[edit | edit source]

requirements for user interface (optional)[edit | edit source]

PyQt4 comes with pyuic

Location: Python27\Lib\site-packages\PyQt4\uic\pyuic.py 

it generates .py commands from a Qt4 .ui file:

pyuic.py YOURDESIGN.ui > YOURDESIGN.py


Hello World app[edit | edit source]

still got a bug in there, but the source gives you an idea how a simple plugin will work:

	import os
	import sys
	from PyQt4 import QtCore, QtGui
	from PyQt4.QtCore import Qt, pyqtWrapperType, pyqtSlot, pyqtSignal
	from PyQt4.QtGui import QDialog, QHeaderView, QMessageBox, QColorDialog, QPalette, QTreeWidgetItem,\
	QComboBox, QPushButton, QDoubleSpinBox, QHBoxLayout, QWidget, QSlider, QSpinBox, QLineEdit
	pyqt5 = False

	if not "mobase" in sys.modules:
		import mock_mobase as mobase

	class YourHelloWorldPlugin(mobase.IPluginTool):
		def init(self, organizer):
			#self.__organizer = organizer
			self.__parentWidget = None
			return True

		def name(self):
			return "HelloWorld"

		def author(self):
			return "plugin creator"

		def description(self):
			return "Hello World-Plugin to show you how it's done."

		def version(self):
			#return mobase.VersionInfo(0, 0, 1, mobase.ReleaseType.prealpha)
			return True

		def isActive(self):
			return True

		def settings(self):
			return []
			
		def displayName(self):
			return "HelloWorld"

		def tooltip(self):
			return "Modify game Configuration"


	def createPlugin():
			return YourHelloWorldPlugin()

if you place a file with a similiar structure inside the /plugins/ dir, MO will automatically find it and add it to the tools list.