113 lines
4.0 KiB
Python
113 lines
4.0 KiB
Python
|
|
# coding=utf-8
|
||
|
|
from datetime import datetime
|
||
|
|
from string import Template
|
||
|
|
from tkinter import Image, IntVar, StringVar,filedialog, messagebox
|
||
|
|
|
||
|
|
#以下是所有需获取的变量
|
||
|
|
runConfigFilename = StringVar("/etc/vsomeip")
|
||
|
|
appName = StringVar(None,"tcu")
|
||
|
|
serviceID = StringVar(None,"0x1000")
|
||
|
|
instanceID = StringVar(None,"0x2000")
|
||
|
|
|
||
|
|
use_tcp = IntVar()
|
||
|
|
offer_F_F_method = IntVar()
|
||
|
|
offer_R_R_method = IntVar()
|
||
|
|
offer_setter = IntVar()
|
||
|
|
offer_getter = IntVar()
|
||
|
|
offer_event = IntVar()
|
||
|
|
offer_field_notifier = IntVar()
|
||
|
|
|
||
|
|
F_F_method_ids = StringVar(None,"adasOFF")
|
||
|
|
R_R_method_ids = StringVar(None,"camStatus")
|
||
|
|
setter_ids = StringVar(None,"limitedSpeed")
|
||
|
|
getter_ids = StringVar(None,"distance")
|
||
|
|
eventgroup_ids = StringVar(None,"SignDetected")
|
||
|
|
event_ids = StringVar(None,"speedLimitSignDetected")
|
||
|
|
field_eventgroup_ids = StringVar(None,"SignDetected")
|
||
|
|
field_event_ids = StringVar(None,"speedLimitSignDetected")
|
||
|
|
|
||
|
|
def generate():
|
||
|
|
filePath = r'%s_cfg_ids.hpp' % appName.get().lower()
|
||
|
|
class_file = open(filePath,'w')
|
||
|
|
lines = []
|
||
|
|
#模版文件
|
||
|
|
template_file = open(r'sample_cfg_ids.hpp.template','r')
|
||
|
|
tmpl = Template(template_file.read())
|
||
|
|
#模版替换
|
||
|
|
lines.append(tmpl.substitute(
|
||
|
|
GENE_DATE = datetime.now().strftime('%Y-%m-%d %H:%M:%S'), #代码生成日期设置
|
||
|
|
RUN_CONFIG_FILENAME = runConfigFilename.get(),
|
||
|
|
APP_NAME = appName.get().upper(),
|
||
|
|
#MODULE_NAME = appName.get().upper(),
|
||
|
|
SERVICE_ID = serviceID.get(),
|
||
|
|
INSTANCE_ID = instanceID.get(),
|
||
|
|
USE_TCP = use_tcp.get(),
|
||
|
|
OFFER_F_F_METHOD = offer_F_F_method.get(),
|
||
|
|
OFFER_R_R_METHOD = offer_R_R_method.get(),
|
||
|
|
OFFER_SETTER = offer_setter.get(),
|
||
|
|
OFFER_GETTER = offer_getter.get(),
|
||
|
|
OFFER_EVENT = offer_event.get(),
|
||
|
|
OFFER_FIELD_EVENT = offer_field_notifier.get(),
|
||
|
|
FF_METHOD_NAME = F_F_method_ids.get().upper(),
|
||
|
|
RR_METHOD_NAME = R_R_method_ids.get().upper(),
|
||
|
|
GET_METHOD_NAME = getter_ids.get().upper(),
|
||
|
|
SET_METHOD_NAME = setter_ids.get().upper(),
|
||
|
|
EVENTGROUP_NAME = eventgroup_ids.get().upper(),
|
||
|
|
EVENT_NAME = event_ids.get().upper(),
|
||
|
|
FIELD_EVENTGROUP_NAME = field_eventgroup_ids.get().upper(),
|
||
|
|
FIELD_EVENT_NAME = field_event_ids.get().upper(),
|
||
|
|
))
|
||
|
|
# 0.将生成的代码写入文件
|
||
|
|
class_file.writelines(lines)
|
||
|
|
class_file.close()
|
||
|
|
print('generate "%s" success. ~_~' % filePath)
|
||
|
|
messagebox.showinfo("tips",'Generate "%s" success.' % filePath)
|
||
|
|
|
||
|
|
def open_file():
|
||
|
|
try:
|
||
|
|
global file
|
||
|
|
filepath = filedialog.askopenfilename() # 打开文件,返回该文件的完整路径
|
||
|
|
runConfigFilename.set(filepath)
|
||
|
|
file = Image.open(runConfigFilename.get())
|
||
|
|
except Exception as e:
|
||
|
|
print("您没有选择任何文件",e)
|
||
|
|
|
||
|
|
def entryState():
|
||
|
|
None
|
||
|
|
# if offer_F_F_method.get():
|
||
|
|
# idEntry1.grid(row=5,column=1)
|
||
|
|
# else:
|
||
|
|
# idEntry1.grid_forget() # the same as grid_remove()
|
||
|
|
|
||
|
|
# if offer_R_R_method.get():
|
||
|
|
# idEntry2.grid(row=6,column=1)
|
||
|
|
# else:
|
||
|
|
# idEntry2.grid_forget()
|
||
|
|
|
||
|
|
# if offer_setter.get():
|
||
|
|
# idEntry3.grid(row=7,column=1)
|
||
|
|
# else:
|
||
|
|
# idEntry3.grid_forget()
|
||
|
|
|
||
|
|
# if offer_getter.get():
|
||
|
|
# idEntry4.grid(row=8,column=1)
|
||
|
|
# else:
|
||
|
|
# idEntry4.grid_forget()
|
||
|
|
|
||
|
|
# if offer_event.get():
|
||
|
|
# idEntry5.grid(sticky="w",row=9,column=1)
|
||
|
|
# idEntry6.grid(sticky="e",row=9,column=1)
|
||
|
|
# else:
|
||
|
|
# idEntry5.grid_forget()
|
||
|
|
# idEntry6.grid_forget()
|
||
|
|
|
||
|
|
# if offer_field_notifier.get():
|
||
|
|
# idEntry7.grid(sticky="w",row=10,column=1)
|
||
|
|
# idEntry8.grid(sticky="e",row=10,column=1)
|
||
|
|
# else:
|
||
|
|
# idEntry7.grid_forget()
|
||
|
|
# idEntry8.grid_forget()
|
||
|
|
|
||
|
|
def modifyContent():
|
||
|
|
print("modifyContent")
|