Y esto se hace necesario porque la plantilla predeterminada de
OpenOffice.org utiliza bajo Windows el tipo de letra Arial o la que el
usuario ponga como prdeterminada en su sistema, y cuando te llevas el
documento a Linux, pues ya se descuadro.
Aprovechando que el tipo de leta BitStream esta tanto el Windows
como en
Linux, pues la plantilla inicial que configuro a los usuarios es
una con
este tipo de letra, pero tengo que hacerlo manual.
Alguien sabe que archivo define la plantilla predeterminada a nivel
"sistema". Algo equivalente a normal.dot en MS Word.
O cual es el archivo que genera Store.xcu para los usuarios cuando se
genera el perfil. Desde ahí puedo trabajar.
Hola gente,
creo que en este caso , en vez de cambiar el archivo de configuración de
OOo *a mano* (cosa que con un simple error puede inutilizar TODA la
suite), lo mejor es emplear una macro para modificar la configuración
empleando la API (de paso puedes emplear la misma macro en todas las PC
que desees).
Todos los archivos xcu pueden manipularse mediante la API indicando la
rama de configuración.
Para el caso que desean, creo que un paseo por
"/org.openoffice.ucb.Store" (para el Store.xcu) y tal vez
"/org.openoffice.Office.Writer/DefaultFont" pueda resultar útil.
La rama la pueden crear siguiendo el sistema de archivos:
p.e. en WinXP
C:\Documents and Settings\ArielConstenlaHaile\Datos de
programa\OpenOffice.org2\user\registry\data\org\openoffice\ucb
Una función para acceder a la configuración de OOo:
Function FN_get_ConfigurationAccess(sNodePath$, Optional bUpadate as
Boolean)
Dim sProvider$, sAccess$, oConfigProvider
sProvider = "com.sun.star.configuration.ConfigurationProvider"
oConfigProvider = createUNOService(sProvider)
Dim oParametros(2) As New com.sun.star.beans.PropertyValue
oParametros(0).Name = "Locale"
oParametros(0).Value = "*"
oParametros(1).Name = "EnableAsync"
oParametros(1).Value = false
oParametros(2).Name = "nodepath"
oParametros(2).Value = sNodePath
If NOT IsMissing(bUpadate) AND bUpadate Then
sAccess = "com.sun.star.configuration.ConfigurationUpdateAccess"
Else
sAccess = "com.sun.star.configuration.ConfigurationAccess"
End If
oConfig = oConfigProvider.createInstanceWithArguments(sAccess,
oParametros())
FN_get_ConfigurationAccess = oConfig
End Function
Para emplearla pasar los siguientes parámetros:
* la rama de configuración, una cadena sensible a may. y minúsc.
* un valor booleano para determinar si el acceso es SÓLO LECTURA o para
modificar
P. e.
Sub set_History_to_Default
sHistory = "/org.openoffice.Office.Common/History"
oConfig = FN_get_ConfigurationAccess(sHistory, TRUE)
oConfig.setAllPropertiesToDefault
oConfig.commitChanges()
End Sub
TODOS los cambios surten efecto *luego* de reiniciar OOo (en WIN también
hay que finalizar el inicio rápido).
Una lista (no completa) de las ramas de configuración:
"/org.openoffice.FirstStartWizard"
"/org.openoffice.Inet"
"/org.openoffice.LDAP"
"/org.openoffice.Office.Calc"
"/org.openoffice.Office.Chart"
"/org.openoffice.Office.Common"
"/org.openoffice.Office.Compatibility"
"/org.openoffice.Office.DataAccess"
"/org.openoffice.Office.Draw"
"/org.openoffice.Office.Embedding"
"/org.openoffice.Office.FormWizard"
"/org.openoffice.Office.Impress"
"/org.openoffice.Office.Java"
"/org.openoffice.Office.Jobs"
"/org.openoffice.Office.Labels"
"/org.openoffice.Office.Linguistic"
"/org.openoffice.Office.Math"
"/org.openoffice.Office.ProtocolHandler"
"/org.openoffice.Office.Recovery"
"/org.openoffice.Office.SFX"
"/org.openoffice.Office.Scripting"
"/org.openoffice.Office.Security"
"/org.openoffice.Office.TableWizard"
"/org.openoffice.Office.TypeDetection"
"/org.openoffice.Office.UI"
"/org.openoffice.Office.UI.BaseWindowState"
"/org.openoffice.Office.UI.BasicIDEWindowState"
"/org.openoffice.Office.UI.CalcWindowState"
"/org.openoffice.Office.UI.DbQueryWindowState"
"/org.openoffice.Office.UI.ImpressWindowState"
"/org.openoffice.Office.UI.StartModuleWindowState"
"/org.openoffice.Office.UI.WriterGlobalWindowState"
"/org.openoffice.Office.UI.WriterWebWindowState"
"/org.openoffice.Office.UI.WriterWindowState"
"/org.openoffice.Office.Views"
"/org.openoffice.Office.WebWizard"
"/org.openoffice.Office.Writer"
"/org.openoffice.Office.WriterWeb"
"/org.openoffice.Setup"
"/org.openoffice.TypeDetection.Types"
"/org.openoffice.TypeDetection.UISort"
"/org.openoffice.UserProfile"
"/org.openoffice.VCL"
"/org.openoffice.ucb.Configuration"
"/org.openoffice.ucb.Hierarchy"
"/org.openoffice.ucb.Store"
Para "pasear" por cada rama deben tener en cuenta que es en realidad un
ÁRBOL de configuración (para recorrerlo todo se necesita desde luego un
algoritmo tipo recursivo).
Pueden encontrar un ejemplo de modificación de la config de OOo aplicado
a la lista de documentos recientes
en mi página web:
http://www.arielconstenlahaile.com.ar/ooo/ARIEL_OOoBASIC_PickList.odt
Saludos,
Ariel Constenla-Haile
-------------------------------------
Ariel Constenla-Haile
La Plata, Argentina
www.arielconstenlahaile.com.ar/ooo/
[EMAIL PROTECTED]
¡_Este_ mail es *texto plano*! :)
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]