@@ -238,33 +238,39 @@ def _build_widgets(self) -> Widget:
238238 ('PBS' , 'pbs' ), ('LSF' , 'lsf' ), ('Cobalt' , 'cobalt' )],
239239 id = 'batch-selector' ,
240240 allow_blank = False ),
241- classes = 'form -col-3 form-row'
241+ classes = 'bs -col-1 form-row' , id = 'batch-selector-col '
242242 ),
243+ Vertical (
244+ Label ('Account/project:' , classes = 'form-label' ),
245+ Input (id = 'account-input' ),
246+ classes = 'bs-col-2 form-row batch-valid'
247+ ),
248+ classes = 'w-100 form-row' , id = 'batch-system-group-1'
249+ ),
250+ Horizontal (
243251 Vertical (
244252 Label ('Queue:' , classes = 'form-label' ),
245253 Input (id = 'queue-input' ),
246- classes = 'form -col-3 form-row batch-valid'
254+ classes = 'bs -col-1 form-row batch-valid'
247255 ),
248256 Vertical (
249- Label ('Account/project :' , classes = 'form-label' ),
250- Input (id = 'account -input' ),
251- classes = 'form -col-3 form-row batch-valid'
257+ Label ('Multi-node queue :' , classes = 'form-label' ),
258+ Input (id = 'mqueue -input' ),
259+ classes = 'bs -col-2 form-row batch-valid'
252260 ),
253- classes = 'w-100 form-row' , id = 'batch-system-group'
261+ Checkbox ('Run [b bright_yellow]t[/b bright_yellow]est job' ,
262+ id = 'cb-run-test-job' , classes = 'bs-col-3 m-t-1 batch-valid' ),
263+ classes = 'w-100 form-row' , id = 'batch-system-group-2'
254264 ),
255265 Horizontal (
256266 Vertical (
257267 Label ('Custom attributes:' , classes = 'form-label' ),
258- TextArea ('' , id = 'custom-attrs' , read_only = True , soft_wrap = False ),
259- id = 'attr-cell' ,
260- classes = 'form-col-2 h-auto'
268+ ShortcutButton ('&Edit attrs.' , id = 'btn-edit-attrs' ),
269+ classes = 'bs-col-1 h-auto'
261270 ),
262271 Vertical (
263- Label ('' , classes = 'form-label' ),
264- ShortcutButton ('&Edit attributes' , id = 'btn-edit-attrs' ),
265- Checkbox ('Run [b bright_yellow]t[/b bright_yellow]est job' ,
266- id = 'cb-run-test-job' , classes = 'm-t-1' ),
267- classes = 'form-col-2 h-auto'
272+ TextArea ('' , id = 'custom-attrs' , read_only = True , soft_wrap = False ),
273+ classes = 'bs-col-23 h-auto'
268274 ),
269275 classes = 'w-100 h-auto batch-valid'
270276 ),
@@ -315,20 +321,28 @@ def batch_system_selected(self) -> None:
315321 if sched == 'local' :
316322 self .app ._focus_next () # type: ignore
317323 else :
318- self .get_widget_by_id ('queue -input' ).focus ()
324+ self .get_widget_by_id ('account -input' ).focus ()
319325
320326 def set_scheduler (self , name : str ) -> None :
321327 selector = self .get_widget_by_id ('batch-selector' )
322328 assert isinstance (selector , Select )
323329 selector .value = name
324330
325- @on (Input .Submitted , '#queue-input' )
326- def queue_submitted (self ) -> None :
327- bottom = self .get_widget_by_id ('account-input' )
328- bottom .focus ()
329-
330331 @on (Input .Submitted , '#account-input' )
331332 def account_submitted (self ) -> None :
333+ next = self .get_widget_by_id ('queue-input' )
334+ next .focus ()
335+
336+ @on (Input .Submitted , '#queue-input' )
337+ def queue_submitted (self , event : Input .Submitted ) -> None :
338+ next = self .get_widget_by_id ('mqueue-input' )
339+ assert isinstance (next , Input )
340+ if next .value == '' :
341+ next .value = event .input .value
342+ next .focus ()
343+
344+ @on (Input .Submitted , '#mqueue-input' )
345+ def mqueue_submitted (self ) -> None :
332346 self .app ._focus_next () # type: ignore
333347
334348 @on (Button .Pressed , '#btn-edit-attrs' )
@@ -368,8 +382,7 @@ async def _run_test_job(self, jd: TestJobsDialog, job_no: int, label: str,
368382 rspec : Optional [ResourceSpecV1 ], test_name : str ) -> bool :
369383 try :
370384 jd .set_running (job_no )
371- await asyncio .sleep (2 )
372-
385+ await asyncio .sleep (0.5 )
373386 job = self ._launch_job (test_name , rspec )
374387
375388 await self ._wait_for_queued_state (job )
0 commit comments