1
0
mirror of https://github.com/naruxde/revpipycontrol.git synced 2025-11-08 23:53:52 +01:00

Bei fehlenden Einstellungen default Werte setzen

Programmargumente k?nnen konfiguriert werden
This commit is contained in:
2017-03-20 13:22:56 +01:00
parent 587b7d7acb
commit b7115ef128
6 changed files with 33 additions and 17 deletions

View File

@@ -76,6 +76,7 @@ class RevPiOption(tkinter.Frame):
self.var_pythonver = tkinter.IntVar(prog)
self.var_startpy = tkinter.StringVar(prog)
self.var_startargs = tkinter.StringVar(prog)
self.var_slave = tkinter.BooleanVar(prog)
self.var_pythonver.set(3)
@@ -109,6 +110,14 @@ class RevPiOption(tkinter.Frame):
opt_startpy["state"] = self.xmlstate
opt_startpy.grid(columnspan=2, **cpadwe)
lbl = tkinter.Label(prog)
lbl["text"] = "Programm Argumente"
lbl.grid(columnspan=2, **cpadw)
txt = tkinter.Entry(prog)
txt["textvariable"] = self.var_startargs
txt.grid(columnspan=2, **cpadw)
ckb_slave = tkinter.Checkbutton(prog, justify="left")
ckb_slave["state"] = self.xmlstate
ckb_slave["text"] = "RevPi als PLC-Slave verwenden"
@@ -175,20 +184,21 @@ class RevPiOption(tkinter.Frame):
def _loadappdata(self):
dc = self.xmlcli.get_config()
self.var_start.set(dc["autostart"])
self.var_reload.set(dc["autoreload"])
self.var_zexit.set(dc["zeroonexit"])
self.var_zerr.set(dc["zeroonerror"])
self.var_start.set(dc.get("autostart", "1"))
self.var_reload.set(dc.get("autoreload", "1"))
self.var_zexit.set(dc.get("zeroonexit", "0"))
self.var_zerr.set(dc.get("zeroonerror", "0"))
self.var_startpy.set(dc["plcprogram"])
self.var_pythonver.set(dc["pythonversion"])
self.var_slave.set(dc["plcslave"])
self.var_startpy.set(dc.get("plcprogram", "none.py"))
self.var_startargs.set(dc.get("plcarguments", ""))
self.var_pythonver.set(dc.get("pythonversion", "3"))
self.var_slave.set(dc.get("plcslave", "0"))
self.var_xmlon.set(dc["xmlrpc"] >= 1)
self.var_xmlmod2.set(dc["xmlrpc"] >= 2)
self.var_xmlmod3.set(dc["xmlrpc"] >= 3)
self.var_xmlon.set(dc.get("xmlrpc", 0) >= 1)
self.var_xmlmod2.set(dc.get("xmlrpc", 0) >= 2)
self.var_xmlmod3.set(dc.get("xmlrpc", 0) >= 3)
self.var_xmlport.set(dc["xmlrpcport"])
self.var_xmlport.set(dc.get("xmlrpcport", "55123"))
def _setappdata(self):
dc = {}
@@ -198,6 +208,7 @@ class RevPiOption(tkinter.Frame):
dc["zeroonerror"] = int(self.var_zerr.get())
dc["plcprogram"] = self.var_startpy.get()
dc["plcarguments"] = self.var_startargs.get()
dc["pythonversion"] = self.var_pythonver.get()
dc["plcslave"] = int(self.var_slave.get())

View File

@@ -1,7 +1,7 @@
#!/usr/bin/python3
#
# RevPiPyControl
# Version: 0.2.6
# Version: 0.2.7
#
# Webpage: https://revpimodio.org/revpipyplc/
# (c) Sven Sager, License: LGPLv3
@@ -20,8 +20,6 @@ from os.path import dirname
from os.path import join as pathjoin
from xmlrpc.client import ServerProxy
socket.setdefaulttimeout(2)
def addroot(filename):
u"""Hängt root-dir der Anwendung vor Dateinamen.
@@ -143,6 +141,7 @@ class RevPiPyControl(tkinter.Frame):
)
def _opt_conn(self, text):
socket.setdefaulttimeout(2)
sp = ServerProxy(
"http://{}:{}".format(
self.dict_conn[text][0], int(self.dict_conn[text][1])