mirror of
https://github.com/naruxde/revpipycontrol.git
synced 2025-11-08 15:43:52 +01:00
docstrings angepasst
This commit is contained in:
@@ -38,7 +38,7 @@ Hängt root-dir der Anwendung vor Dateinamen.
|
|||||||
Je nach Ausführungsart der Anwendung muss das root-dir über
|
Je nach Ausführungsart der Anwendung muss das root-dir über
|
||||||
andere Arten abgerufen werden.
|
andere Arten abgerufen werden.
|
||||||
</p><dl>
|
</p><dl>
|
||||||
<dt><i>filename:</i></dt>
|
<dt><i>filename</i></dt>
|
||||||
<dd>
|
<dd>
|
||||||
Datei oder Ordnername
|
Datei oder Ordnername
|
||||||
</dd>
|
</dd>
|
||||||
|
|||||||
@@ -125,10 +125,10 @@ RevPiCheckClient.__hidewin</h3>
|
|||||||
<p>
|
<p>
|
||||||
Verbergt übergebenes Fenster.
|
Verbergt übergebenes Fenster.
|
||||||
</p><dl>
|
</p><dl>
|
||||||
<dt><i>win:</i></dt>
|
<dt><i>win</i></dt>
|
||||||
<dd>
|
<dd>
|
||||||
Fenster zum verbergen
|
Fenster zum verbergen
|
||||||
</dd><dt><i>event:</i></dt>
|
</dd><dt><i>event</i></dt>
|
||||||
<dd>
|
<dd>
|
||||||
Tkinter Event
|
Tkinter Event
|
||||||
</dd>
|
</dd>
|
||||||
@@ -145,7 +145,7 @@ RevPiCheckClient.__showwin</h3>
|
|||||||
<p>
|
<p>
|
||||||
Zeigt oder verbergt übergebenes Fenster.
|
Zeigt oder verbergt übergebenes Fenster.
|
||||||
</p><dl>
|
</p><dl>
|
||||||
<dt><i>win:</i></dt>
|
<dt><i>win</i></dt>
|
||||||
<dd>
|
<dd>
|
||||||
Fenster zum anzeigen/verbergen
|
Fenster zum anzeigen/verbergen
|
||||||
</dd>
|
</dd>
|
||||||
@@ -156,13 +156,30 @@ RevPiCheckClient.__spinboxkey</h3>
|
|||||||
<p>
|
<p>
|
||||||
Prüft die Eingabe auf plausibilität.
|
Prüft die Eingabe auf plausibilität.
|
||||||
</p><dl>
|
</p><dl>
|
||||||
<dt><i>event:</i></dt>
|
<dt><i>event</i></dt>
|
||||||
<dd>
|
<dd>
|
||||||
tkinter Event
|
tkinter Event
|
||||||
</dd><dt><i>io:</i></dt>
|
</dd><dt><i>io</i></dt>
|
||||||
<dd>
|
<dd>
|
||||||
IO Liste mit tkinter Variable
|
IO Liste mit tkinter Variable
|
||||||
</dd>
|
</dd>
|
||||||
|
</dl><a NAME="RevPiCheckClient._createiogroup" ID="RevPiCheckClient._createiogroup"></a>
|
||||||
|
<h3 style="background-color:#FFFFFF;color:#FF0000">
|
||||||
|
RevPiCheckClient._createiogroup</h3>
|
||||||
|
<b>_createiogroup</b>(<i>device, frame, iotype</i>)
|
||||||
|
<p>
|
||||||
|
Erstellt IO-Gruppen.
|
||||||
|
</p><dl>
|
||||||
|
<dt><i>device</i></dt>
|
||||||
|
<dd>
|
||||||
|
Deviceposition
|
||||||
|
</dd><dt><i>frame</i></dt>
|
||||||
|
<dd>
|
||||||
|
tkinter Frame
|
||||||
|
</dd><dt><i>iotype</i></dt>
|
||||||
|
<dd>
|
||||||
|
'inp' oder 'out' als str()
|
||||||
|
</dd>
|
||||||
</dl><a NAME="RevPiCheckClient._createwidgets" ID="RevPiCheckClient._createwidgets"></a>
|
</dl><a NAME="RevPiCheckClient._createwidgets" ID="RevPiCheckClient._createwidgets"></a>
|
||||||
<h3 style="background-color:#FFFFFF;color:#FF0000">
|
<h3 style="background-color:#FFFFFF;color:#FF0000">
|
||||||
RevPiCheckClient._createwidgets</h3>
|
RevPiCheckClient._createwidgets</h3>
|
||||||
@@ -176,7 +193,7 @@ RevPiCheckClient._onfrmconf</h3>
|
|||||||
<p>
|
<p>
|
||||||
Erstellt Fenster in einem Canvas.
|
Erstellt Fenster in einem Canvas.
|
||||||
</p><dl>
|
</p><dl>
|
||||||
<dt><i>canvas:</i></dt>
|
<dt><i>canvas</i></dt>
|
||||||
<dd>
|
<dd>
|
||||||
Canvas in dem Objekte erstellt werden sollen
|
Canvas in dem Objekte erstellt werden sollen
|
||||||
</dd>
|
</dd>
|
||||||
@@ -198,10 +215,10 @@ RevPiCheckClient._workvalues</h3>
|
|||||||
<p>
|
<p>
|
||||||
Alle Werte der Inputs und Outputs abrufen.
|
Alle Werte der Inputs und Outputs abrufen.
|
||||||
</p><dl>
|
</p><dl>
|
||||||
<dt><i>io_dicts:</i></dt>
|
<dt><i>io_dicts</i></dt>
|
||||||
<dd>
|
<dd>
|
||||||
Arbeit nur für dieses Dict()
|
Arbeit nur für dieses Dict()
|
||||||
</dd><dt><i>writeout:</i></dt>
|
</dd><dt><i>writeout</i></dt>
|
||||||
<dd>
|
<dd>
|
||||||
Änderungen auf RevPi schreiben
|
Änderungen auf RevPi schreiben
|
||||||
</dd>
|
</dd>
|
||||||
@@ -242,7 +259,7 @@ RevPiCheckClient.validatereturn</h3>
|
|||||||
<p>
|
<p>
|
||||||
Überprüft die Rückgaben der setvalue Funktion.
|
Überprüft die Rückgaben der setvalue Funktion.
|
||||||
</p><dl>
|
</p><dl>
|
||||||
<dt><i>returnlist:</i></dt>
|
<dt><i>returnlist</i></dt>
|
||||||
<dd>
|
<dd>
|
||||||
list() der xml Rückgabe
|
list() der xml Rückgabe
|
||||||
</dd>
|
</dd>
|
||||||
|
|||||||
@@ -77,7 +77,7 @@ RevPiInfo._checkclose</h3>
|
|||||||
<p>
|
<p>
|
||||||
Prüft ob Fenster beendet werden soll.
|
Prüft ob Fenster beendet werden soll.
|
||||||
</p><dl>
|
</p><dl>
|
||||||
<dt><i>event:</i></dt>
|
<dt><i>event</i></dt>
|
||||||
<dd>
|
<dd>
|
||||||
tkinter-Event
|
tkinter-Event
|
||||||
</dd>
|
</dd>
|
||||||
|
|||||||
@@ -89,7 +89,7 @@ RevPiLogfile._checkclose</h3>
|
|||||||
<p>
|
<p>
|
||||||
Prüft ob Fenster beendet werden soll.
|
Prüft ob Fenster beendet werden soll.
|
||||||
</p><dl>
|
</p><dl>
|
||||||
<dt><i>event:</i></dt>
|
<dt><i>event</i></dt>
|
||||||
<dd>
|
<dd>
|
||||||
tkinter-Event
|
tkinter-Event
|
||||||
</dd>
|
</dd>
|
||||||
@@ -106,16 +106,16 @@ RevPiLogfile._load_log</h3>
|
|||||||
<p>
|
<p>
|
||||||
Läd die angegebenen Logfiles herunter.
|
Läd die angegebenen Logfiles herunter.
|
||||||
</p><dl>
|
</p><dl>
|
||||||
<dt><i>textwidget:</i></dt>
|
<dt><i>textwidget</i></dt>
|
||||||
<dd>
|
<dd>
|
||||||
Widget in das Logs eingefügt werden sollen
|
Widget in das Logs eingefügt werden sollen
|
||||||
</dd><dt><i>xmlcall:</i></dt>
|
</dd><dt><i>xmlcall</i></dt>
|
||||||
<dd>
|
<dd>
|
||||||
xmlrpc Funktion zum Abrufen der Logdaten
|
xmlrpc Funktion zum Abrufen der Logdaten
|
||||||
</dd><dt><i>startposition:</i></dt>
|
</dd><dt><i>startposition</i></dt>
|
||||||
<dd>
|
<dd>
|
||||||
Startposition ab der Logdaten kommen sollen
|
Startposition ab der Logdaten kommen sollen
|
||||||
</dd><dt><i>full:</i></dt>
|
</dd><dt><i>full</i></dt>
|
||||||
<dd>
|
<dd>
|
||||||
Komplettes Logbuch laden
|
Komplettes Logbuch laden
|
||||||
</dd>
|
</dd>
|
||||||
@@ -143,7 +143,7 @@ RevPiLogfile.get_applog</h3>
|
|||||||
<p>
|
<p>
|
||||||
Ruft App Logbuch ab.
|
Ruft App Logbuch ab.
|
||||||
</p><dl>
|
</p><dl>
|
||||||
<dt><i>full:</i></dt>
|
<dt><i>full</i></dt>
|
||||||
<dd>
|
<dd>
|
||||||
Ganzes Logbuch laden
|
Ganzes Logbuch laden
|
||||||
</dd>
|
</dd>
|
||||||
@@ -154,7 +154,7 @@ RevPiLogfile.get_plclog</h3>
|
|||||||
<p>
|
<p>
|
||||||
Ruft PLC Logbuch ab.
|
Ruft PLC Logbuch ab.
|
||||||
</p><dl>
|
</p><dl>
|
||||||
<dt><i>full:</i></dt>
|
<dt><i>full</i></dt>
|
||||||
<dd>
|
<dd>
|
||||||
Ganzes Logbuch laden
|
Ganzes Logbuch laden
|
||||||
</dd>
|
</dd>
|
||||||
|
|||||||
@@ -105,7 +105,7 @@ RevPiOption._checkclose</h3>
|
|||||||
<p>
|
<p>
|
||||||
Prüft ob Fenster beendet werden soll.
|
Prüft ob Fenster beendet werden soll.
|
||||||
</p><dl>
|
</p><dl>
|
||||||
<dt><i>event:</i></dt>
|
<dt><i>event</i></dt>
|
||||||
<dd>
|
<dd>
|
||||||
tkinter-Event
|
tkinter-Event
|
||||||
</dd>
|
</dd>
|
||||||
|
|||||||
@@ -65,22 +65,22 @@ Methods</h3>
|
|||||||
<td>Füllt Verbindungsliste.</td>
|
<td>Füllt Verbindungsliste.</td>
|
||||||
</tr><tr>
|
</tr><tr>
|
||||||
<td><a style="color:#0000FF" href="#RevPiPlcList.evt_btnadd">evt_btnadd</a></td>
|
<td><a style="color:#0000FF" href="#RevPiPlcList.evt_btnadd">evt_btnadd</a></td>
|
||||||
<td></td>
|
<td>Verbindungseinstellungen übernehmen.</td>
|
||||||
</tr><tr>
|
</tr><tr>
|
||||||
<td><a style="color:#0000FF" href="#RevPiPlcList.evt_btnnew">evt_btnnew</a></td>
|
<td><a style="color:#0000FF" href="#RevPiPlcList.evt_btnnew">evt_btnnew</a></td>
|
||||||
<td></td>
|
<td>Neue Verbindung erstellen.</td>
|
||||||
</tr><tr>
|
</tr><tr>
|
||||||
<td><a style="color:#0000FF" href="#RevPiPlcList.evt_btnremove">evt_btnremove</a></td>
|
<td><a style="color:#0000FF" href="#RevPiPlcList.evt_btnremove">evt_btnremove</a></td>
|
||||||
<td></td>
|
<td>Verbindung löschen.</td>
|
||||||
</tr><tr>
|
</tr><tr>
|
||||||
<td><a style="color:#0000FF" href="#RevPiPlcList.evt_btnsave">evt_btnsave</a></td>
|
<td><a style="color:#0000FF" href="#RevPiPlcList.evt_btnsave">evt_btnsave</a></td>
|
||||||
<td></td>
|
<td>Alle Verbindungen speichern.</td>
|
||||||
</tr><tr>
|
</tr><tr>
|
||||||
<td><a style="color:#0000FF" href="#RevPiPlcList.evt_keypress">evt_keypress</a></td>
|
<td><a style="color:#0000FF" href="#RevPiPlcList.evt_keypress">evt_keypress</a></td>
|
||||||
<td></td>
|
<td>Passt bei Tastendruck den Status der Buttons an.</td>
|
||||||
</tr><tr>
|
</tr><tr>
|
||||||
<td><a style="color:#0000FF" href="#RevPiPlcList.evt_listconn">evt_listconn</a></td>
|
<td><a style="color:#0000FF" href="#RevPiPlcList.evt_listconn">evt_listconn</a></td>
|
||||||
<td></td>
|
<td>Übernimmt Einstellungen in Eingabefelder.</td>
|
||||||
</tr>
|
</tr>
|
||||||
</table>
|
</table>
|
||||||
<h3 style="background-color:#FFFFFF;color:#FF0000">
|
<h3 style="background-color:#FFFFFF;color:#FF0000">
|
||||||
@@ -95,7 +95,7 @@ RevPiPlcList (Constructor)</h3>
|
|||||||
<p>
|
<p>
|
||||||
Init RevPiPlcList-class.
|
Init RevPiPlcList-class.
|
||||||
</p><dl>
|
</p><dl>
|
||||||
<dt><i>master:</i></dt>
|
<dt><i>master</i></dt>
|
||||||
<dd>
|
<dd>
|
||||||
tkinter master
|
tkinter master
|
||||||
</dd>
|
</dd>
|
||||||
@@ -106,7 +106,7 @@ RevPiPlcList._checkclose</h3>
|
|||||||
<p>
|
<p>
|
||||||
Prüft ob Fenster beendet werden soll.
|
Prüft ob Fenster beendet werden soll.
|
||||||
</p><dl>
|
</p><dl>
|
||||||
<dt><i>event:</i></dt>
|
<dt><i>event</i></dt>
|
||||||
<dd>
|
<dd>
|
||||||
tkinter-Event
|
tkinter-Event
|
||||||
</dd>
|
</dd>
|
||||||
@@ -122,7 +122,12 @@ RevPiPlcList._saveappdata</h3>
|
|||||||
<b>_saveappdata</b>(<i></i>)
|
<b>_saveappdata</b>(<i></i>)
|
||||||
<p>
|
<p>
|
||||||
Speichert Verbindungen im home Dir.
|
Speichert Verbindungen im home Dir.
|
||||||
</p><a NAME="RevPiPlcList.build_listconn" ID="RevPiPlcList.build_listconn"></a>
|
</p><dl>
|
||||||
|
<dt>Returns:</dt>
|
||||||
|
<dd>
|
||||||
|
True, bei erfolgreicher Verarbeitung
|
||||||
|
</dd>
|
||||||
|
</dl><a NAME="RevPiPlcList.build_listconn" ID="RevPiPlcList.build_listconn"></a>
|
||||||
<h3 style="background-color:#FFFFFF;color:#FF0000">
|
<h3 style="background-color:#FFFFFF;color:#FF0000">
|
||||||
RevPiPlcList.build_listconn</h3>
|
RevPiPlcList.build_listconn</h3>
|
||||||
<b>build_listconn</b>(<i></i>)
|
<b>build_listconn</b>(<i></i>)
|
||||||
@@ -132,27 +137,39 @@ Füllt Verbindungsliste.
|
|||||||
<h3 style="background-color:#FFFFFF;color:#FF0000">
|
<h3 style="background-color:#FFFFFF;color:#FF0000">
|
||||||
RevPiPlcList.evt_btnadd</h3>
|
RevPiPlcList.evt_btnadd</h3>
|
||||||
<b>evt_btnadd</b>(<i></i>)
|
<b>evt_btnadd</b>(<i></i>)
|
||||||
<a NAME="RevPiPlcList.evt_btnnew" ID="RevPiPlcList.evt_btnnew"></a>
|
<p>
|
||||||
|
Verbindungseinstellungen übernehmen.
|
||||||
|
</p><a NAME="RevPiPlcList.evt_btnnew" ID="RevPiPlcList.evt_btnnew"></a>
|
||||||
<h3 style="background-color:#FFFFFF;color:#FF0000">
|
<h3 style="background-color:#FFFFFF;color:#FF0000">
|
||||||
RevPiPlcList.evt_btnnew</h3>
|
RevPiPlcList.evt_btnnew</h3>
|
||||||
<b>evt_btnnew</b>(<i></i>)
|
<b>evt_btnnew</b>(<i></i>)
|
||||||
<a NAME="RevPiPlcList.evt_btnremove" ID="RevPiPlcList.evt_btnremove"></a>
|
<p>
|
||||||
|
Neue Verbindung erstellen.
|
||||||
|
</p><a NAME="RevPiPlcList.evt_btnremove" ID="RevPiPlcList.evt_btnremove"></a>
|
||||||
<h3 style="background-color:#FFFFFF;color:#FF0000">
|
<h3 style="background-color:#FFFFFF;color:#FF0000">
|
||||||
RevPiPlcList.evt_btnremove</h3>
|
RevPiPlcList.evt_btnremove</h3>
|
||||||
<b>evt_btnremove</b>(<i></i>)
|
<b>evt_btnremove</b>(<i></i>)
|
||||||
<a NAME="RevPiPlcList.evt_btnsave" ID="RevPiPlcList.evt_btnsave"></a>
|
<p>
|
||||||
|
Verbindung löschen.
|
||||||
|
</p><a NAME="RevPiPlcList.evt_btnsave" ID="RevPiPlcList.evt_btnsave"></a>
|
||||||
<h3 style="background-color:#FFFFFF;color:#FF0000">
|
<h3 style="background-color:#FFFFFF;color:#FF0000">
|
||||||
RevPiPlcList.evt_btnsave</h3>
|
RevPiPlcList.evt_btnsave</h3>
|
||||||
<b>evt_btnsave</b>(<i></i>)
|
<b>evt_btnsave</b>(<i></i>)
|
||||||
<a NAME="RevPiPlcList.evt_keypress" ID="RevPiPlcList.evt_keypress"></a>
|
<p>
|
||||||
|
Alle Verbindungen speichern.
|
||||||
|
</p><a NAME="RevPiPlcList.evt_keypress" ID="RevPiPlcList.evt_keypress"></a>
|
||||||
<h3 style="background-color:#FFFFFF;color:#FF0000">
|
<h3 style="background-color:#FFFFFF;color:#FF0000">
|
||||||
RevPiPlcList.evt_keypress</h3>
|
RevPiPlcList.evt_keypress</h3>
|
||||||
<b>evt_keypress</b>(<i>evt=None</i>)
|
<b>evt_keypress</b>(<i>evt=None</i>)
|
||||||
<a NAME="RevPiPlcList.evt_listconn" ID="RevPiPlcList.evt_listconn"></a>
|
<p>
|
||||||
|
Passt bei Tastendruck den Status der Buttons an.
|
||||||
|
</p><a NAME="RevPiPlcList.evt_listconn" ID="RevPiPlcList.evt_listconn"></a>
|
||||||
<h3 style="background-color:#FFFFFF;color:#FF0000">
|
<h3 style="background-color:#FFFFFF;color:#FF0000">
|
||||||
RevPiPlcList.evt_listconn</h3>
|
RevPiPlcList.evt_listconn</h3>
|
||||||
<b>evt_listconn</b>(<i>evt=None</i>)
|
<b>evt_listconn</b>(<i>evt=None</i>)
|
||||||
|
<p>
|
||||||
|
Übernimmt Einstellungen in Eingabefelder.
|
||||||
|
</p>
|
||||||
<div align="right"><a style="color:#0000FF" href="#top">Up</a></div>
|
<div align="right"><a style="color:#0000FF" href="#top">Up</a></div>
|
||||||
<hr /><hr />
|
<hr /><hr />
|
||||||
<a NAME="get_connections" ID="get_connections"></a>
|
<a NAME="get_connections" ID="get_connections"></a>
|
||||||
@@ -160,7 +177,12 @@ RevPiPlcList.evt_listconn</h3>
|
|||||||
<b>get_connections</b>(<i></i>)
|
<b>get_connections</b>(<i></i>)
|
||||||
<p>
|
<p>
|
||||||
Verbindungen aus Datei laden.
|
Verbindungen aus Datei laden.
|
||||||
</p>
|
</p><dl>
|
||||||
|
<dt>Returns:</dt>
|
||||||
|
<dd>
|
||||||
|
dict() mit Verbindungen
|
||||||
|
</dd>
|
||||||
|
</dl>
|
||||||
<div align="right"><a style="color:#0000FF" href="#top">Up</a></div>
|
<div align="right"><a style="color:#0000FF" href="#top">Up</a></div>
|
||||||
<hr />
|
<hr />
|
||||||
</body></html>
|
</body></html>
|
||||||
@@ -50,19 +50,19 @@ Methods</h3>
|
|||||||
<td>Init RevPiProgram-Class.</td>
|
<td>Init RevPiProgram-Class.</td>
|
||||||
</tr><tr>
|
</tr><tr>
|
||||||
<td><a style="color:#0000FF" href="#RevPiProgram._checkclose">_checkclose</a></td>
|
<td><a style="color:#0000FF" href="#RevPiProgram._checkclose">_checkclose</a></td>
|
||||||
<td></td>
|
<td>Prüft ob Fenster beendet werden soll.</td>
|
||||||
</tr><tr>
|
</tr><tr>
|
||||||
<td><a style="color:#0000FF" href="#RevPiProgram._createwidgets">_createwidgets</a></td>
|
<td><a style="color:#0000FF" href="#RevPiProgram._createwidgets">_createwidgets</a></td>
|
||||||
<td></td>
|
<td>Erstellt alle Widgets.</td>
|
||||||
</tr><tr>
|
</tr><tr>
|
||||||
<td><a style="color:#0000FF" href="#RevPiProgram._evt_optdown">_evt_optdown</a></td>
|
<td><a style="color:#0000FF" href="#RevPiProgram._evt_optdown">_evt_optdown</a></td>
|
||||||
<td></td>
|
<td>Passt je nach gewählter Option den Status der Widgets an.</td>
|
||||||
</tr><tr>
|
</tr><tr>
|
||||||
<td><a style="color:#0000FF" href="#RevPiProgram._evt_optup">_evt_optup</a></td>
|
<td><a style="color:#0000FF" href="#RevPiProgram._evt_optup">_evt_optup</a></td>
|
||||||
<td></td>
|
<td>Passt je nach gewählter Option den Status der Widgets an.</td>
|
||||||
</tr><tr>
|
</tr><tr>
|
||||||
<td><a style="color:#0000FF" href="#RevPiProgram._loaddefault">_loaddefault</a></td>
|
<td><a style="color:#0000FF" href="#RevPiProgram._loaddefault">_loaddefault</a></td>
|
||||||
<td>Uebernimmt fuer den Pi die letzen Pfade.</td>
|
<td>Übernimmt für den Pi die letzen Pfade.</td>
|
||||||
</tr><tr>
|
</tr><tr>
|
||||||
<td><a style="color:#0000FF" href="#RevPiProgram._savedefaults">_savedefaults</a></td>
|
<td><a style="color:#0000FF" href="#RevPiProgram._savedefaults">_savedefaults</a></td>
|
||||||
<td>Schreibt fuer den Pi die letzen Pfade.</td>
|
<td>Schreibt fuer den Pi die letzen Pfade.</td>
|
||||||
@@ -103,35 +103,68 @@ RevPiProgram (Constructor)</h3>
|
|||||||
<b>RevPiProgram</b>(<i>master, xmlcli, xmlmode, revpi</i>)
|
<b>RevPiProgram</b>(<i>master, xmlcli, xmlmode, revpi</i>)
|
||||||
<p>
|
<p>
|
||||||
Init RevPiProgram-Class.
|
Init RevPiProgram-Class.
|
||||||
</p><a NAME="RevPiProgram._checkclose" ID="RevPiProgram._checkclose"></a>
|
</p><dl>
|
||||||
|
<dt>Returns:</dt>
|
||||||
|
<dd>
|
||||||
|
None
|
||||||
|
</dd>
|
||||||
|
</dl><a NAME="RevPiProgram._checkclose" ID="RevPiProgram._checkclose"></a>
|
||||||
<h3 style="background-color:#FFFFFF;color:#FF0000">
|
<h3 style="background-color:#FFFFFF;color:#FF0000">
|
||||||
RevPiProgram._checkclose</h3>
|
RevPiProgram._checkclose</h3>
|
||||||
<b>_checkclose</b>(<i>event=None</i>)
|
<b>_checkclose</b>(<i>event=None</i>)
|
||||||
<a NAME="RevPiProgram._createwidgets" ID="RevPiProgram._createwidgets"></a>
|
<p>
|
||||||
|
Prüft ob Fenster beendet werden soll.
|
||||||
|
</p><dl>
|
||||||
|
<dt><i>event</i></dt>
|
||||||
|
<dd>
|
||||||
|
tkinter-Event
|
||||||
|
</dd>
|
||||||
|
</dl><a NAME="RevPiProgram._createwidgets" ID="RevPiProgram._createwidgets"></a>
|
||||||
<h3 style="background-color:#FFFFFF;color:#FF0000">
|
<h3 style="background-color:#FFFFFF;color:#FF0000">
|
||||||
RevPiProgram._createwidgets</h3>
|
RevPiProgram._createwidgets</h3>
|
||||||
<b>_createwidgets</b>(<i></i>)
|
<b>_createwidgets</b>(<i></i>)
|
||||||
<a NAME="RevPiProgram._evt_optdown" ID="RevPiProgram._evt_optdown"></a>
|
<p>
|
||||||
|
Erstellt alle Widgets.
|
||||||
|
</p><a NAME="RevPiProgram._evt_optdown" ID="RevPiProgram._evt_optdown"></a>
|
||||||
<h3 style="background-color:#FFFFFF;color:#FF0000">
|
<h3 style="background-color:#FFFFFF;color:#FF0000">
|
||||||
RevPiProgram._evt_optdown</h3>
|
RevPiProgram._evt_optdown</h3>
|
||||||
<b>_evt_optdown</b>(<i>text=""</i>)
|
<b>_evt_optdown</b>(<i>text=""</i>)
|
||||||
<a NAME="RevPiProgram._evt_optup" ID="RevPiProgram._evt_optup"></a>
|
<p>
|
||||||
|
Passt je nach gewählter Option den Status der Widgets an.
|
||||||
|
</p><a NAME="RevPiProgram._evt_optup" ID="RevPiProgram._evt_optup"></a>
|
||||||
<h3 style="background-color:#FFFFFF;color:#FF0000">
|
<h3 style="background-color:#FFFFFF;color:#FF0000">
|
||||||
RevPiProgram._evt_optup</h3>
|
RevPiProgram._evt_optup</h3>
|
||||||
<b>_evt_optup</b>(<i>text=""</i>)
|
<b>_evt_optup</b>(<i>text=""</i>)
|
||||||
<a NAME="RevPiProgram._loaddefault" ID="RevPiProgram._loaddefault"></a>
|
<p>
|
||||||
|
Passt je nach gewählter Option den Status der Widgets an.
|
||||||
|
</p><a NAME="RevPiProgram._loaddefault" ID="RevPiProgram._loaddefault"></a>
|
||||||
<h3 style="background-color:#FFFFFF;color:#FF0000">
|
<h3 style="background-color:#FFFFFF;color:#FF0000">
|
||||||
RevPiProgram._loaddefault</h3>
|
RevPiProgram._loaddefault</h3>
|
||||||
<b>_loaddefault</b>(<i>full=False</i>)
|
<b>_loaddefault</b>(<i>full=False</i>)
|
||||||
<p>
|
<p>
|
||||||
Uebernimmt fuer den Pi die letzen Pfade.
|
Übernimmt für den Pi die letzen Pfade.
|
||||||
</p><a NAME="RevPiProgram._savedefaults" ID="RevPiProgram._savedefaults"></a>
|
</p><dl>
|
||||||
|
<dt><i>full</i></dt>
|
||||||
|
<dd>
|
||||||
|
Einstellungen für alle Verbindungen laden
|
||||||
|
</dd>
|
||||||
|
</dl><dl>
|
||||||
|
<dt>Returns:</dt>
|
||||||
|
<dd>
|
||||||
|
dict() mit Einstellungen
|
||||||
|
</dd>
|
||||||
|
</dl><a NAME="RevPiProgram._savedefaults" ID="RevPiProgram._savedefaults"></a>
|
||||||
<h3 style="background-color:#FFFFFF;color:#FF0000">
|
<h3 style="background-color:#FFFFFF;color:#FF0000">
|
||||||
RevPiProgram._savedefaults</h3>
|
RevPiProgram._savedefaults</h3>
|
||||||
<b>_savedefaults</b>(<i></i>)
|
<b>_savedefaults</b>(<i></i>)
|
||||||
<p>
|
<p>
|
||||||
Schreibt fuer den Pi die letzen Pfade.
|
Schreibt fuer den Pi die letzen Pfade.
|
||||||
</p><a NAME="RevPiProgram.check_replacedir" ID="RevPiProgram.check_replacedir"></a>
|
</p><dl>
|
||||||
|
<dt>Returns:</dt>
|
||||||
|
<dd>
|
||||||
|
True, bei erfolgreicher Verarbeitung
|
||||||
|
</dd>
|
||||||
|
</dl><a NAME="RevPiProgram.check_replacedir" ID="RevPiProgram.check_replacedir"></a>
|
||||||
<h3 style="background-color:#FFFFFF;color:#FF0000">
|
<h3 style="background-color:#FFFFFF;color:#FF0000">
|
||||||
RevPiProgram.check_replacedir</h3>
|
RevPiProgram.check_replacedir</h3>
|
||||||
<b>check_replacedir</b>(<i>rootdir</i>)
|
<b>check_replacedir</b>(<i>rootdir</i>)
|
||||||
@@ -141,7 +174,7 @@ Gibt das rootdir von einem entpackten Verzeichnis zurueck.
|
|||||||
Dabei wird geprueft, ob es sich um einen einzelnen Ordner handelt
|
Dabei wird geprueft, ob es sich um einen einzelnen Ordner handelt
|
||||||
und ob es eine piCtory Konfiguration im rootdir gibt.
|
und ob es eine piCtory Konfiguration im rootdir gibt.
|
||||||
</p><dl>
|
</p><dl>
|
||||||
<dt><i>rootdir:</i></dt>
|
<dt><i>rootdir</i></dt>
|
||||||
<dd>
|
<dd>
|
||||||
Verzeichnis fuer Pruefung
|
Verzeichnis fuer Pruefung
|
||||||
</dd>
|
</dd>
|
||||||
@@ -157,7 +190,7 @@ RevPiProgram.create_filelist</h3>
|
|||||||
<p>
|
<p>
|
||||||
Erstellt eine Dateiliste von einem Verzeichnis.
|
Erstellt eine Dateiliste von einem Verzeichnis.
|
||||||
</p><dl>
|
</p><dl>
|
||||||
<dt><i>rootdir:</i></dt>
|
<dt><i>rootdir</i></dt>
|
||||||
<dd>
|
<dd>
|
||||||
Verzeichnis fuer das eine Liste erstellt werden soll
|
Verzeichnis fuer das eine Liste erstellt werden soll
|
||||||
</dd>
|
</dd>
|
||||||
@@ -196,7 +229,12 @@ RevPiProgram.plcupload</h3>
|
|||||||
<b>plcupload</b>(<i></i>)
|
<b>plcupload</b>(<i></i>)
|
||||||
<p>
|
<p>
|
||||||
Lädt das angegebene Projekt auf den RevPi.
|
Lädt das angegebene Projekt auf den RevPi.
|
||||||
</p><a NAME="RevPiProgram.setpictoryrsc" ID="RevPiProgram.setpictoryrsc"></a>
|
</p><dl>
|
||||||
|
<dt>Returns:</dt>
|
||||||
|
<dd>
|
||||||
|
True, bei erfolgreicher Verarbeitung
|
||||||
|
</dd>
|
||||||
|
</dl><a NAME="RevPiProgram.setpictoryrsc" ID="RevPiProgram.setpictoryrsc"></a>
|
||||||
<h3 style="background-color:#FFFFFF;color:#FF0000">
|
<h3 style="background-color:#FFFFFF;color:#FF0000">
|
||||||
RevPiProgram.setpictoryrsc</h3>
|
RevPiProgram.setpictoryrsc</h3>
|
||||||
<b>setpictoryrsc</b>(<i>filename=None</i>)
|
<b>setpictoryrsc</b>(<i>filename=None</i>)
|
||||||
|
|||||||
@@ -68,7 +68,7 @@ Methods</h3>
|
|||||||
<td>Generiert Menüeinträge.</td>
|
<td>Generiert Menüeinträge.</td>
|
||||||
</tr><tr>
|
</tr><tr>
|
||||||
<td><a style="color:#0000FF" href="#RevPiPyControl._opt_conn">_opt_conn</a></td>
|
<td><a style="color:#0000FF" href="#RevPiPyControl._opt_conn">_opt_conn</a></td>
|
||||||
<td></td>
|
<td>Stellt eine neue Verbindung zu RevPiPyLoad her.</td>
|
||||||
</tr><tr>
|
</tr><tr>
|
||||||
<td><a style="color:#0000FF" href="#RevPiPyControl.infowindow">infowindow</a></td>
|
<td><a style="color:#0000FF" href="#RevPiPyControl.infowindow">infowindow</a></td>
|
||||||
<td>Öffnet das Fenster für die Info.</td>
|
<td>Öffnet das Fenster für die Info.</td>
|
||||||
@@ -104,7 +104,7 @@ Methods</h3>
|
|||||||
<td>Setzt alles zurück für neue Verbindungen.</td>
|
<td>Setzt alles zurück für neue Verbindungen.</td>
|
||||||
</tr><tr>
|
</tr><tr>
|
||||||
<td><a style="color:#0000FF" href="#RevPiPyControl.tmr_plcrunning">tmr_plcrunning</a></td>
|
<td><a style="color:#0000FF" href="#RevPiPyControl.tmr_plcrunning">tmr_plcrunning</a></td>
|
||||||
<td></td>
|
<td>Timer der den Status des PLC Programms prüft.</td>
|
||||||
</tr><tr>
|
</tr><tr>
|
||||||
<td><a style="color:#0000FF" href="#RevPiPyControl.visitwebsite">visitwebsite</a></td>
|
<td><a style="color:#0000FF" href="#RevPiPyControl.visitwebsite">visitwebsite</a></td>
|
||||||
<td>Öffnet auf dem System einen Webbrowser zur Projektseite.</td>
|
<td>Öffnet auf dem System einen Webbrowser zur Projektseite.</td>
|
||||||
@@ -122,7 +122,7 @@ RevPiPyControl (Constructor)</h3>
|
|||||||
<p>
|
<p>
|
||||||
Init RevPiPyControl-Class.
|
Init RevPiPyControl-Class.
|
||||||
</p><dl>
|
</p><dl>
|
||||||
<dt><i>master:</i></dt>
|
<dt><i>master</i></dt>
|
||||||
<dd>
|
<dd>
|
||||||
tkinter master
|
tkinter master
|
||||||
</dd>
|
</dd>
|
||||||
@@ -145,7 +145,7 @@ RevPiPyControl._closeapp</h3>
|
|||||||
<p>
|
<p>
|
||||||
Räumt auf und beendet Programm.
|
Räumt auf und beendet Programm.
|
||||||
</p><dl>
|
</p><dl>
|
||||||
<dt><i>event:</i></dt>
|
<dt><i>event</i></dt>
|
||||||
<dd>
|
<dd>
|
||||||
tkinter Event
|
tkinter Event
|
||||||
</dd>
|
</dd>
|
||||||
@@ -171,7 +171,14 @@ Generiert Menüeinträge.
|
|||||||
<h3 style="background-color:#FFFFFF;color:#FF0000">
|
<h3 style="background-color:#FFFFFF;color:#FF0000">
|
||||||
RevPiPyControl._opt_conn</h3>
|
RevPiPyControl._opt_conn</h3>
|
||||||
<b>_opt_conn</b>(<i>text</i>)
|
<b>_opt_conn</b>(<i>text</i>)
|
||||||
<a NAME="RevPiPyControl.infowindow" ID="RevPiPyControl.infowindow"></a>
|
<p>
|
||||||
|
Stellt eine neue Verbindung zu RevPiPyLoad her.
|
||||||
|
</p><dl>
|
||||||
|
<dt><i>text</i></dt>
|
||||||
|
<dd>
|
||||||
|
Verbindungsname
|
||||||
|
</dd>
|
||||||
|
</dl><a NAME="RevPiPyControl.infowindow" ID="RevPiPyControl.infowindow"></a>
|
||||||
<h3 style="background-color:#FFFFFF;color:#FF0000">
|
<h3 style="background-color:#FFFFFF;color:#FF0000">
|
||||||
RevPiPyControl.infowindow</h3>
|
RevPiPyControl.infowindow</h3>
|
||||||
<b>infowindow</b>(<i></i>)
|
<b>infowindow</b>(<i></i>)
|
||||||
@@ -195,7 +202,12 @@ RevPiPyControl.plclogs</h3>
|
|||||||
<b>plclogs</b>(<i></i>)
|
<b>plclogs</b>(<i></i>)
|
||||||
<p>
|
<p>
|
||||||
Öffnet das Fenster für Logdateien.
|
Öffnet das Fenster für Logdateien.
|
||||||
</p><a NAME="RevPiPyControl.plcoptions" ID="RevPiPyControl.plcoptions"></a>
|
</p><dl>
|
||||||
|
<dt>Returns:</dt>
|
||||||
|
<dd>
|
||||||
|
None
|
||||||
|
</dd>
|
||||||
|
</dl><a NAME="RevPiPyControl.plcoptions" ID="RevPiPyControl.plcoptions"></a>
|
||||||
<h3 style="background-color:#FFFFFF;color:#FF0000">
|
<h3 style="background-color:#FFFFFF;color:#FF0000">
|
||||||
RevPiPyControl.plcoptions</h3>
|
RevPiPyControl.plcoptions</h3>
|
||||||
<b>plcoptions</b>(<i></i>)
|
<b>plcoptions</b>(<i></i>)
|
||||||
@@ -241,7 +253,9 @@ Setzt alles zurück für neue Verbindungen.
|
|||||||
<h3 style="background-color:#FFFFFF;color:#FF0000">
|
<h3 style="background-color:#FFFFFF;color:#FF0000">
|
||||||
RevPiPyControl.tmr_plcrunning</h3>
|
RevPiPyControl.tmr_plcrunning</h3>
|
||||||
<b>tmr_plcrunning</b>(<i></i>)
|
<b>tmr_plcrunning</b>(<i></i>)
|
||||||
<a NAME="RevPiPyControl.visitwebsite" ID="RevPiPyControl.visitwebsite"></a>
|
<p>
|
||||||
|
Timer der den Status des PLC Programms prüft.
|
||||||
|
</p><a NAME="RevPiPyControl.visitwebsite" ID="RevPiPyControl.visitwebsite"></a>
|
||||||
<h3 style="background-color:#FFFFFF;color:#FF0000">
|
<h3 style="background-color:#FFFFFF;color:#FF0000">
|
||||||
RevPiPyControl.visitwebsite</h3>
|
RevPiPyControl.visitwebsite</h3>
|
||||||
<b>visitwebsite</b>(<i></i>)
|
<b>visitwebsite</b>(<i></i>)
|
||||||
|
|||||||
@@ -18,8 +18,8 @@ def addroot(filename):
|
|||||||
Je nach Ausführungsart der Anwendung muss das root-dir über
|
Je nach Ausführungsart der Anwendung muss das root-dir über
|
||||||
andere Arten abgerufen werden.
|
andere Arten abgerufen werden.
|
||||||
|
|
||||||
@param filename: Datei oder Ordnername
|
@param filename Datei oder Ordnername
|
||||||
@returns: root dir
|
@return root dir
|
||||||
|
|
||||||
"""
|
"""
|
||||||
if getattr(sys, "frozen", False):
|
if getattr(sys, "frozen", False):
|
||||||
|
|||||||
@@ -63,8 +63,8 @@ class RevPiCheckClient(tkinter.Frame):
|
|||||||
|
|
||||||
def __hidewin(self, win, event=None):
|
def __hidewin(self, win, event=None):
|
||||||
u"""Verbergt übergebenes Fenster.
|
u"""Verbergt übergebenes Fenster.
|
||||||
@param win: Fenster zum verbergen
|
@param win Fenster zum verbergen
|
||||||
@param event: Tkinter Event"""
|
@param event Tkinter Event"""
|
||||||
win.withdraw()
|
win.withdraw()
|
||||||
|
|
||||||
def __saveoldvalue(self, event, tkvar):
|
def __saveoldvalue(self, event, tkvar):
|
||||||
@@ -78,7 +78,7 @@ class RevPiCheckClient(tkinter.Frame):
|
|||||||
|
|
||||||
def __showwin(self, win):
|
def __showwin(self, win):
|
||||||
u"""Zeigt oder verbergt übergebenes Fenster.
|
u"""Zeigt oder verbergt übergebenes Fenster.
|
||||||
@param win: Fenster zum anzeigen/verbergen"""
|
@param win Fenster zum anzeigen/verbergen"""
|
||||||
if win.winfo_viewable():
|
if win.winfo_viewable():
|
||||||
win.withdraw()
|
win.withdraw()
|
||||||
else:
|
else:
|
||||||
@@ -86,8 +86,8 @@ class RevPiCheckClient(tkinter.Frame):
|
|||||||
|
|
||||||
def __spinboxkey(self, device, io, event=None):
|
def __spinboxkey(self, device, io, event=None):
|
||||||
u"""Prüft die Eingabe auf plausibilität.
|
u"""Prüft die Eingabe auf plausibilität.
|
||||||
@param event: tkinter Event
|
@param event tkinter Event
|
||||||
@param io: IO Liste mit tkinter Variable"""
|
@param io IO Liste mit tkinter Variable"""
|
||||||
# io = [name,bytelen,byteaddr,bmk,bitaddress,(tkinter_var)]
|
# io = [name,bytelen,byteaddr,bmk,bitaddress,(tkinter_var)]
|
||||||
try:
|
try:
|
||||||
newvalue = io[5].get()
|
newvalue = io[5].get()
|
||||||
@@ -112,9 +112,9 @@ class RevPiCheckClient(tkinter.Frame):
|
|||||||
def _createiogroup(self, device, frame, iotype):
|
def _createiogroup(self, device, frame, iotype):
|
||||||
u"""Erstellt IO-Gruppen.
|
u"""Erstellt IO-Gruppen.
|
||||||
|
|
||||||
@param device: Deviceposition
|
@param device Deviceposition
|
||||||
@param frame: tkinter Frame
|
@param frame tkinter Frame
|
||||||
@iotype: 'inp' oder 'out' als str()
|
@param iotype 'inp' oder 'out' als str()
|
||||||
|
|
||||||
"""
|
"""
|
||||||
# IO-Typen festlegen
|
# IO-Typen festlegen
|
||||||
@@ -265,12 +265,12 @@ class RevPiCheckClient(tkinter.Frame):
|
|||||||
|
|
||||||
def _onfrmconf(self, canvas):
|
def _onfrmconf(self, canvas):
|
||||||
u"""Erstellt Fenster in einem Canvas.
|
u"""Erstellt Fenster in einem Canvas.
|
||||||
@param canvas: Canvas in dem Objekte erstellt werden sollen"""
|
@param canvas Canvas in dem Objekte erstellt werden sollen"""
|
||||||
canvas.configure(scrollregion=canvas.bbox("all"))
|
canvas.configure(scrollregion=canvas.bbox("all"))
|
||||||
|
|
||||||
def _warnwrite(self):
|
def _warnwrite(self):
|
||||||
u"""Warnung für Benutzer über Schreibfunktion einmal fragen.
|
u"""Warnung für Benutzer über Schreibfunktion einmal fragen.
|
||||||
@returns: True, wenn Warnung einmal mit OK bestätigt wurde"""
|
@return True, wenn Warnung einmal mit OK bestätigt wurde"""
|
||||||
if self.__checkwrite:
|
if self.__checkwrite:
|
||||||
self.__checkwrite = not tkmsg.askokcancel(
|
self.__checkwrite = not tkmsg.askokcancel(
|
||||||
_("Warning"),
|
_("Warning"),
|
||||||
@@ -285,8 +285,8 @@ class RevPiCheckClient(tkinter.Frame):
|
|||||||
|
|
||||||
def _workvalues(self, io_dicts=None, writeout=False):
|
def _workvalues(self, io_dicts=None, writeout=False):
|
||||||
u"""Alle Werte der Inputs und Outputs abrufen.
|
u"""Alle Werte der Inputs und Outputs abrufen.
|
||||||
@param io_dicts: Arbeit nur für dieses Dict()
|
@param io_dicts Arbeit nur für dieses Dict()
|
||||||
@param writeout: Änderungen auf RevPi schreiben"""
|
@param writeout Änderungen auf RevPi schreiben"""
|
||||||
|
|
||||||
# Abfragelisten vorbereiten
|
# Abfragelisten vorbereiten
|
||||||
if io_dicts is None:
|
if io_dicts is None:
|
||||||
@@ -377,7 +377,7 @@ class RevPiCheckClient(tkinter.Frame):
|
|||||||
|
|
||||||
def validatereturn(self, returnlist):
|
def validatereturn(self, returnlist):
|
||||||
u"""Überprüft die Rückgaben der setvalue Funktion.
|
u"""Überprüft die Rückgaben der setvalue Funktion.
|
||||||
@param returnlist: list() der xml Rückgabe"""
|
@param returnlist list() der xml Rückgabe"""
|
||||||
if type(returnlist[0]) != list:
|
if type(returnlist[0]) != list:
|
||||||
returnlist = [returnlist]
|
returnlist = [returnlist]
|
||||||
|
|
||||||
|
|||||||
@@ -29,7 +29,7 @@ class RevPiInfo(tkinter.Frame):
|
|||||||
|
|
||||||
def _checkclose(self, event=None):
|
def _checkclose(self, event=None):
|
||||||
u"""Prüft ob Fenster beendet werden soll.
|
u"""Prüft ob Fenster beendet werden soll.
|
||||||
@param event: tkinter-Event"""
|
@param event tkinter-Event"""
|
||||||
self.master.destroy()
|
self.master.destroy()
|
||||||
|
|
||||||
def _createwidgets(self, extended=False):
|
def _createwidgets(self, extended=False):
|
||||||
|
|||||||
@@ -31,7 +31,7 @@ class RevPiLogfile(tkinter.Frame):
|
|||||||
|
|
||||||
def _checkclose(self, event=None):
|
def _checkclose(self, event=None):
|
||||||
u"""Prüft ob Fenster beendet werden soll.
|
u"""Prüft ob Fenster beendet werden soll.
|
||||||
@param event: tkinter-Event"""
|
@param event tkinter-Event"""
|
||||||
self.master.destroy()
|
self.master.destroy()
|
||||||
|
|
||||||
def _createwidgets(self):
|
def _createwidgets(self):
|
||||||
@@ -91,7 +91,7 @@ class RevPiLogfile(tkinter.Frame):
|
|||||||
|
|
||||||
def get_applog(self, full=False):
|
def get_applog(self, full=False):
|
||||||
u"""Ruft App Logbuch ab.
|
u"""Ruft App Logbuch ab.
|
||||||
@param full: Ganzes Logbuch laden"""
|
@param full Ganzes Logbuch laden"""
|
||||||
|
|
||||||
# Logs abrufen und letzte Position merken
|
# Logs abrufen und letzte Position merken
|
||||||
self.mrkapp = self._load_log(
|
self.mrkapp = self._load_log(
|
||||||
@@ -103,7 +103,7 @@ class RevPiLogfile(tkinter.Frame):
|
|||||||
|
|
||||||
def get_plclog(self, full=False):
|
def get_plclog(self, full=False):
|
||||||
u"""Ruft PLC Logbuch ab.
|
u"""Ruft PLC Logbuch ab.
|
||||||
@param full: Ganzes Logbuch laden"""
|
@param full Ganzes Logbuch laden"""
|
||||||
|
|
||||||
# Logs abrufen und letzte Position merken
|
# Logs abrufen und letzte Position merken
|
||||||
self.mrkplc = self._load_log(
|
self.mrkplc = self._load_log(
|
||||||
@@ -116,11 +116,11 @@ class RevPiLogfile(tkinter.Frame):
|
|||||||
def _load_log(self, textwidget, xmlcall, startposition, full):
|
def _load_log(self, textwidget, xmlcall, startposition, full):
|
||||||
u"""Läd die angegebenen Logfiles herunter.
|
u"""Läd die angegebenen Logfiles herunter.
|
||||||
|
|
||||||
@param textwidget: Widget in das Logs eingefügt werden sollen
|
@param textwidget Widget in das Logs eingefügt werden sollen
|
||||||
@param xmlcall: xmlrpc Funktion zum Abrufen der Logdaten
|
@param xmlcall xmlrpc Funktion zum Abrufen der Logdaten
|
||||||
@param startposition: Startposition ab der Logdaten kommen sollen
|
@param startposition Startposition ab der Logdaten kommen sollen
|
||||||
@param full: Komplettes Logbuch laden
|
@param full Komplettes Logbuch laden
|
||||||
@returns: Ende der Datei (neue Startposition)
|
@return Ende der Datei (neue Startposition)
|
||||||
|
|
||||||
"""
|
"""
|
||||||
roll = textwidget.yview()[1] == 1.0
|
roll = textwidget.yview()[1] == 1.0
|
||||||
|
|||||||
@@ -17,7 +17,7 @@ class RevPiOption(tkinter.Frame):
|
|||||||
|
|
||||||
def __init__(self, master, xmlcli, xmlmode):
|
def __init__(self, master, xmlcli, xmlmode):
|
||||||
u"""Init RevPiOption-Class.
|
u"""Init RevPiOption-Class.
|
||||||
@returns: None"""
|
@return None"""
|
||||||
if xmlmode < 2:
|
if xmlmode < 2:
|
||||||
return None
|
return None
|
||||||
|
|
||||||
@@ -36,7 +36,7 @@ class RevPiOption(tkinter.Frame):
|
|||||||
|
|
||||||
def _changesdone(self):
|
def _changesdone(self):
|
||||||
u"""Prüft ob sich die Einstellungen geändert haben.
|
u"""Prüft ob sich die Einstellungen geändert haben.
|
||||||
@returns: True, wenn min. eine Einstellung geändert wurde"""
|
@return True, wenn min. eine Einstellung geändert wurde"""
|
||||||
return (
|
return (
|
||||||
self.var_start.get() != self.dc.get("autostart", "1")
|
self.var_start.get() != self.dc.get("autostart", "1")
|
||||||
or self.var_reload.get() != self.dc.get("autoreload", "1")
|
or self.var_reload.get() != self.dc.get("autoreload", "1")
|
||||||
@@ -54,7 +54,7 @@ class RevPiOption(tkinter.Frame):
|
|||||||
|
|
||||||
def _checkclose(self, event=None):
|
def _checkclose(self, event=None):
|
||||||
u"""Prüft ob Fenster beendet werden soll.
|
u"""Prüft ob Fenster beendet werden soll.
|
||||||
@param event: tkinter-Event"""
|
@param event tkinter-Event"""
|
||||||
ask = True
|
ask = True
|
||||||
if self._changesdone():
|
if self._changesdone():
|
||||||
ask = tkmsg.askyesno(
|
ask = tkmsg.askyesno(
|
||||||
|
|||||||
@@ -26,7 +26,8 @@ savefile = os.path.join(homedir, ".revpipyplc", "connections.dat")
|
|||||||
|
|
||||||
|
|
||||||
def get_connections():
|
def get_connections():
|
||||||
u"""Verbindungen aus Datei laden."""
|
u"""Verbindungen aus Datei laden.
|
||||||
|
@return dict() mit Verbindungen"""
|
||||||
if os.path.exists(savefile):
|
if os.path.exists(savefile):
|
||||||
fh = open(savefile, "rb")
|
fh = open(savefile, "rb")
|
||||||
connections = pickle.load(fh)
|
connections = pickle.load(fh)
|
||||||
@@ -39,7 +40,7 @@ class RevPiPlcList(tkinter.Frame):
|
|||||||
|
|
||||||
def __init__(self, master):
|
def __init__(self, master):
|
||||||
u"""Init RevPiPlcList-class.
|
u"""Init RevPiPlcList-class.
|
||||||
@param master: tkinter master"""
|
@param master tkinter master"""
|
||||||
super().__init__(master)
|
super().__init__(master)
|
||||||
self.master.bind("<KeyPress-Escape>", self._checkclose)
|
self.master.bind("<KeyPress-Escape>", self._checkclose)
|
||||||
self.pack()
|
self.pack()
|
||||||
@@ -55,7 +56,7 @@ class RevPiPlcList(tkinter.Frame):
|
|||||||
|
|
||||||
def _checkclose(self, event=None):
|
def _checkclose(self, event=None):
|
||||||
u"""Prüft ob Fenster beendet werden soll.
|
u"""Prüft ob Fenster beendet werden soll.
|
||||||
@param event: tkinter-Event"""
|
@param event tkinter-Event"""
|
||||||
ask = True
|
ask = True
|
||||||
if self.changes:
|
if self.changes:
|
||||||
ask = tkmsg.askyesno(
|
ask = tkmsg.askyesno(
|
||||||
@@ -134,7 +135,8 @@ class RevPiPlcList(tkinter.Frame):
|
|||||||
self.btn_close.grid(column=4, row=9, sticky="se")
|
self.btn_close.grid(column=4, row=9, sticky="se")
|
||||||
|
|
||||||
def _saveappdata(self):
|
def _saveappdata(self):
|
||||||
u"""Speichert Verbindungen im home Dir."""
|
u"""Speichert Verbindungen im home Dir.
|
||||||
|
@return True, bei erfolgreicher Verarbeitung"""
|
||||||
try:
|
try:
|
||||||
makedirs(os.path.dirname(savefile), exist_ok=True)
|
makedirs(os.path.dirname(savefile), exist_ok=True)
|
||||||
fh = open(savefile, "wb")
|
fh = open(savefile, "wb")
|
||||||
@@ -151,6 +153,7 @@ class RevPiPlcList(tkinter.Frame):
|
|||||||
self.list_conn.insert("end", *lst_conns)
|
self.list_conn.insert("end", *lst_conns)
|
||||||
|
|
||||||
def evt_btnadd(self):
|
def evt_btnadd(self):
|
||||||
|
u"""Verbindungseinstellungen übernehmen."""
|
||||||
# TODO: Daten prüfen
|
# TODO: Daten prüfen
|
||||||
self._connections[self.var_name.get()] = \
|
self._connections[self.var_name.get()] = \
|
||||||
(self.var_address.get(), self.var_port.get())
|
(self.var_address.get(), self.var_port.get())
|
||||||
@@ -160,6 +163,7 @@ class RevPiPlcList(tkinter.Frame):
|
|||||||
self.changes = True
|
self.changes = True
|
||||||
|
|
||||||
def evt_btnnew(self):
|
def evt_btnnew(self):
|
||||||
|
u"""Neue Verbindung erstellen."""
|
||||||
self.list_conn.select_clear(0, "end")
|
self.list_conn.select_clear(0, "end")
|
||||||
self.evt_listconn()
|
self.evt_listconn()
|
||||||
|
|
||||||
@@ -169,6 +173,7 @@ class RevPiPlcList(tkinter.Frame):
|
|||||||
self.var_port.set("55123")
|
self.var_port.set("55123")
|
||||||
|
|
||||||
def evt_btnremove(self):
|
def evt_btnremove(self):
|
||||||
|
u"""Verbindung löschen."""
|
||||||
item_index = self.list_conn.curselection()
|
item_index = self.list_conn.curselection()
|
||||||
if len(item_index) == 1:
|
if len(item_index) == 1:
|
||||||
item = self.list_conn.get(item_index[0])
|
item = self.list_conn.get(item_index[0])
|
||||||
@@ -186,6 +191,7 @@ class RevPiPlcList(tkinter.Frame):
|
|||||||
self.changes = True
|
self.changes = True
|
||||||
|
|
||||||
def evt_btnsave(self):
|
def evt_btnsave(self):
|
||||||
|
u"""Alle Verbindungen speichern."""
|
||||||
if self._saveappdata():
|
if self._saveappdata():
|
||||||
ask = tkmsg.askyesno(
|
ask = tkmsg.askyesno(
|
||||||
_("Information"),
|
_("Information"),
|
||||||
@@ -202,6 +208,7 @@ class RevPiPlcList(tkinter.Frame):
|
|||||||
)
|
)
|
||||||
|
|
||||||
def evt_listconn(self, evt=None):
|
def evt_listconn(self, evt=None):
|
||||||
|
u"""Übernimmt Einstellungen in Eingabefelder."""
|
||||||
|
|
||||||
item_index = self.list_conn.curselection()
|
item_index = self.list_conn.curselection()
|
||||||
if len(item_index) == 1:
|
if len(item_index) == 1:
|
||||||
@@ -219,6 +226,7 @@ class RevPiPlcList(tkinter.Frame):
|
|||||||
self.btn_remove["state"] = "disabled"
|
self.btn_remove["state"] = "disabled"
|
||||||
|
|
||||||
def evt_keypress(self, evt=None):
|
def evt_keypress(self, evt=None):
|
||||||
|
u"""Passt bei Tastendruck den Status der Buttons an."""
|
||||||
okvalue = "normal" if (
|
okvalue = "normal" if (
|
||||||
self.var_address.get() != ""
|
self.var_address.get() != ""
|
||||||
and self.var_name.get() != ""
|
and self.var_name.get() != ""
|
||||||
|
|||||||
@@ -35,7 +35,8 @@ savefile = os.path.join(homedir, ".revpipyplc", "programpath.dat")
|
|||||||
class RevPiProgram(tkinter.Frame):
|
class RevPiProgram(tkinter.Frame):
|
||||||
|
|
||||||
def __init__(self, master, xmlcli, xmlmode, revpi):
|
def __init__(self, master, xmlcli, xmlmode, revpi):
|
||||||
u"""Init RevPiProgram-Class."""
|
u"""Init RevPiProgram-Class.
|
||||||
|
@return None"""
|
||||||
if xmlmode < 2:
|
if xmlmode < 2:
|
||||||
return None
|
return None
|
||||||
|
|
||||||
@@ -60,6 +61,8 @@ class RevPiProgram(tkinter.Frame):
|
|||||||
self._evt_optup()
|
self._evt_optup()
|
||||||
|
|
||||||
def _checkclose(self, event=None):
|
def _checkclose(self, event=None):
|
||||||
|
u"""Prüft ob Fenster beendet werden soll.
|
||||||
|
@param event tkinter-Event"""
|
||||||
if self.uploaded:
|
if self.uploaded:
|
||||||
tkmsg.showinfo(
|
tkmsg.showinfo(
|
||||||
_("Information"),
|
_("Information"),
|
||||||
@@ -71,6 +74,7 @@ class RevPiProgram(tkinter.Frame):
|
|||||||
self.master.destroy()
|
self.master.destroy()
|
||||||
|
|
||||||
def _createwidgets(self):
|
def _createwidgets(self):
|
||||||
|
u"""Erstellt alle Widgets."""
|
||||||
self.master.wm_title(_("RevPi Python PLC program"))
|
self.master.wm_title(_("RevPi Python PLC program"))
|
||||||
self.master.wm_resizable(width=False, height=False)
|
self.master.wm_resizable(width=False, height=False)
|
||||||
|
|
||||||
@@ -217,6 +221,7 @@ class RevPiProgram(tkinter.Frame):
|
|||||||
btn.grid()
|
btn.grid()
|
||||||
|
|
||||||
def _evt_optdown(self, text=""):
|
def _evt_optdown(self, text=""):
|
||||||
|
u"""Passt je nach gewählter Option den Status der Widgets an."""
|
||||||
if self.lst_typedown.index(self.var_typedown.get()) == 0:
|
if self.lst_typedown.index(self.var_typedown.get()) == 0:
|
||||||
self.var_picdown.set(False)
|
self.var_picdown.set(False)
|
||||||
self.ckb_picdown["state"] = "disable"
|
self.ckb_picdown["state"] = "disable"
|
||||||
@@ -224,6 +229,7 @@ class RevPiProgram(tkinter.Frame):
|
|||||||
self.ckb_picdown["state"] = "normal"
|
self.ckb_picdown["state"] = "normal"
|
||||||
|
|
||||||
def _evt_optup(self, text=""):
|
def _evt_optup(self, text=""):
|
||||||
|
u"""Passt je nach gewählter Option den Status der Widgets an."""
|
||||||
if self.lst_typeup.index(self.var_typeup.get()) <= 1:
|
if self.lst_typeup.index(self.var_typeup.get()) <= 1:
|
||||||
self.var_picup.set(False)
|
self.var_picup.set(False)
|
||||||
self.ckb_picup["state"] = "disable"
|
self.ckb_picup["state"] = "disable"
|
||||||
@@ -231,7 +237,9 @@ class RevPiProgram(tkinter.Frame):
|
|||||||
self.ckb_picup["state"] = "normal"
|
self.ckb_picup["state"] = "normal"
|
||||||
|
|
||||||
def _loaddefault(self, full=False):
|
def _loaddefault(self, full=False):
|
||||||
"""Uebernimmt fuer den Pi die letzen Pfade."""
|
u"""Übernimmt für den Pi die letzen Pfade.
|
||||||
|
@param full Einstellungen für alle Verbindungen laden
|
||||||
|
@return dict() mit Einstellungen"""
|
||||||
if os.path.exists(savefile):
|
if os.path.exists(savefile):
|
||||||
fh = open(savefile, "rb")
|
fh = open(savefile, "rb")
|
||||||
dict_all = pickle.load(fh)
|
dict_all = pickle.load(fh)
|
||||||
@@ -242,7 +250,8 @@ class RevPiProgram(tkinter.Frame):
|
|||||||
return {}
|
return {}
|
||||||
|
|
||||||
def _savedefaults(self):
|
def _savedefaults(self):
|
||||||
u"""Schreibt fuer den Pi die letzen Pfade."""
|
u"""Schreibt fuer den Pi die letzen Pfade.
|
||||||
|
@return True, bei erfolgreicher Verarbeitung"""
|
||||||
try:
|
try:
|
||||||
makedirs(os.path.dirname(savefile), exist_ok=True)
|
makedirs(os.path.dirname(savefile), exist_ok=True)
|
||||||
dict_all = self._loaddefault(full=True)
|
dict_all = self._loaddefault(full=True)
|
||||||
@@ -256,8 +265,8 @@ class RevPiProgram(tkinter.Frame):
|
|||||||
|
|
||||||
def create_filelist(self, rootdir):
|
def create_filelist(self, rootdir):
|
||||||
u"""Erstellt eine Dateiliste von einem Verzeichnis.
|
u"""Erstellt eine Dateiliste von einem Verzeichnis.
|
||||||
@param rootdir: Verzeichnis fuer das eine Liste erstellt werden soll
|
@param rootdir Verzeichnis fuer das eine Liste erstellt werden soll
|
||||||
@returns: Dateiliste"""
|
@return Dateiliste"""
|
||||||
filelist = []
|
filelist = []
|
||||||
for tup_dir in os.walk(rootdir):
|
for tup_dir in os.walk(rootdir):
|
||||||
for fname in tup_dir[2]:
|
for fname in tup_dir[2]:
|
||||||
@@ -269,8 +278,8 @@ class RevPiProgram(tkinter.Frame):
|
|||||||
|
|
||||||
Dabei wird geprueft, ob es sich um einen einzelnen Ordner handelt
|
Dabei wird geprueft, ob es sich um einen einzelnen Ordner handelt
|
||||||
und ob es eine piCtory Konfiguration im rootdir gibt.
|
und ob es eine piCtory Konfiguration im rootdir gibt.
|
||||||
@param rootdir: Verzeichnis fuer Pruefung
|
@param rootdir Verzeichnis fuer Pruefung
|
||||||
@returns: Abgeaendertes rootdir
|
@return Abgeaendertes rootdir
|
||||||
|
|
||||||
"""
|
"""
|
||||||
lst_dir = os.listdir(rootdir)
|
lst_dir = os.listdir(rootdir)
|
||||||
@@ -558,7 +567,8 @@ class RevPiProgram(tkinter.Frame):
|
|||||||
fh.close()
|
fh.close()
|
||||||
|
|
||||||
def plcupload(self):
|
def plcupload(self):
|
||||||
u"""Lädt das angegebene Projekt auf den RevPi."""
|
u"""Lädt das angegebene Projekt auf den RevPi.
|
||||||
|
@return True, bei erfolgreicher Verarbeitung"""
|
||||||
tup = self.lst_typeup.index(self.var_typeup.get())
|
tup = self.lst_typeup.index(self.var_typeup.get())
|
||||||
dirselect = ""
|
dirselect = ""
|
||||||
dirtmp = None
|
dirtmp = None
|
||||||
@@ -748,3 +758,5 @@ class RevPiProgram(tkinter.Frame):
|
|||||||
# Temp-Dir aufräumen
|
# Temp-Dir aufräumen
|
||||||
if dirtmp is not None:
|
if dirtmp is not None:
|
||||||
rmtree(dirtmp)
|
rmtree(dirtmp)
|
||||||
|
|
||||||
|
return True
|
||||||
|
|||||||
@@ -31,7 +31,7 @@ class RevPiPyControl(tkinter.Frame):
|
|||||||
|
|
||||||
def __init__(self, master=None):
|
def __init__(self, master=None):
|
||||||
u"""Init RevPiPyControl-Class.
|
u"""Init RevPiPyControl-Class.
|
||||||
@param master: tkinter master"""
|
@param master tkinter master"""
|
||||||
super().__init__(master)
|
super().__init__(master)
|
||||||
self.master.protocol("WM_DELETE_WINDOW", self._closeapp)
|
self.master.protocol("WM_DELETE_WINDOW", self._closeapp)
|
||||||
self.pack(fill="both", expand=True)
|
self.pack(fill="both", expand=True)
|
||||||
@@ -84,7 +84,7 @@ class RevPiPyControl(tkinter.Frame):
|
|||||||
|
|
||||||
def _closeapp(self, event=None):
|
def _closeapp(self, event=None):
|
||||||
u"""Räumt auf und beendet Programm.
|
u"""Räumt auf und beendet Programm.
|
||||||
@param event: tkinter Event"""
|
@param event tkinter Event"""
|
||||||
self._closeall()
|
self._closeall()
|
||||||
self.master.destroy()
|
self.master.destroy()
|
||||||
|
|
||||||
@@ -183,6 +183,8 @@ class RevPiPyControl(tkinter.Frame):
|
|||||||
self.mbar.add_cascade(label=_("Connect"), menu=self.mconn)
|
self.mbar.add_cascade(label=_("Connect"), menu=self.mconn)
|
||||||
|
|
||||||
def _opt_conn(self, text):
|
def _opt_conn(self, text):
|
||||||
|
u"""Stellt eine neue Verbindung zu RevPiPyLoad her.
|
||||||
|
@param text Verbindungsname"""
|
||||||
socket.setdefaulttimeout(2)
|
socket.setdefaulttimeout(2)
|
||||||
sp = ServerProxy(
|
sp = ServerProxy(
|
||||||
"http://{}:{}".format(
|
"http://{}:{}".format(
|
||||||
@@ -261,7 +263,8 @@ class RevPiPyControl(tkinter.Frame):
|
|||||||
self._fillconnbar()
|
self._fillconnbar()
|
||||||
|
|
||||||
def plclogs(self):
|
def plclogs(self):
|
||||||
u"""Öffnet das Fenster für Logdateien."""
|
u"""Öffnet das Fenster für Logdateien.
|
||||||
|
@return None"""
|
||||||
if "load_plclog" not in self.xmlfuncs:
|
if "load_plclog" not in self.xmlfuncs:
|
||||||
tkmsg.showwarning(
|
tkmsg.showwarning(
|
||||||
_("Warning"),
|
_("Warning"),
|
||||||
@@ -345,6 +348,7 @@ class RevPiPyControl(tkinter.Frame):
|
|||||||
)
|
)
|
||||||
|
|
||||||
def tmr_plcrunning(self):
|
def tmr_plcrunning(self):
|
||||||
|
u"""Timer der den Status des PLC Programms prüft."""
|
||||||
self._btnstate()
|
self._btnstate()
|
||||||
if self.cli is None:
|
if self.cli is None:
|
||||||
self.txt_status["readonlybackground"] = "lightblue"
|
self.txt_status["readonlybackground"] = "lightblue"
|
||||||
|
|||||||
Reference in New Issue
Block a user