Hi all,
I have a question regarding form methods which are marked as @protected in their JSDoc annotation.
The code below is in a base_from which is then extended by other forms:
/**
* Some method in the base_form
* @protected
* @properties={typeid:24,uuid:"CF39C76D-63B4-46D4-9590-0090D68081FD"}
*/
function methodX()
{
...
}
/**
* Another method in the base_form
* @private
* @param {RuntimeForm<base_form>} formInstance - some form which extends the base_form
* @properties={typeid:24,uuid:"CF39C76D-63B4-46D4-9590-0090D68081CD"}
*/
function methodY(formInstance)
{
//call the protected method which is perfectly valid
frmInstance.methodX(); //<--- this produces a warning "The function methodX is private" !!!??
}
Why does Servoy produce a warning when inside the implementation of a method of the base_form the code references a form which extends the base_form and is calling on that form instance a protected method defined in the base_form? After all the code which is referencing methodX is only in the base_form. To me this is a bug. In addition, the code analysis picks up the protected method as “private” even though the solutionExplorer shows is with the protected member icon.
Am I correct or am I missing something?