Coverage for gws-app/gws/plugin/model_field/integer/__init__.py: 89%

19 statements  

« prev     ^ index     » next       coverage.py v7.11.0, created at 2025-10-16 22:59 +0200

1"""Integer field.""" 

2 

3import gws 

4import gws.base.model.scalar_field 

5from gws import User 

6 

7gws.ext.new.modelField('integer') 

8 

9 

10class Config(gws.base.model.scalar_field.Config): 

11 """Configuration for integer field.""" 

12 

13 pass 

14 

15 

16class Props(gws.base.model.scalar_field.Props): 

17 pass 

18 

19 

20class Object(gws.base.model.scalar_field.Object): 

21 attributeType = gws.AttributeType.int 

22 

23 def configure_widget(self): 

24 if not super().configure_widget(): 

25 self.widget = self.root.create_shared(gws.ext.object.modelWidget, type='integer') 

26 return True 

27 

28 def prop_to_python(self, feature, value, mc): 

29 try: 

30 return int(value) 

31 except ValueError: 

32 return gws.ErrorValue