File tree Expand file tree Collapse file tree 1 file changed +20
-1
lines changed Expand file tree Collapse file tree 1 file changed +20
-1
lines changed Original file line number Diff line number Diff line change @@ -439,6 +439,25 @@ def pattern_checker(val):
439
439
def _register_observer (h , n , t ):
440
440
widget .observe (h , names = n , type = t )
441
441
442
+ warning_label = ipywidgets .Label (
443
+ "" , layout = ipywidgets .Layout (color = "red" , display = "none" )
444
+ )
445
+
446
+ def _observer (change ):
447
+ if not pattern_checker (widget .value ):
448
+ pattern = schema .get ("pattern" , ".*" )
449
+ warning_label .value = (
450
+ f"Warning: Input does not match the specified pattern"
451
+ )
452
+ warning_label .layout .display = "block"
453
+ change .owner .layout .border = "2px solid red"
454
+ else :
455
+ change .owner .layout .border = "none"
456
+ warning_label .value = ""
457
+ warning_label .layout .display = "none"
458
+
459
+ widget .observe (_observer , names = "value" , type = "change" )
460
+
442
461
def _setter (_d ):
443
462
if pattern_checker (_d ):
444
463
widget .value = _d
@@ -486,7 +505,7 @@ def _getter():
486
505
getter = _getter ,
487
506
setter = _setter ,
488
507
resetter = _resetter ,
489
- widgets = [box ],
508
+ widgets = [box , warning_label ],
490
509
register_observer = _register_observer ,
491
510
)
492
511
You can’t perform that action at this time.
0 commit comments