Andreas, you made my day, no it works like a charme, do not realy
understand how it works but it works :-)
thanks a lot
Fernand
Andreas Saeger wrote:
Fernand Vanrie wrote:
Fernand Vanrie wrote:
Andreas,
forgot my previous message
i got the location now (i suppose after restarting OO)
your code works fine !
but the property is "read-only" and the goal is to change this setting
with the API , do you see any workaround ?
I copied the code provided by Thomas Lange and added a new function
setOOoSetupValue, complementary to my aready mentioned getOOoSetupValue.
In getOOoSetupValue I renamed argument "sValue" to sProperty. "sValue"
was misleading since the value of the given property name is the return
value of that function.
setOOoSetupValue returns False on any kind of error. Your calling
routine may handle this (or not).
<BASIC>
Sub test_setOOoSetupValue()
GlobalScope.BasicLibraries.loadLibrary("myTools")
sNode =
"org.openoffice.Setup/Office/Factories/com.sun.star.text.TextDocument"
sProperty = "ooSetupFactoryTemplateFile"
sValue = "$(user)/template/Vertrag.ott"
print setOOoSetupValue(sNode, sProperty, sValue)
End Sub
Function setOOoSetupValue(sNodePath$, sProperty$, sValue$) as boolean
on error goto exitErr
Dim bReturn as Boolean, xconfig, xAccess
dim aArgs(0) as Object
dim aPropValue as new com.sun.star.beans.PropertyValue
xconfig =
createunoservice("com.sun.star.configuration.ConfigurationProvider")
aPropValue.Name = "nodepath"
aPropValue.Value = sNodePath '"org.openoffice.Office.Linguistic"
aArgs(0) = aPropValue
xAccess =
xconfig.createinstanceWithArguments("com.sun.star.configuration.ConfigurationUpdateAccess",aArgs())
xAccess.setPropertyValue(sProperty, sValue)
xAccess.commitchanges
bReturn = True
exitErr:
setOOoSetupValue = bReturn
End Function
Function getOOoSetupValue(sNodePath$,sProperty$)
Dim aConfigProvider, oNode, args(0) As new com.sun.star.beans.PropertyValue
aConfigProvider =
createUnoService("com.sun.star.configuration.ConfigurationProvider")
args(0).Name = "nodepath"
args(0).Value = sNodePath
oNode =
aConfigProvider.createInstanceWithArguments("com.sun.star.configuration.ConfigurationAccess",
args())
getOOoSetupValue = oNode.getbyname(sProperty)
End Function
</BASIC>
The testing routine sets Writer's default template. After restarting the
office, I call "File>New>Text Document" and get the set default template.
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]