11from pathlib import Path
22from trame .app import get_server
3- from trame .ui .vuetify3 import SinglePageLayout
4- from trame .widgets import vuetify3 as vuetify , simput , html
3+ from trame .widgets import simput , html
54
65from trame_simput import get_simput_manager
76
7+ client_type = "vue3"
8+ use_client2 = client_type == "vue2"
9+
10+ if use_client2 :
11+ from trame .ui .vuetify2 import SinglePageLayout
12+ from trame .widgets import vuetify2 as vuetify
13+ else :
14+ from trame .ui .vuetify3 import SinglePageLayout
15+ from trame .widgets import vuetify3 as vuetify
16+
817# -----------------------------------------------------------------------------
918# Trame setup
1019# -----------------------------------------------------------------------------
1120
12- server = get_server ()
21+ server = get_server (client_type = client_type )
1322state , ctrl = server .state , server .controller
1423
1524# -----------------------------------------------------------------------------
1928DEF_DIR = Path (__file__ ).with_name ("definitions" )
2029
2130simput_manager = get_simput_manager ()
22- simput_manager .load_model (yaml_file = DEF_DIR / "model.yaml" )
2331
2432# -----------------------------------------------------------------------------
2533# Application state
2634# -----------------------------------------------------------------------------
2735
2836pxm = simput_manager .proxymanager
37+
38+
39+ def load_model ():
40+ simput_manager .load_model (yaml_file = DEF_DIR / "model.yaml" )
41+
42+
43+ load_model ()
44+
2945CHOICES = []
3046for obj_type in pxm .types ():
3147 item = pxm .create (obj_type )
32- CHOICES .append ({"text" : obj_type , "value" : item .id })
48+ if use_client2 :
49+ CHOICES .append ({"text" : obj_type , "value" : item .id })
50+ else :
51+ CHOICES .append ({"title" : obj_type , "value" : item .id })
3352
3453# -----------------------------------------------------------------------------
3554
@@ -40,9 +59,7 @@ def update_ui(use_xml_ui, **kwargs):
4059 simput_manager .load_ui (xml_file = DEF_DIR / "ui.xml" )
4160 else :
4261 simput_manager .clear_ui ()
43- simput_manager .load_model (
44- yaml_file = DEF_DIR / "model.yaml"
45- ) # Needed to generate UI
62+ load_model () # Needed to generate UI
4663
4764
4865# -----------------------------------------------------------------------------
@@ -115,7 +132,7 @@ def update_ui(use_xml_ui, **kwargs):
115132 vuetify .VSelect (
116133 v_model = ("active" , CHOICES [0 ].get ("value" )),
117134 items = ("choices" , CHOICES ),
118- dense = True ,
135+ variant = "underlined" ,
119136 hide_details = True ,
120137 style = "max-width: 120px;" ,
121138 )
0 commit comments