ILS_W_ENTRY_XXX
 
ILS_W_ENTRY_XXX
Category 
Dynamic view-related macros (server side)
Description 
The macros ILS_W_ENTRY_XXX declare server entry data members as being accessible at runtime so that they can be used in view specifications.
The runtime entry data members declared with these macros differ from those declared with the ILS_ENTRY_XXX macros, in that the modifier is user-defined.
The modifier is used by Rogue Wave Server during a component-to-server transaction to modify the attribute value. When the modifier returns IlsFalse and the rollback mode is enabled by the component, the current transaction is rolled back by the server and a rollback transaction is sent to the component that requested the modification. See the “Transaction Control” sections in the IlsMvComponent and IlsMvServer class descriptions for more information.
These macros can be enclosed only between the following pairs of macros:
*ILS_OBJECT_BEGIN/ILS_OBJECT_END
*ILS_ENTITY_BEGIN/ILS_ENTITY_END
*ILS_MVVIEW_BEGIN/ILS_MVVIEW_END
or their derivatives.
Header File 
#include <ilserver/rtmodel.h>
Synopsis 
ILS_W_ENTRY_CHAR(objType,entryLabel,setValue)
ILS_W_ENTRY_BOOLEAN(objType,entryLabel,setValue)
ILS_W_ENTRY_SHORT(objType,entryLabel,setValue)
ILS_W_ENTRY_INT(objType,entryLabel,setValue)
ILS_W_ENTRY_LONG(objType,entryLabel,setValue)
ILS_W_ENTRY_FLOAT(objType,entryLabel,setValue)
ILS_W_ENTRY_DOUBLE(objType,entryLabel,setValue)
ILS_W_ENTRY_STRING(objType,entryLabel,setValue)
ILS_W_ENTRY_USERTYPE(objType,userType,entryLabel,setValue)
Macros 
ILS_W_ENTRY_CHAR(objType,entryLabel,setValue)
This macro declares the entry data member specified by entryLabel as a runtime attribute of the class objType. This attribute is of type char.
Its modifier, setValue, has the following signature:
IlsBoolean objType::setValue(char value)
When the function returns IlsFalse, the attribute cannot be set to this value. In that case, any current transaction on the server side is rolled back by the server and a rollback transaction is sent to the component that requested the modification. See Transaction Control in the IlsMvComponent class description.
The signature of the function can be different under the following conditions:
*it is a member of the class or of a derived class, and
*its results converts implicitly to IlsBoolean, and
*it can be invoked with a char as argument.
ILS_W_ENTRY_BOOLEAN(holder,attrLabel,setValue)
ILS_W_ENTRY_SHORT(holder,attrLabel,setValue)
ILS_W_ENTRY_INT(holder,attrLabel,setValue)
ILS_W_ENTRY_LONG(holder,attrLabel,setValue)
ILS_W_ENTRY_FLOAT(holder,attrLabel,setValue)
ILS_W_ENTRY_DOUBLE(holder,attrLabel,setValue)
ILS_W_ENTRY_STRING(holder,attrLabel,setValue)
ILS_W_ENTRY_MVVALUE(holder,attrLabel,setValue)
ILS_W_ENTRY_USERTYPE(holder,attrType,attrLabel,setValue)
ILS_W_ENTRY_ENUM(holder,attrType,attrLabel,setValue)
The macros in the above list follow the same rules as ILS_RW_INDEXED_ATTR_CHAR, except that their attribute type varies according to the following table:
ILS_W_ENTRY_BOOLEAN
IlsBoolean
ILS_W_ENTRY_SHORT
short
ILS_W_ENTRY_INT
long
ILS_W_ENTRY_LONG
long
ILS_W_ENTRY_FLOAT
float
ILS_W_ENTRY_DOUBLE
double
ILS_W_ENTRY_STRING
IlsString
ILS_W_ENTRY_ANY
IlsAny
ILS_W_ENTRY_MVVALUE
IlsMvValue
ILS_W_ENTRY_USERTYPE
user-defined class
ILS_W_ENTRY_ENUM
enumerated type
See Also 
IlsEntry, ILS_ENTRY_XXX

Version 5.8
Copyright © 2014, Rogue Wave Software, Inc. All Rights Reserved.