This reverts commit6c61b20a8d
. As discussed at <http://lists.freedesktop.org/archives/libreoffice/2013-May/052449.html> "Re: fdo#46808, Convert awt::UnoControlDialogModel to new style problem" why the odd change in2e2a4827ce
"scripting: get CreateUnoDialog() work again" appears to fix things again: The problem is that the implementation of the css.awt.UnoControlDialogModel involves UNO aggregation (IMPL_CREATE_INSTANCE_WITH_GEOMETRY(UnoControlDialogModel) in toolkit/soruce/helper/registerservices.cxx creating a OGeometryControlModel<UnoControlDialogModel> instance that aggregates a UnoControlDialogModel instance). That means that queryInterface can return a reference to something that is technically a different object, and that's what's happening here, and explains why calling setPropertyValue in two different ways on what logically appears to be a single object can end up calling two different implementations (of two different physical objects). (UNO aggregation is known to be broken and should not be used. Nevertheless, there's still code that does---code that is a horrible mess and hard to clean up.) That all this worked as intended in the past is just sheer luck, but any way of substantially touching it is asking for trouble. I'm going to revert6c61b20a8d
again. I wasn't able to revert without also revertingbe50ad28f5
"fdo#46808, Convert awt::XUnoControlDialog to new style," as the two were tightly dependant. Also reverts all the follow-up fixescb4b6dde8f
"-Werror,-Wuninitialized" (sans the const-ness fix in UpdateHandler::insertControlModel),697a007c61
"Fix exception specifications,"2ce6828bbb
"fix awt::UnoControlModelDialog crash," and2e2a4827ce
"scripting: get CreateUnoDialog() work again." Conflicts: basctl/source/dlged/dlged.cxx filter/source/t602/t602filter.cxx xmlscript/test/imexp.cxx Change-Id: I5d133468062f3ca36300db52fbd699be1ac72998
"Abstract" windowing thing, UNO implementations of windowing stuff so that it can be used from Basic or Java. But also stuff that has no connection to Basic or Java. Note that the "awt" here has no relation to the Java awt, as far as I know. It might be inspired by it API-wise, perhaps. (If you know differently, feel free to improve this REDAME file.) Note that toolkit/ is itself not really a toolkit, it is at root a reasonably simple wrapper of vcl/ - if you came here looking for a toolkit, please checkout vcl/ instead.