Issue 117145 - toolkit: UnoControlTabPageModel doesn't support createInstanceWithArguments
Summary: toolkit: UnoControlTabPageModel doesn't support createInstanceWithArguments
Status: CLOSED FIXED
Alias: None
Product: gsl
Classification: Code
Component: code (show other issues)
Version: DEV300m100
Hardware: All All
: P3 Normal (vote)
Target Milestone: 3.4.0
Assignee: tkr
QA Contact: issues@gsl
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2011-03-01 12:13 UTC by tkr
Modified: 2017-05-20 10:31 UTC (History)
1 user (show)

See Also:
Issue Type: DEFECT
Latest Confirmation in: ---
Developer Difficulty: ---


Attachments

Note You need to log in before you can comment on or make changes to this issue.
Description tkr 2011-03-01 12:13:45 UTC
I cannot create an instance of service "com.sun.star.awt.tab.UnoControlTabPageModel" with arguments. For this reason it is not possible to use a xdl file to create a tab page.
Comment 1 Frank Schönheit 2011-03-01 14:09:18 UTC
more precise, the problem here is the following:
Creating a UnoControlTabPageModel at the global service factory gives you a component which supports what is requested in the service description, plus everything which normally is only available in control models which are embedded into a dialog.

For instance, an css.awt.UnoControlEditModel, created at the global service factory, has no properties PositionX, PositionY, Width, Height, and some more. However, if you use the XMultiServiceFactory interface of a UnoControlDialogModel, and create an css.awt.UnoControlEditModel there, then the resulting component will have those properties, so it can be used as child of the dialog model.

For a tab page model, already the instance created at the global service factory supports those properties, which is a) inconsistent and b) likely to lead to problems when the model is to be used in a context other than a dialog (for instance, within documents, as form control).

Fixing this means that the tab page model created at the global service factory needs to not support those dialog-related properties, and the dialog itself must be able to create such an "extended" version of the tab page model, as it already does with all other model types.

However, since a tab page model is create with arguments (in opposite to all other so-far existing control models), the XMultiServiceFactory::createInstanceWithArguments implementation of the dialog model must be modified to *not* ignore its arguments - currently, it is completely agnostic of them.
Comment 2 Frank Schönheit 2011-03-08 09:06:45 UTC
done in CWS gridfixes
Comment 3 Frank Schönheit 2011-04-01 11:02:36 UTC
fs->tkr: please verify in CWS gridfixes
Comment 4 tkr 2011-04-01 11:22:23 UTC
Looks good -> verified.
Comment 5 Oliver-Rainer Wittmann 2012-06-13 12:24:36 UTC
getting rid of value "enhancement" for field "severity".
For enhancement the field "issue type" shall be used.