@@ -44,6 +44,7 @@ public class CObjectArrayColumnModel {
4444 private HashMap <String , String > updateactionfields ;
4545 private int finalheightinpixel = 12 + 15 ;
4646 private UpdateMouseHandler updatemousehandler ;
47+ private boolean forcefieldsupdatable ;
4748
4849 /**
4950 * create a column model for the given business fields
@@ -60,16 +61,21 @@ public CObjectArrayColumnModel(ArrayList<CBusinessField<?>> arraycolumns) {
6061 /**
6162 * creates a column model
6263 *
63- * @param arraycolumns a list of busines fields
64- * @param updateactionfields list of fields that should trigger an unique action
65- * @param uniqueupdatekey key of the update inline action and action
66- * @param updatemousehandler mouse handler for update
64+ * @param arraycolumns a list of busines fields
65+ * @param updateactionfields list of fields that should trigger an unique
66+ * action
67+ * @param uniqueupdatekey key of the update inline action and action
68+ * @param updatemousehandler mouse handler for update
69+ * @param forcefieldsupdatable will force all fields with an update action to
70+ * become read-write, even if normally read-only in
71+ * object definition
6772 */
6873 public CObjectArrayColumnModel (
6974 ArrayList <CBusinessField <?>> arraycolumns ,
7075 ArrayList <String > updateactionfields ,
7176 String uniqueupdatekey ,
72- UpdateMouseHandler updatemousehandler ) {
77+ UpdateMouseHandler updatemousehandler ,
78+ boolean forcefieldsupdatable ) {
7379 this .arraycolumns = arraycolumns ;
7480 this .columnstoshowintooltip = new ArrayList <CBusinessField <?>>();
7581 this .updateactionfields = new HashMap <String , String >();
@@ -79,6 +85,7 @@ public CObjectArrayColumnModel(
7985
8086 }
8187 this .updatemousehandler = updatemousehandler ;
88+ this .forcefieldsupdatable = forcefieldsupdatable ;
8289 }
8390
8491 /**
@@ -189,7 +196,7 @@ public TableView<ObjectTableRow> generateTableViewModel(PageActionManager action
189196 if (!thisfield .isShowinbottomnotes ()) {
190197 String actionkeyforupdate = updateactionfields .get (thisfield .getFieldname ());
191198 TableColumn <ObjectTableRow , ?> thiscolumn = thisfield .getTableColumn (actionmanager ,
192- (finalpreferedrowheight > 1 ? true : false ), finalpreferedrowheight , actionkeyforupdate );
199+ (finalpreferedrowheight > 1 ? true : false ), finalpreferedrowheight , actionkeyforupdate , this . forcefieldsupdatable );
193200 totalwidth += thiscolumn .getMinWidth ();
194201 returntable .getColumns ().add (thiscolumn );
195202 thiscolumn .widthProperty ().addListener (new ChangeListener <Number >() {
0 commit comments