@@ -126,7 +126,8 @@ class _ConfigScreenState extends State<ConfigScreen> {
126126 if (k.contains ("use_" ) ||
127127 k.contains ("disable_" ) ||
128128 k.contains ("enable" ) ||
129- (k.contains ("auto_start" ) && filename.contains ("ltc" ))) {
129+ ((k.contains ("auto_start" ) || k.contains ("show_systime" )) &&
130+ filename.contains ("ltc" ))) {
130131 wlist.add (ListTile (
131132 title: Text (prettyConfigText (k)),
132133 trailing: Switch (
@@ -214,6 +215,70 @@ class _ConfigScreenState extends State<ConfigScreen> {
214215 })));
215216 }
216217
218+ // source selection
219+ else if (k.contains ("source" ) && filename.contains ("ltc" )) {
220+ String _srcname = v;
221+
222+ wlist.add (ListTile (
223+ title: Text (prettyConfigText (k)),
224+ subtitle: Text ("$v " ),
225+ trailing: PopupMenuButton (
226+ icon: Icon (Icons .lock_clock),
227+ iconSize: 28 ,
228+ //color: Colors.cyan,
229+ onSelected: (value) {
230+ setState (() {
231+ if (value != null &&
232+ value != v &&
233+ value.runtimeType == String ) {
234+ _setNewValue (filename, k, value.toString ());
235+ }
236+ });
237+ },
238+ itemBuilder: (_) => [
239+ /// ltc, midi, artnet, tcnet, internal, rtp-midi, systime
240+ new CheckedPopupMenuItem (
241+ checked: _srcname == 'ltc' ,
242+ value: 'ltc' ,
243+ child: new Text ('LTC' ),
244+ ),
245+ new CheckedPopupMenuItem (
246+ checked: _srcname == 'midi' ,
247+ value: 'midi' ,
248+ child: new Text ('Midi' ),
249+ ),
250+ new CheckedPopupMenuItem (
251+ checked: _srcname == 'artnet' ,
252+ value: 'artnet' ,
253+ child: new Text ('Art-Net' ),
254+ ),
255+ new CheckedPopupMenuItem (
256+ checked: _srcname == 'rtp-midi' ,
257+ value: 'rtp-midi' ,
258+ child: new Text ('RTP-Midi' ),
259+ ),
260+ new CheckedPopupMenuItem (
261+ checked: _srcname == 'tcnet' ,
262+ value: 'tcnet' ,
263+ child: new Text ('TC-Net' ),
264+ ),
265+ new CheckedPopupMenuItem (
266+ checked: _srcname == 'internal' ,
267+ value: 'internal' ,
268+ child: new Text ('Internal Generator' ),
269+ ),
270+ new CheckedPopupMenuItem (
271+ checked: _srcname == 'systime' ,
272+ value: 'systime' ,
273+ child: new Text ('System Time' ),
274+ ),
275+ ],
276+ )));
277+ if (_srcname != null ) {
278+ _setNewValue (filename, k, _srcname);
279+ }
280+ }
281+
217282 // merge mode selection
218283 else if (k.contains ("merge_mode" )) {
219284 String direction = v;
0 commit comments