[PATCH] EasyHack, fdo#46808, Adapt UNO services to new style, Parts 2 through 5
Stephan Bergmann
sbergman at redhat.com
Wed Mar 28 03:11:42 PDT 2012
On 03/27/2012 11:03 AM, Noel Grandin wrote:
> OK, so I went ahead anyway, at the risk of having to redo stuff :-)
> This is the next 4 commits.
> It updates the IDL files in the OFFAPI module.
Looking at those 112 converted services, I'm afraid most of them should
not be converted after all. :( I classified the according to the below
list.
* 30 look good. :)
* CTORS accessible.AccessBridge: This service being of interface type
XInitialization looks strange. (XInitialization is more of an internal
interface, so that instances of such a service can obtain arguments when
being constructed. Explicit constructors of new-style services
internally call it.) Looking at the usage of that service
(vcl/source/app/svdata.cxx, vcl/source/app/svmain.cxx), it looks more
sensible change this UNO service to
service AccessBridge: XComponent {
create([in] XExtendedToolkit toolkit);
};
(and change the type of mxAccessBridge accordingly).
* MARKER: These services are not intended to be instantiated via their
service names. Rather, they describe characteristics of certain UNO
objects. (And there's unfortunately lots of these, needlessly obscuring
things in many ways.)
* MODULE: These services are not intended to be instantiated at the
global component context/service manager, but rather via
document-specific factories. (Some that I labelled MODULE might
actually be MARKER -- I did not look too close.)
* SINGLE util.OfficeInstallationDirectories: While there is a
(superfluous) service definition for this, there is also a singleton
definition (in the same file) that appears to be used exclusively by
client code. I would keep the service old-style, mark it as deprecated
(pointing to the singleton for actual use), move the singleton into an
.idl file of its own, and convert the singleton to new-style.
* UNUSED: These services look completely unused. Would probably be
better to mark them as @deprecated.
Noel, can you adapt your patches?
Thanks again for your patience and good work,
Stephan
> awt.MenuBar
> awt.PopupMenu
> awt.TabController
> document.OleEmbeddedServerRegistration
> embed.FileSystemStorageFactory
> embed.StorageFactory
> frame.DispatchHelper
> frame.DispatchRecorderSupplier
> frame.DocumentTemplates
> frame.MediaTypeDetectionHelper
> graphic.GraphicProvider
> mozilla.MozillaBootstrap
> plugin.PluginManager
> scanner.ScannerManager
> sheet.RecentFunctions
> task.JobExecutor
> text.DefaultNumberingProvider
> ucb.AnyCompareFactory
> ucb.CachedContentResultSetFactory
> ucb.CachedContentResultSetStubFactory
> ucb.CachedDynamicResultSetFactory
> ucb.CachedDynamicResultSetStubFactory
> ucb.ContentProviderProxyFactory
> ucb.PropertiesManager
> ucb.SimpleFileAccess
> ucb.SortedDynamicResultSetFactory
> ucb.Store
> util.PathSubstitution
> util.TextSearch
> util.URLTransformer
>
> CTORS accessibility.AccessBridge
> MARKER accessibility.Accessible
> UNUSED auth.SSOManagerFactory
> UNUSED auth.SSOPasswordCache
> MARKER chart.ChartData
> UNUSED configuration.backend.HierarchyBrowser
> UNUSED configuration.bootstrap.BootstrapContext
> MARKER document.Events
> MARKER document.ExtendedTypeDetection
> UNUSED document.FilterAdapter
> MARKER document.LinkTargets
> MODULE drawing.BitmapTable
> MODULE drawing.DashTable
> MODULE drawing.GradientTable
> MODULE drawing.HatchTable
> MODULE drawing.MarkerTable
> MODULE drawing.MasterPages
> MODULE drawing.Shapes
> MODULE drawing.TransparencyGradientTable
> MARKER frame.Components
> MARKER frame.ContentHandler
> MARKER frame.FramesContainer
> MARKER i18n.TextConversion
> MARKER mozilla.MenuProxy
> MARKER mozilla.MenuProxyListener
> MARKER packages.PackageFolderEnumeration
> MARKER sdbc.Driver
> MODULE sheet.CellAnnotationsEnumeration
> MODULE sheet.CellAreaLinksEnumeration
> MODULE sheet.CellFormatRangesEnumeration
> MODULE sheet.Cells
> MODULE sheet.CellsEnumeration
> MODULE sheet.ConsolidationDescriptor
> MODULE sheet.DatabaseRangesEnumeration
> MODULE sheet.DataPilotFieldGroupItem
> MODULE sheet.DataPilotFieldsEnumeration
> MODULE sheet.DataPilotSourceDimensions
> MODULE sheet.DataPilotSourceHierarchies
> MODULE sheet.DataPilotSourceLevels
> MODULE sheet.DataPilotSourceMembers
> MODULE sheet.DataPilotTablesEnumeration
> MODULE sheet.DDELinksEnumeration
> MODULE sheet.FunctionDescriptionEnumeration
> MODULE sheet.HeaderFooterContent
> MODULE sheet.LabelRangesEnumeration
> MODULE sheet.LabelRange
> MODULE sheet.NamedRangesEnumeration
> MODULE sheet.ScenariosEnumeration
> MODULE sheet.SheetCellRangesEnumeration
> MODULE sheet.SheetLinksEnumeration
> MODULE sheet.SpreadsheetsEnumeration
> MODULE sheet.SpreadsheetViewPanesEnumeration
> MODULE sheet.SubTotalFieldsEnumeration
> MODULE sheet.SubTotalField
> MODULE sheet.TableAutoFormatEnumeration
> MODULE sheet.TableAutoFormatsEnumeration
> MODULE sheet.TableConditionalEntryEnumeration
> MODULE sheet.UniqueCellFormatRangesEnumeration
> MODULE sheet.VolatileResult [missing from UnoApi_offapi.mk changes]
> MARKER table.CellCursor
> MARKER table.TableColumnsEnumeration
> MARKER table.TableRowsEnumeration
> MOUDLE text.DocumentIndexLevelFormat
> MODULE text.DocumentIndexParagraphStyles
> MODULE text.Footnotes
> MODULE text.ParagraphEnumeration
> MODULE text.TableColumns
> MODULE text.TableRows
> MODULE text.TextFieldEnumeration
> MODULE text.TextFieldMasters
> MODULE text.TextPortionEnumeration
> MODULE text.TextRanges
> MARKER ucb.DynamicResultSet
> MARKER ucb.FTPContentProvider
> MARKER ucb.HelpContentProvider
> MARKER ucb.HierarchyContentProvider
> MARKER ucb.ODMAContentProvider
> MARKER ucb.WebDAVContentProvider
> SINGLE util.OfficeInstallationDirectories
> MARKER xml.AttributeContainer
> MARKER xml.ImportFilter
> MARKER xml.NamespaceContainer
More information about the LibreOffice
mailing list