Date: prev next · Thread: first prev next last
2014 Archives by date, by thread · List index


No stress on the number of mails.

I did not think that you could change a context after it was created... But I would certainly try 
if I had a need. I know very little about this specifically.

Chris Sherlock <chris.sherlock79@gmail.com> wrote:

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




Context


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.