Issue 68054 - Add capability to get at the IDL (help) text via reflection at runtime!
Summary: Add capability to get at the IDL (help) text via reflection at runtime!
Status: ACCEPTED
Alias: None
Product: App Dev
Classification: Unclassified
Component: api (show other issues)
Version: 3.3.0 or older (OOo)
Hardware: All All
: P3 Trivial
Target Milestone: ---
Assignee: AOO issues mailing list
QA Contact:
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2006-08-02 00:37 UTC by ronyf
Modified: 2017-05-20 11:27 UTC (History)
1 user (show)

See Also:
Issue Type: FEATURE
Latest Confirmation in: ---
Developer Difficulty: ---


Attachments

Note You need to log in before you can comment on or make changes to this issue.
Description ronyf 2006-08-02 00:37:49 UTC
Hi there,

at the moment it is not possible to fetch the IDL-help texts at runtime via
reflection. For that reason I would like to request such a feature, but before
doing so, a discussion about the usefulness of such a feature may be in order.

So please let me talk for a few seconds about MS Windows OLE, where it is
possible (if the software provides the information) to query the documentation
for the OLE classes, its methods, its attributes and its events *at* *runtime*.
Because of this, I was able a few years ago to create a little utility which
dumps the OLE interfaces (methods, attributes, events) and formats them in HTML
(using a CSS). In addition, using MSIE and having ooRexx installed one could
even switch sections on/off (important e.g. for looking at the interfaces e.g.
Excel or Word supplies, looking at the defined constants which may go into the
hundreds (e.g. Excel 2003 defines 1,542 constants, Word 2003 defines 2,757
constants).

Anyway, it has become possible with this little utility to either supply the
PROGID or CLSID value of an OLE class and get its defined interfaces back.

Here is a full and a compact list of the interfaces MS InternetExplorer defines:

   * <http://wi.wu-wien.ac.at/rgf/rexx/orx13/tmp/InternetExplorer.Application_0.html
      >
     full listing (includes a constant section)
   * <http://wi.wu-wien.ac.at/rgf/rexx/orx13/tmp/InternetExplorer.Application_1.html
      >
     compact listing (folds attributes, does not document constants).

These listings can be printed out and may serve as some sort of reference cards,
which helps gain an overview about the features a particular OLE class supplies.
[The utility set is briefly described at and could be downloaded from:
<http://wi.wu-wien.ac.at/rgf/rexx/orx15/readme.html>.]

---

Now turning to OOo: as anyone who wants to script/program an OOo component
knows, the research of the available interfaces may be quite cumbersome, if
clicking from one defined class to the next, then needing to get back to the
original area and follow another path (by e.g. exploring the interfaces of
another interface or service). Although practically everything is documented (at
least briefly), it is very hard to gain an overview or being able to explore an
area of interest just using the IDL definitions on their own.

If there was an ability to use reflection to get at the information/help text
that goes with the IDL definition, then one would get the ability to devise
utilities which may help mastering different areas of OOo in an innovative and
(hopefully!) easier way. E.g. when turning to a text-component service object,
one is interested about its immediate abilities, but also about those one can
get access to by requesting interfaces form it. It would be possible, to explore
everything at runtime (e.g. defining a depth of 3 links) and render the found
definitions together with their definition in a much more concentrated,
domain-related form.

Personally, I am convinced that such a utility would help jump-start developers
and scripters who are newbies, but also those who are turning to a new area of
OOo, with which they have never worked before.

Such a functionality becomes only possible, if it was possible to query the text
going with the IDL definition at runtime via reflection (e.g. get the first
sentence, get all text, get it as plain text or formatted text, e.g. in HTML,
etc.). This would imply that the IDL compiler would include the text-information
and the creation of a method allowing to get at such text at runtime via
reflection. (Also, of course, the information would become readily
available/updated, each time the IDL compiler is run.)

So, what would you think (especially looking at what is possible in the Windows
world w.r.t. OLE supplying published information on its definitions)?

Regards,

---rony

P.S.: I posted this to <dev@OOo> and <api@OOo> lists, because both may be
affected/interested in this.
Comment 1 jsc 2006-08-04 06:56:27 UTC
accepted
Comment 2 ronyf 2007-09-12 00:07:19 UTC
Just a question about the state of this RFE. Is there a time frame in which one
could expect that this becomes available?

(I am also asking, because I got a student who has been assigned the task to
create dynamic context-information to ease getting acquaintance with OOo; for
this project it would be very helpful, if the IDL help text could be reflected.)
Comment 3 jsc 2007-09-12 06:08:31 UTC
ronyf: i don't see really a high prio for this enhancement at the moment
independent of my personal opinion. I would really like to implement it... The
former GSoc project dynamic IDL browser is stalled currently and would also need
this enhancement but as long as nobody wants to work on this i will probably not
get the time to implement this feature. But i will try ...
In the meanwhile you should take a look on the Object Inspector
http://wiki.services.openoffice.org/wiki/Object_Inspector that comes also as
example with the SDK. We had even more plans to improve this tool but the
priorities has changed and this project is stalled at the moment too.
Comment 4 Marcus 2017-05-20 11:27:58 UTC
Reset assigne to the default "issues@openoffice.apache.org".