Files
python-plugins-doc/api/mobase.IPlugin.html
T

622 lines
43 KiB
HTML
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
<!DOCTYPE html>
<html class="writer-html5" lang="en" >
<head>
<meta charset="utf-8" /><meta name="generator" content="Docutils 0.18.1: http://docutils.sourceforge.net/" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>IPlugin &mdash; MO2 Python Plugin API documentation</title>
<link rel="stylesheet" href="../_static/pygments.css" type="text/css" />
<link rel="stylesheet" href="../_static/css/theme.css" type="text/css" />
<link rel="stylesheet" href="../_static/graphviz.css" type="text/css" />
<link rel="shortcut icon" href="../_static/mo2.ico"/>
<!--[if lt IE 9]>
<script src="../_static/js/html5shiv.min.js"></script>
<![endif]-->
<script src="../_static/jquery.js?v=5d32c60e"></script>
<script src="../_static/_sphinx_javascript_frameworks_compat.js?v=2cd50e6c"></script>
<script src="../_static/documentation_options.js?v=5929fcd5"></script>
<script src="../_static/doctools.js?v=888ff710"></script>
<script src="../_static/sphinx_highlight.js?v=dc90522c"></script>
<script src="../_static/js/theme.js"></script>
<link rel="index" title="Index" href="../genindex.html" />
<link rel="search" title="Search" href="../search.html" />
<link rel="next" title="IPluginDiagnose" href="mobase.IPluginDiagnose.html" />
<link rel="prev" title="IOrganizer" href="mobase.IOrganizer.html" />
</head>
<body class="wy-body-for-nav">
<div class="wy-grid-for-nav">
<nav data-toggle="wy-nav-shift" class="wy-nav-side">
<div class="wy-side-scroll">
<div class="wy-side-nav-search" >
<a href="../index.html" class="icon icon-home">
MO2 Python Plugin API
</a>
<div role="search">
<form id="rtd-search-form" class="wy-form" action="../search.html" method="get">
<input type="text" name="q" placeholder="Search docs" aria-label="Search docs" />
<input type="hidden" name="check_keywords" value="yes" />
<input type="hidden" name="area" value="default" />
</form>
</div>
</div><div class="wy-menu wy-menu-vertical" data-spy="affix" role="navigation" aria-label="Navigation menu">
<p class="caption" role="heading"><span class="caption-text">Contents:</span></p>
<ul class="current">
<li class="toctree-l1"><a class="reference internal" href="../setup-tools.html">Setting up the environment</a><ul>
<li class="toctree-l2"><a class="reference internal" href="../setup-tools.html#required-tools">Required tools</a></li>
<li class="toctree-l2"><a class="reference internal" href="../setup-tools.html#preparation">Preparation</a><ul>
<li class="toctree-l3"><a class="reference internal" href="../setup-tools.html#get-the-mobase-stubs">1. Get the <code class="docutils literal notranslate"><span class="pre">mobase</span></code> stubs</a></li>
<li class="toctree-l3"><a class="reference internal" href="../setup-tools.html#configure-visual-studio-code-for-mobase">2. Configure Visual Studio Code for <code class="docutils literal notranslate"><span class="pre">mobase</span></code></a></li>
<li class="toctree-l3"><a class="reference internal" href="../setup-tools.html#optional-configure-black-to-auto-format-your-source-files">3. [Optional] Configure <code class="docutils literal notranslate"><span class="pre">black</span></code> to auto-format your source files</a></li>
<li class="toctree-l3"><a class="reference internal" href="../setup-tools.html#optional-automatically-reload-plugins-during-development">4. [Optional] Automatically reload plugins during development</a></li>
</ul>
</li>
<li class="toctree-l2"><a class="reference internal" href="../setup-tools.html#testing-the-setup">Testing the setup</a></li>
</ul>
</li>
<li class="toctree-l1"><a class="reference internal" href="../plugin-types.html">Type of Plugins</a><ul>
<li class="toctree-l2"><a class="reference internal" href="../plugin-types.html#installers">Installers</a></li>
<li class="toctree-l2"><a class="reference internal" href="../plugin-types.html#previewers">Previewers</a></li>
<li class="toctree-l2"><a class="reference internal" href="../plugin-types.html#mod-page">Mod Page</a></li>
<li class="toctree-l2"><a class="reference internal" href="../plugin-types.html#game">Game</a></li>
<li class="toctree-l2"><a class="reference internal" href="../plugin-types.html#tool">Tool</a></li>
<li class="toctree-l2"><a class="reference internal" href="../plugin-types.html#proxies">Proxies</a></li>
<li class="toctree-l2"><a class="reference internal" href="../plugin-types.html#free-plugins"><em>Free Plugins</em></a></li>
<li class="toctree-l2"><a class="reference internal" href="../plugin-types.html#extension-interfaces">Extension Interfaces</a><ul>
<li class="toctree-l3"><a class="reference internal" href="../plugin-types.html#diagnose">Diagnose</a></li>
<li class="toctree-l3"><a class="reference internal" href="../plugin-types.html#file-mappings">File Mappings</a></li>
</ul>
</li>
</ul>
</li>
<li class="toctree-l1"><a class="reference internal" href="../writing-plugins.html">Writing Plugins</a><ul>
<li class="toctree-l2"><a class="reference internal" href="../writing-plugins.html#getting-started">Getting started</a><ul>
<li class="toctree-l3"><a class="reference internal" href="../writing-plugins.html#single-file-plugins">Single file plugins</a></li>
<li class="toctree-l3"><a class="reference internal" href="../writing-plugins.html#module-plugins">Module Plugins</a></li>
</ul>
</li>
<li class="toctree-l2"><a class="reference internal" href="../writing-plugins.html#writing-the-plugin">Writing the plugin</a><ul>
<li class="toctree-l3"><a class="reference internal" href="../writing-plugins.html#iplugin-interface"><code class="docutils literal notranslate"><span class="pre">IPlugin</span></code> interface</a></li>
</ul>
</li>
<li class="toctree-l2"><a class="reference internal" href="../writing-plugins.html#examples">Examples</a><ul>
<li class="toctree-l3"><a class="reference internal" href="../writing-plugins.html#tutorial-plugins">Tutorial Plugins</a></li>
<li class="toctree-l3"><a class="reference internal" href="../writing-plugins.html#official-plugins">Official Plugins</a></li>
<li class="toctree-l3"><a class="reference internal" href="../writing-plugins.html#unofficial-plugins">Unofficial Plugins</a></li>
</ul>
</li>
<li class="toctree-l2"><a class="reference internal" href="../writing-plugins.html#internationalization">Internationalization</a><ul>
<li class="toctree-l3"><a class="reference internal" href="../writing-plugins.html#adding-translation-code">Adding translation code</a></li>
<li class="toctree-l3"><a class="reference internal" href="../writing-plugins.html#generating-qt-translation-files">Generating Qt translation files</a></li>
<li class="toctree-l3"><a class="reference internal" href="../writing-plugins.html#translating">Translating</a></li>
<li class="toctree-l3"><a class="reference internal" href="../writing-plugins.html#distributing-translations">Distributing translations</a></li>
</ul>
</li>
</ul>
</li>
<li class="toctree-l1"><a class="reference internal" href="../faq.html">FAQ</a><ul>
<li class="toctree-l2"><a class="reference internal" href="../faq.html#why-is-mo2-throwing-an-exception-when-i-try-to-create-a-type-inheriting-one-of-mo2-class">1. Why is MO2 throwing an exception when I try to create a type inheriting one of MO2 class?</a></li>
<li class="toctree-l2"><a class="reference internal" href="../faq.html#how-can-i-be-sure-to-implement-all-the-required-methods-when-creating-a-plugin">2. How can I be sure to implement all the required methods when creating a plugin?</a></li>
<li class="toctree-l2"><a class="reference internal" href="../faq.html#why-are-my-isinstance-x-qobject-and-isinstance-y-qwidget-not-working">3. Why are my <code class="docutils literal notranslate"><span class="pre">isinstance(x,</span> <span class="pre">QObject)</span></code> and <code class="docutils literal notranslate"><span class="pre">isinstance(y,</span> <span class="pre">QWidget)</span></code> not working?</a></li>
</ul>
</li>
<li class="toctree-l1 current"><a class="reference internal" href="../mobase.html"><code class="docutils literal notranslate"><span class="pre">mobase</span></code> API</a><ul class="current">
<li class="toctree-l2"><a class="reference internal" href="../mobase.html#functions">Functions</a><ul>
<li class="toctree-l3"><a class="reference internal" href="mobase.getFileVersion.html">getFileVersion</a><ul>
<li class="toctree-l4"><a class="reference internal" href="mobase.getFileVersion.html#mobase.getFileVersion"><code class="docutils literal notranslate"><span class="pre">getFileVersion()</span></code></a></li>
</ul>
</li>
<li class="toctree-l3"><a class="reference internal" href="mobase.getIconForExecutable.html">getIconForExecutable</a><ul>
<li class="toctree-l4"><a class="reference internal" href="mobase.getIconForExecutable.html#mobase.getIconForExecutable"><code class="docutils literal notranslate"><span class="pre">getIconForExecutable()</span></code></a></li>
</ul>
</li>
<li class="toctree-l3"><a class="reference internal" href="mobase.getProductVersion.html">getProductVersion</a><ul>
<li class="toctree-l4"><a class="reference internal" href="mobase.getProductVersion.html#mobase.getProductVersion"><code class="docutils literal notranslate"><span class="pre">getProductVersion()</span></code></a></li>
</ul>
</li>
</ul>
</li>
<li class="toctree-l2 current"><a class="reference internal" href="../mobase.html#classes">Classes</a><ul class="current">
<li class="toctree-l3"><a class="reference internal" href="mobase.BSAInvalidation.html">BSAInvalidation</a><ul>
<li class="toctree-l4"><a class="reference internal" href="mobase.BSAInvalidation.html#mobase.BSAInvalidation"><code class="docutils literal notranslate"><span class="pre">BSAInvalidation</span></code></a></li>
</ul>
</li>
<li class="toctree-l3"><a class="reference internal" href="mobase.DataArchives.html">DataArchives</a><ul>
<li class="toctree-l4"><a class="reference internal" href="mobase.DataArchives.html#mobase.DataArchives"><code class="docutils literal notranslate"><span class="pre">DataArchives</span></code></a></li>
</ul>
</li>
<li class="toctree-l3"><a class="reference internal" href="mobase.EndorsedState.html">EndorsedState</a><ul>
<li class="toctree-l4"><a class="reference internal" href="mobase.EndorsedState.html#mobase.EndorsedState"><code class="docutils literal notranslate"><span class="pre">EndorsedState</span></code></a></li>
</ul>
</li>
<li class="toctree-l3"><a class="reference internal" href="mobase.ExecutableForcedLoadSetting.html">ExecutableForcedLoadSetting</a><ul>
<li class="toctree-l4"><a class="reference internal" href="mobase.ExecutableForcedLoadSetting.html#mobase.ExecutableForcedLoadSetting"><code class="docutils literal notranslate"><span class="pre">ExecutableForcedLoadSetting</span></code></a></li>
</ul>
</li>
<li class="toctree-l3"><a class="reference internal" href="mobase.ExecutableInfo.html">ExecutableInfo</a><ul>
<li class="toctree-l4"><a class="reference internal" href="mobase.ExecutableInfo.html#mobase.ExecutableInfo"><code class="docutils literal notranslate"><span class="pre">ExecutableInfo</span></code></a></li>
</ul>
</li>
<li class="toctree-l3"><a class="reference internal" href="mobase.FileInfo.html">FileInfo</a><ul>
<li class="toctree-l4"><a class="reference internal" href="mobase.FileInfo.html#mobase.FileInfo"><code class="docutils literal notranslate"><span class="pre">FileInfo</span></code></a></li>
</ul>
</li>
<li class="toctree-l3"><a class="reference internal" href="mobase.FileTreeEntry.html">FileTreeEntry</a><ul>
<li class="toctree-l4"><a class="reference internal" href="mobase.FileTreeEntry.html#mobase.FileTreeEntry"><code class="docutils literal notranslate"><span class="pre">FileTreeEntry</span></code></a></li>
</ul>
</li>
<li class="toctree-l3"><a class="reference internal" href="mobase.GamePlugins.html">GamePlugins</a><ul>
<li class="toctree-l4"><a class="reference internal" href="mobase.GamePlugins.html#mobase.GamePlugins"><code class="docutils literal notranslate"><span class="pre">GamePlugins</span></code></a></li>
</ul>
</li>
<li class="toctree-l3"><a class="reference internal" href="mobase.GuessQuality.html">GuessQuality</a><ul>
<li class="toctree-l4"><a class="reference internal" href="mobase.GuessQuality.html#mobase.GuessQuality"><code class="docutils literal notranslate"><span class="pre">GuessQuality</span></code></a></li>
</ul>
</li>
<li class="toctree-l3"><a class="reference internal" href="mobase.GuessedString.html">GuessedString</a><ul>
<li class="toctree-l4"><a class="reference internal" href="mobase.GuessedString.html#mobase.GuessedString"><code class="docutils literal notranslate"><span class="pre">GuessedString</span></code></a></li>
</ul>
</li>
<li class="toctree-l3"><a class="reference internal" href="mobase.IDownloadManager.html">IDownloadManager</a><ul>
<li class="toctree-l4"><a class="reference internal" href="mobase.IDownloadManager.html#mobase.IDownloadManager"><code class="docutils literal notranslate"><span class="pre">IDownloadManager</span></code></a></li>
</ul>
</li>
<li class="toctree-l3"><a class="reference internal" href="mobase.IFileTree.html">IFileTree</a><ul>
<li class="toctree-l4"><a class="reference internal" href="mobase.IFileTree.html#mobase.IFileTree"><code class="docutils literal notranslate"><span class="pre">IFileTree</span></code></a></li>
</ul>
</li>
<li class="toctree-l3"><a class="reference internal" href="mobase.IInstallationManager.html">IInstallationManager</a><ul>
<li class="toctree-l4"><a class="reference internal" href="mobase.IInstallationManager.html#mobase.IInstallationManager"><code class="docutils literal notranslate"><span class="pre">IInstallationManager</span></code></a></li>
</ul>
</li>
<li class="toctree-l3"><a class="reference internal" href="mobase.IModInterface.html">IModInterface</a><ul>
<li class="toctree-l4"><a class="reference internal" href="mobase.IModInterface.html#mobase.IModInterface"><code class="docutils literal notranslate"><span class="pre">IModInterface</span></code></a></li>
</ul>
</li>
<li class="toctree-l3"><a class="reference internal" href="mobase.IModList.html">IModList</a><ul>
<li class="toctree-l4"><a class="reference internal" href="mobase.IModList.html#mobase.IModList"><code class="docutils literal notranslate"><span class="pre">IModList</span></code></a></li>
</ul>
</li>
<li class="toctree-l3"><a class="reference internal" href="mobase.IModRepositoryBridge.html">IModRepositoryBridge</a><ul>
<li class="toctree-l4"><a class="reference internal" href="mobase.IModRepositoryBridge.html#mobase.IModRepositoryBridge"><code class="docutils literal notranslate"><span class="pre">IModRepositoryBridge</span></code></a></li>
</ul>
</li>
<li class="toctree-l3"><a class="reference internal" href="mobase.IOrganizer.html">IOrganizer</a><ul>
<li class="toctree-l4"><a class="reference internal" href="mobase.IOrganizer.html#mobase.IOrganizer"><code class="docutils literal notranslate"><span class="pre">IOrganizer</span></code></a></li>
</ul>
</li>
<li class="toctree-l3 current"><a class="current reference internal" href="#">IPlugin</a><ul>
<li class="toctree-l4"><a class="reference internal" href="#mobase.IPlugin"><code class="docutils literal notranslate"><span class="pre">IPlugin</span></code></a></li>
</ul>
</li>
<li class="toctree-l3"><a class="reference internal" href="mobase.IPluginDiagnose.html">IPluginDiagnose</a><ul>
<li class="toctree-l4"><a class="reference internal" href="mobase.IPluginDiagnose.html#mobase.IPluginDiagnose"><code class="docutils literal notranslate"><span class="pre">IPluginDiagnose</span></code></a></li>
</ul>
</li>
<li class="toctree-l3"><a class="reference internal" href="mobase.IPluginFileMapper.html">IPluginFileMapper</a><ul>
<li class="toctree-l4"><a class="reference internal" href="mobase.IPluginFileMapper.html#mobase.IPluginFileMapper"><code class="docutils literal notranslate"><span class="pre">IPluginFileMapper</span></code></a></li>
</ul>
</li>
<li class="toctree-l3"><a class="reference internal" href="mobase.IPluginGame.html">IPluginGame</a><ul>
<li class="toctree-l4"><a class="reference internal" href="mobase.IPluginGame.html#mobase.IPluginGame"><code class="docutils literal notranslate"><span class="pre">IPluginGame</span></code></a></li>
</ul>
</li>
<li class="toctree-l3"><a class="reference internal" href="mobase.IPluginInstaller.html">IPluginInstaller</a><ul>
<li class="toctree-l4"><a class="reference internal" href="mobase.IPluginInstaller.html#mobase.IPluginInstaller"><code class="docutils literal notranslate"><span class="pre">IPluginInstaller</span></code></a></li>
</ul>
</li>
<li class="toctree-l3"><a class="reference internal" href="mobase.IPluginInstallerCustom.html">IPluginInstallerCustom</a><ul>
<li class="toctree-l4"><a class="reference internal" href="mobase.IPluginInstallerCustom.html#mobase.IPluginInstallerCustom"><code class="docutils literal notranslate"><span class="pre">IPluginInstallerCustom</span></code></a></li>
</ul>
</li>
<li class="toctree-l3"><a class="reference internal" href="mobase.IPluginInstallerSimple.html">IPluginInstallerSimple</a><ul>
<li class="toctree-l4"><a class="reference internal" href="mobase.IPluginInstallerSimple.html#mobase.IPluginInstallerSimple"><code class="docutils literal notranslate"><span class="pre">IPluginInstallerSimple</span></code></a></li>
</ul>
</li>
<li class="toctree-l3"><a class="reference internal" href="mobase.IPluginList.html">IPluginList</a><ul>
<li class="toctree-l4"><a class="reference internal" href="mobase.IPluginList.html#mobase.IPluginList"><code class="docutils literal notranslate"><span class="pre">IPluginList</span></code></a></li>
</ul>
</li>
<li class="toctree-l3"><a class="reference internal" href="mobase.IPluginModPage.html">IPluginModPage</a><ul>
<li class="toctree-l4"><a class="reference internal" href="mobase.IPluginModPage.html#mobase.IPluginModPage"><code class="docutils literal notranslate"><span class="pre">IPluginModPage</span></code></a></li>
</ul>
</li>
<li class="toctree-l3"><a class="reference internal" href="mobase.IPluginPreview.html">IPluginPreview</a><ul>
<li class="toctree-l4"><a class="reference internal" href="mobase.IPluginPreview.html#mobase.IPluginPreview"><code class="docutils literal notranslate"><span class="pre">IPluginPreview</span></code></a></li>
</ul>
</li>
<li class="toctree-l3"><a class="reference internal" href="mobase.IPluginRequirement.html">IPluginRequirement</a><ul>
<li class="toctree-l4"><a class="reference internal" href="mobase.IPluginRequirement.html#mobase.IPluginRequirement"><code class="docutils literal notranslate"><span class="pre">IPluginRequirement</span></code></a></li>
</ul>
</li>
<li class="toctree-l3"><a class="reference internal" href="mobase.IPluginTool.html">IPluginTool</a><ul>
<li class="toctree-l4"><a class="reference internal" href="mobase.IPluginTool.html#mobase.IPluginTool"><code class="docutils literal notranslate"><span class="pre">IPluginTool</span></code></a></li>
</ul>
</li>
<li class="toctree-l3"><a class="reference internal" href="mobase.IProfile.html">IProfile</a><ul>
<li class="toctree-l4"><a class="reference internal" href="mobase.IProfile.html#mobase.IProfile"><code class="docutils literal notranslate"><span class="pre">IProfile</span></code></a></li>
</ul>
</li>
<li class="toctree-l3"><a class="reference internal" href="mobase.ISaveGame.html">ISaveGame</a><ul>
<li class="toctree-l4"><a class="reference internal" href="mobase.ISaveGame.html#mobase.ISaveGame"><code class="docutils literal notranslate"><span class="pre">ISaveGame</span></code></a></li>
</ul>
</li>
<li class="toctree-l3"><a class="reference internal" href="mobase.ISaveGameInfoWidget.html">ISaveGameInfoWidget</a><ul>
<li class="toctree-l4"><a class="reference internal" href="mobase.ISaveGameInfoWidget.html#mobase.ISaveGameInfoWidget"><code class="docutils literal notranslate"><span class="pre">ISaveGameInfoWidget</span></code></a></li>
</ul>
</li>
<li class="toctree-l3"><a class="reference internal" href="mobase.InstallResult.html">InstallResult</a><ul>
<li class="toctree-l4"><a class="reference internal" href="mobase.InstallResult.html#mobase.InstallResult"><code class="docutils literal notranslate"><span class="pre">InstallResult</span></code></a></li>
</ul>
</li>
<li class="toctree-l3"><a class="reference internal" href="mobase.LoadOrderMechanism.html">LoadOrderMechanism</a><ul>
<li class="toctree-l4"><a class="reference internal" href="mobase.LoadOrderMechanism.html#mobase.LoadOrderMechanism"><code class="docutils literal notranslate"><span class="pre">LoadOrderMechanism</span></code></a></li>
</ul>
</li>
<li class="toctree-l3"><a class="reference internal" href="mobase.LocalSavegames.html">LocalSavegames</a><ul>
<li class="toctree-l4"><a class="reference internal" href="mobase.LocalSavegames.html#mobase.LocalSavegames"><code class="docutils literal notranslate"><span class="pre">LocalSavegames</span></code></a></li>
</ul>
</li>
<li class="toctree-l3"><a class="reference internal" href="mobase.Mapping.html">Mapping</a><ul>
<li class="toctree-l4"><a class="reference internal" href="mobase.Mapping.html#mobase.Mapping"><code class="docutils literal notranslate"><span class="pre">Mapping</span></code></a></li>
</ul>
</li>
<li class="toctree-l3"><a class="reference internal" href="mobase.ModDataChecker.html">ModDataChecker</a><ul>
<li class="toctree-l4"><a class="reference internal" href="mobase.ModDataChecker.html#mobase.ModDataChecker"><code class="docutils literal notranslate"><span class="pre">ModDataChecker</span></code></a></li>
</ul>
</li>
<li class="toctree-l3"><a class="reference internal" href="mobase.ModDataContent.html">ModDataContent</a><ul>
<li class="toctree-l4"><a class="reference internal" href="mobase.ModDataContent.html#mobase.ModDataContent"><code class="docutils literal notranslate"><span class="pre">ModDataContent</span></code></a></li>
</ul>
</li>
<li class="toctree-l3"><a class="reference internal" href="mobase.ModRepositoryFileInfo.html">ModRepositoryFileInfo</a><ul>
<li class="toctree-l4"><a class="reference internal" href="mobase.ModRepositoryFileInfo.html#mobase.ModRepositoryFileInfo"><code class="docutils literal notranslate"><span class="pre">ModRepositoryFileInfo</span></code></a></li>
</ul>
</li>
<li class="toctree-l3"><a class="reference internal" href="mobase.ModState.html">ModState</a><ul>
<li class="toctree-l4"><a class="reference internal" href="mobase.ModState.html#mobase.ModState"><code class="docutils literal notranslate"><span class="pre">ModState</span></code></a></li>
</ul>
</li>
<li class="toctree-l3"><a class="reference internal" href="mobase.PluginRequirementFactory.html">PluginRequirementFactory</a><ul>
<li class="toctree-l4"><a class="reference internal" href="mobase.PluginRequirementFactory.html#mobase.PluginRequirementFactory"><code class="docutils literal notranslate"><span class="pre">PluginRequirementFactory</span></code></a></li>
</ul>
</li>
<li class="toctree-l3"><a class="reference internal" href="mobase.PluginSetting.html">PluginSetting</a><ul>
<li class="toctree-l4"><a class="reference internal" href="mobase.PluginSetting.html#mobase.PluginSetting"><code class="docutils literal notranslate"><span class="pre">PluginSetting</span></code></a></li>
</ul>
</li>
<li class="toctree-l3"><a class="reference internal" href="mobase.PluginState.html">PluginState</a><ul>
<li class="toctree-l4"><a class="reference internal" href="mobase.PluginState.html#mobase.PluginState"><code class="docutils literal notranslate"><span class="pre">PluginState</span></code></a></li>
</ul>
</li>
<li class="toctree-l3"><a class="reference internal" href="mobase.ProfileSetting.html">ProfileSetting</a><ul>
<li class="toctree-l4"><a class="reference internal" href="mobase.ProfileSetting.html#mobase.ProfileSetting"><code class="docutils literal notranslate"><span class="pre">ProfileSetting</span></code></a></li>
</ul>
</li>
<li class="toctree-l3"><a class="reference internal" href="mobase.ReleaseType.html">ReleaseType</a><ul>
<li class="toctree-l4"><a class="reference internal" href="mobase.ReleaseType.html#mobase.ReleaseType"><code class="docutils literal notranslate"><span class="pre">ReleaseType</span></code></a></li>
</ul>
</li>
<li class="toctree-l3"><a class="reference internal" href="mobase.SaveGameInfo.html">SaveGameInfo</a><ul>
<li class="toctree-l4"><a class="reference internal" href="mobase.SaveGameInfo.html#mobase.SaveGameInfo"><code class="docutils literal notranslate"><span class="pre">SaveGameInfo</span></code></a></li>
</ul>
</li>
<li class="toctree-l3"><a class="reference internal" href="mobase.ScriptExtender.html">ScriptExtender</a><ul>
<li class="toctree-l4"><a class="reference internal" href="mobase.ScriptExtender.html#mobase.ScriptExtender"><code class="docutils literal notranslate"><span class="pre">ScriptExtender</span></code></a></li>
</ul>
</li>
<li class="toctree-l3"><a class="reference internal" href="mobase.SortMechanism.html">SortMechanism</a><ul>
<li class="toctree-l4"><a class="reference internal" href="mobase.SortMechanism.html#mobase.SortMechanism"><code class="docutils literal notranslate"><span class="pre">SortMechanism</span></code></a></li>
</ul>
</li>
<li class="toctree-l3"><a class="reference internal" href="mobase.TrackedState.html">TrackedState</a><ul>
<li class="toctree-l4"><a class="reference internal" href="mobase.TrackedState.html#mobase.TrackedState"><code class="docutils literal notranslate"><span class="pre">TrackedState</span></code></a></li>
</ul>
</li>
<li class="toctree-l3"><a class="reference internal" href="mobase.UnmanagedMods.html">UnmanagedMods</a><ul>
<li class="toctree-l4"><a class="reference internal" href="mobase.UnmanagedMods.html#mobase.UnmanagedMods"><code class="docutils literal notranslate"><span class="pre">UnmanagedMods</span></code></a></li>
</ul>
</li>
<li class="toctree-l3"><a class="reference internal" href="mobase.VersionInfo.html">VersionInfo</a><ul>
<li class="toctree-l4"><a class="reference internal" href="mobase.VersionInfo.html#mobase.VersionInfo"><code class="docutils literal notranslate"><span class="pre">VersionInfo</span></code></a></li>
</ul>
</li>
<li class="toctree-l3"><a class="reference internal" href="mobase.VersionScheme.html">VersionScheme</a><ul>
<li class="toctree-l4"><a class="reference internal" href="mobase.VersionScheme.html#mobase.VersionScheme"><code class="docutils literal notranslate"><span class="pre">VersionScheme</span></code></a></li>
</ul>
</li>
</ul>
</li>
</ul>
</li>
</ul>
</div>
</div>
</nav>
<section data-toggle="wy-nav-shift" class="wy-nav-content-wrap"><nav class="wy-nav-top" aria-label="Mobile navigation menu" >
<i data-toggle="wy-nav-top" class="fa fa-bars"></i>
<a href="../index.html">MO2 Python Plugin API</a>
</nav>
<div class="wy-nav-content">
<div class="rst-content">
<div role="navigation" aria-label="Page navigation">
<ul class="wy-breadcrumbs">
<li><a href="../index.html" class="icon icon-home" aria-label="Home"></a></li>
<li class="breadcrumb-item"><a href="../mobase.html"><code class="docutils literal notranslate"><span class="pre">mobase</span></code> API</a></li>
<li class="breadcrumb-item active">IPlugin</li>
<li class="wy-breadcrumbs-aside">
<a href="../_sources/api/mobase.IPlugin.rst.txt" rel="nofollow"> View page source</a>
</li>
</ul>
<hr/>
</div>
<div role="main" class="document" itemscope="itemscope" itemtype="http://schema.org/Article">
<div itemprop="articleBody">
<section id="iplugin">
<h1>IPlugin<a class="headerlink" href="#iplugin" title="Link to this heading"></a></h1>
<dl class="py class">
<dt class="sig sig-object py" id="mobase.IPlugin">
<em class="property"><span class="pre">class</span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">mobase.</span></span><span class="sig-name descname"><span class="pre">IPlugin</span></span><a class="headerlink" href="#mobase.IPlugin" title="Link to this definition"></a></dt>
<dd><p>Bases: <code class="xref py py-class docutils literal notranslate"><span class="pre">ABC</span></code></p>
<p>Base class for all plugins.</p>
<p class="rubric">Methods Summary</p>
<table class="autosummary longtable docutils align-default">
<tbody>
<tr class="row-odd"><td><p><a class="reference internal" href="#mobase.IPlugin.author" title="mobase.IPlugin.author"><code class="xref py py-obj docutils literal notranslate"><span class="pre">author</span></code></a>()</p></td>
<td><p><dl class="field-list simple">
<dt class="field-odd">rtype<span class="colon">:</span></dt>
<dd class="field-odd"><p><code class="xref py py-class docutils literal notranslate"><span class="pre">str</span></code></p>
</dd>
</dl>
</p></td>
</tr>
<tr class="row-even"><td><p><a class="reference internal" href="#mobase.IPlugin.description" title="mobase.IPlugin.description"><code class="xref py py-obj docutils literal notranslate"><span class="pre">description</span></code></a>()</p></td>
<td><p><dl class="field-list simple">
<dt class="field-odd">rtype<span class="colon">:</span></dt>
<dd class="field-odd"><p><code class="xref py py-class docutils literal notranslate"><span class="pre">str</span></code></p>
</dd>
</dl>
</p></td>
</tr>
<tr class="row-odd"><td><p><a class="reference internal" href="#mobase.IPlugin.enabledByDefault" title="mobase.IPlugin.enabledByDefault"><code class="xref py py-obj docutils literal notranslate"><span class="pre">enabledByDefault</span></code></a>()</p></td>
<td><p>Check whether this plugin should be enabled by default.</p></td>
</tr>
<tr class="row-even"><td><p><a class="reference internal" href="#mobase.IPlugin.init" title="mobase.IPlugin.init"><code class="xref py py-obj docutils literal notranslate"><span class="pre">init</span></code></a>(organizer)</p></td>
<td><p>Initialize this plugin.</p></td>
</tr>
<tr class="row-odd"><td><p><a class="reference internal" href="#mobase.IPlugin.localizedName" title="mobase.IPlugin.localizedName"><code class="xref py py-obj docutils literal notranslate"><span class="pre">localizedName</span></code></a>()</p></td>
<td><p>Retrieve the localized name of the plugin.</p></td>
</tr>
<tr class="row-even"><td><p><a class="reference internal" href="#mobase.IPlugin.master" title="mobase.IPlugin.master"><code class="xref py py-obj docutils literal notranslate"><span class="pre">master</span></code></a>()</p></td>
<td><p>Retrieve the master plugin of this plugin.</p></td>
</tr>
<tr class="row-odd"><td><p><a class="reference internal" href="#mobase.IPlugin.name" title="mobase.IPlugin.name"><code class="xref py py-obj docutils literal notranslate"><span class="pre">name</span></code></a>()</p></td>
<td><p>Retrieve the name of the plugin.</p></td>
</tr>
<tr class="row-even"><td><p><a class="reference internal" href="#mobase.IPlugin.requirements" title="mobase.IPlugin.requirements"><code class="xref py py-obj docutils literal notranslate"><span class="pre">requirements</span></code></a>()</p></td>
<td><p>Retrieve the requirements for this plugin.</p></td>
</tr>
<tr class="row-odd"><td><p><a class="reference internal" href="#mobase.IPlugin.settings" title="mobase.IPlugin.settings"><code class="xref py py-obj docutils literal notranslate"><span class="pre">settings</span></code></a>()</p></td>
<td><p><dl class="field-list simple">
<dt class="field-odd">rtype<span class="colon">:</span></dt>
<dd class="field-odd"><p><code class="xref py py-class docutils literal notranslate"><span class="pre">Sequence</span></code>[<a class="reference internal" href="mobase.PluginSetting.html#mobase.PluginSetting" title="mobase.PluginSetting"><code class="xref py py-class docutils literal notranslate"><span class="pre">PluginSetting</span></code></a>]</p>
</dd>
</dl>
</p></td>
</tr>
<tr class="row-even"><td><p><a class="reference internal" href="#mobase.IPlugin.version" title="mobase.IPlugin.version"><code class="xref py py-obj docutils literal notranslate"><span class="pre">version</span></code></a>()</p></td>
<td><p><dl class="field-list simple">
<dt class="field-odd">rtype<span class="colon">:</span></dt>
<dd class="field-odd"><p><a class="reference internal" href="mobase.VersionInfo.html#mobase.VersionInfo" title="mobase.VersionInfo"><code class="xref py py-class docutils literal notranslate"><span class="pre">VersionInfo</span></code></a></p>
</dd>
</dl>
</p></td>
</tr>
</tbody>
</table>
<p class="rubric">Methods Documentation</p>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IPlugin.author">
<em class="property"><span class="pre">abstract</span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">author</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#mobase.IPlugin.author" title="Link to this definition"></a></dt>
<dd><dl class="field-list simple">
<dt class="field-odd">Return type<span class="colon">:</span></dt>
<dd class="field-odd"><p><code class="xref py py-class docutils literal notranslate"><span class="pre">str</span></code></p>
</dd>
<dt class="field-even">Returns<span class="colon">:</span></dt>
<dd class="field-even"><p>The name of the plugin author.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IPlugin.description">
<em class="property"><span class="pre">abstract</span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">description</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#mobase.IPlugin.description" title="Link to this definition"></a></dt>
<dd><dl class="field-list simple">
<dt class="field-odd">Return type<span class="colon">:</span></dt>
<dd class="field-odd"><p><code class="xref py py-class docutils literal notranslate"><span class="pre">str</span></code></p>
</dd>
<dt class="field-even">Returns<span class="colon">:</span></dt>
<dd class="field-even"><p>The description for this plugin.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IPlugin.enabledByDefault">
<span class="sig-name descname"><span class="pre">enabledByDefault</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#mobase.IPlugin.enabledByDefault" title="Link to this definition"></a></dt>
<dd><p>Check whether this plugin should be enabled by default.</p>
<dl class="field-list simple">
<dt class="field-odd">Return type<span class="colon">:</span></dt>
<dd class="field-odd"><p><code class="xref py py-class docutils literal notranslate"><span class="pre">bool</span></code></p>
</dd>
<dt class="field-even">Returns<span class="colon">:</span></dt>
<dd class="field-even"><p>True if this plugin should be enabled by default, False otherwise.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IPlugin.init">
<em class="property"><span class="pre">abstract</span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">init</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">organizer</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#mobase.IPlugin.init" title="Link to this definition"></a></dt>
<dd><p>Initialize this plugin.</p>
<p>Note that this function may never be called if no <cite>IOrganizer</cite> is available
at that time, such as when creating the first instance in MO.</p>
<p>Plugins will probably want to store the organizer pointer. It is guaranteed
to be valid as long as the plugin is loaded.</p>
<p>These functions may be called before <cite>init()</cite>:
:rtype: <code class="xref py py-class docutils literal notranslate"><span class="pre">bool</span></code></p>
<blockquote>
<div><ul class="simple">
<li><p><cite>name()</cite></p></li>
<li><p>see <cite>IPluginGame</cite> for more.</p></li>
</ul>
</div></blockquote>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><p><strong>organizer</strong> The main organizer interface.</p>
</dd>
<dt class="field-even">Returns<span class="colon">:</span></dt>
<dd class="field-even"><p>True if the plugin was initialized correctly, False otherwise.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IPlugin.localizedName">
<span class="sig-name descname"><span class="pre">localizedName</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#mobase.IPlugin.localizedName" title="Link to this definition"></a></dt>
<dd><p>Retrieve the localized name of the plugin.</p>
<p>Unlike <cite>name()</cite>, this method can (and should!) return a localized name for the plugin.
This method returns name() by default.</p>
<dl class="field-list simple">
<dt class="field-odd">Return type<span class="colon">:</span></dt>
<dd class="field-odd"><p><code class="xref py py-class docutils literal notranslate"><span class="pre">str</span></code></p>
</dd>
<dt class="field-even">Returns<span class="colon">:</span></dt>
<dd class="field-even"><p>The localized name of the plugin.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IPlugin.master">
<span class="sig-name descname"><span class="pre">master</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#mobase.IPlugin.master" title="Link to this definition"></a></dt>
<dd><p>Retrieve the master plugin of this plugin.</p>
<p>It is often easier to implement a functionality as multiple plugins in MO2, but ship the
plugins together, e.g. as a Python module or using <cite>createFunctions()</cite>. In this case, having
a master plugin (one of the plugin, or a separate one) tells MO2 that these plugins are
linked and should also be displayed together in the UI. If MO2 ever implements automatic
updates for plugins, the <cite>master()</cite> plugin will also be used for this purpose.</p>
<dl class="field-list simple">
<dt class="field-odd">Return type<span class="colon">:</span></dt>
<dd class="field-odd"><p><code class="xref py py-class docutils literal notranslate"><span class="pre">str</span></code></p>
</dd>
<dt class="field-even">Returns<span class="colon">:</span></dt>
<dd class="field-even"><p>The master plugin of this plugin, or a null pointer if this plugin does not have a master.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IPlugin.name">
<em class="property"><span class="pre">abstract</span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">name</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#mobase.IPlugin.name" title="Link to this definition"></a></dt>
<dd><p>Retrieve the name of the plugin.</p>
<p>The name of the plugin is used for internal storage purpose so it should not change,
and it should be static. In particular, you should not use a localized string (<cite>tr()</cite>)
for the plugin name.</p>
<p>In the future, we will provide a way to localized plugin names using a distinct method,
such as <cite>localizedName()</cite>.</p>
<dl class="field-list simple">
<dt class="field-odd">Return type<span class="colon">:</span></dt>
<dd class="field-odd"><p><code class="xref py py-class docutils literal notranslate"><span class="pre">str</span></code></p>
</dd>
<dt class="field-even">Returns<span class="colon">:</span></dt>
<dd class="field-even"><p>The name of the plugin.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IPlugin.requirements">
<span class="sig-name descname"><span class="pre">requirements</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#mobase.IPlugin.requirements" title="Link to this definition"></a></dt>
<dd><p>Retrieve the requirements for this plugin.</p>
<p>This method is called right after <cite>init()</cite> and the ownership the requirements is</p>
<dl class="field-list simple">
<dt class="field-odd">Return type<span class="colon">:</span></dt>
<dd class="field-odd"><p><code class="xref py py-class docutils literal notranslate"><span class="pre">List</span></code>[<a class="reference internal" href="mobase.IPluginRequirement.html#mobase.IPluginRequirement" title="mobase.IPluginRequirement"><code class="xref py py-class docutils literal notranslate"><span class="pre">IPluginRequirement</span></code></a>]</p>
</dd>
<dt class="field-even">Returns<span class="colon">:</span></dt>
<dd class="field-even"><p>The list of requirements for this plugin.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IPlugin.settings">
<em class="property"><span class="pre">abstract</span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">settings</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#mobase.IPlugin.settings" title="Link to this definition"></a></dt>
<dd><dl class="field-list simple">
<dt class="field-odd">Return type<span class="colon">:</span></dt>
<dd class="field-odd"><p><code class="xref py py-class docutils literal notranslate"><span class="pre">Sequence</span></code>[<a class="reference internal" href="mobase.PluginSetting.html#mobase.PluginSetting" title="mobase.PluginSetting"><code class="xref py py-class docutils literal notranslate"><span class="pre">PluginSetting</span></code></a>]</p>
</dd>
<dt class="field-even">Returns<span class="colon">:</span></dt>
<dd class="field-even"><p>A list of settings for this plugin.</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="mobase.IPlugin.version">
<em class="property"><span class="pre">abstract</span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">version</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#mobase.IPlugin.version" title="Link to this definition"></a></dt>
<dd><dl class="field-list simple">
<dt class="field-odd">Return type<span class="colon">:</span></dt>
<dd class="field-odd"><p><a class="reference internal" href="mobase.VersionInfo.html#mobase.VersionInfo" title="mobase.VersionInfo"><code class="xref py py-class docutils literal notranslate"><span class="pre">VersionInfo</span></code></a></p>
</dd>
<dt class="field-even">Returns<span class="colon">:</span></dt>
<dd class="field-even"><p>The version of this plugin.</p>
</dd>
</dl>
</dd></dl>
</dd></dl>
</section>
</div>
</div>
<footer><div class="rst-footer-buttons" role="navigation" aria-label="Footer">
<a href="mobase.IOrganizer.html" class="btn btn-neutral float-left" title="IOrganizer" accesskey="p" rel="prev"><span class="fa fa-arrow-circle-left" aria-hidden="true"></span> Previous</a>
<a href="mobase.IPluginDiagnose.html" class="btn btn-neutral float-right" title="IPluginDiagnose" accesskey="n" rel="next">Next <span class="fa fa-arrow-circle-right" aria-hidden="true"></span></a>
</div>
<hr/>
<div role="contentinfo">
<p>&#169; Copyright 2023, Holt59.</p>
</div>
Built with <a href="https://www.sphinx-doc.org/">Sphinx</a> using a
<a href="https://github.com/readthedocs/sphinx_rtd_theme">theme</a>
provided by <a href="https://readthedocs.org">Read the Docs</a>.
</footer>
</div>
</div>
</section>
</div>
<script>
jQuery(function () {
SphinxRtdTheme.Navigation.enable(true);
});
</script>
</body>
</html>