Oh, and sorry for the number of emails, but I guess I'm assuming that you can add a new property
key at any point by insertByName()...
Thanks in advance, UNO is a little tricky at this level. At least that's what I find... from what
I can tell, it really comes down to the cppuhelper::ComponentContext class which implements the
XNameContainer interface. *Please* correct me if I'm wrong :-)
Chris
On Mon, Dec 1, 2014 at 10:29 AM, Chris Sherlock <chris.sherlock79@gmail.com> wrote:
So what about the following approach:
Reference< XComponentContext > xContext = ::comphelper::getProcessComponentContext();
::cppu::ContextEntry_Init aContextInfo[] =
{
::cppu::ContextEntry_Init("testkey", uno::Any() ),
}
xNewContext = ::cppu::createComponentContext(aContextInfo, sizeof(aContextInfo) / sizeof
(aHandlerContextInfo[0]), xContext);
Then to get access to the container, I use something like this:
Reference< container::XNameContainer > xNameContainer( xContext, UNO_QUERY );
Is this the right approach? Will the delegate ComponentContext work?
Chris
On Mon, Dec 1, 2014 at 12:25 AM, Andrew Pitonyak <andrew@pitonyak.org> wrote:
Guessing from memory and not east for me to verify at the Moment, but I thought that the context
was read only. I think that of you want to add values you need to create a new one with the
desired named value pairs.
Are you able to inspect an object to see of it supports setting values...
I have done very little in this area and don't remember...
Chris Sherlock <chris.sherlock79@gmail.com> wrote:
Hi all,
How do you insert a value to be retrieved later into an XComponentContext reference?
I see there is a XNameContainer, which is created by
comphelper::NameContainer_createInstance(::cppu::UnoType<sal_Int32>::get()) or whatever value you
want. From here you then do insertByName.
However, how do you then insert this into the component context?
Chris
Privacy Policy |
Impressum (Legal Info) |
Copyright information: Unless otherwise specified, all text and images
on this website are licensed under the
Creative Commons Attribution-Share Alike 3.0 License.
This does not include the source code of LibreOffice, which is
licensed under the Mozilla Public License (
MPLv2).
"LibreOffice" and "The Document Foundation" are
registered trademarks of their corresponding registered owners or are
in actual use as trademarks in one or more countries. Their respective
logos and icons are also subject to international copyright laws. Use
thereof is explained in our
trademark policy.