Package muntjac :: Package ui :: Module form_field_factory
[hide private]
[frames] | no frames]

Source Code for Module muntjac.ui.form_field_factory

 1  # Copyright (C) 2012 Vaadin Ltd.  
 2  # Copyright (C) 2012 Richard Lincoln 
 3  #  
 4  # Licensed under the Apache License, Version 2.0 (the "License");  
 5  # you may not use this file except in compliance with the License.  
 6  # You may obtain a copy of the License at  
 7  #  
 8  #     http://www.apache.org/licenses/LICENSE-2.0  
 9  #  
10  # Unless required by applicable law or agreed to in writing, software  
11  # distributed under the License is distributed on an "AS IS" BASIS,  
12  # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.  
13  # See the License for the specific language governing permissions and  
14  # limitations under the License. 
15   
16   
17 -class IFormFieldFactory(object):
18 """Factory interface for creating new Field-instances based on 19 L{Item}, property id and uiContext (the component responsible for 20 displaying fields). Currently this interface is used by L{Form}, but 21 might later be used by some other components for L{Field} generation. 22 23 @author: Vaadin Ltd. 24 @author: Richard Lincoln 25 @version: 1.1.2 26 @see: L{TableFieldFactory} 27 """ 28
29 - def createField(self, item, propertyId, uiContext):
30 """Creates a field based on the item, property id and the component 31 (most commonly L{Form}) where the Field will be presented. 32 33 @param item: 34 the item where the property belongs to. 35 @param propertyId: 36 the Id of the property. 37 @param uiContext: 38 the component where the field is presented, most commonly 39 this is L{Form}. uiContext will not necessary be the 40 parent component of the field, but the one that is 41 responsible for creating it. 42 @return: Field the field suitable for editing the specified data. 43 """ 44 raise NotImplementedError
45