[Mono-docs-list] Monodoc aspx .1
Miguel de Icaza
miguel@ximian.com
14 Jul 2003 18:54:39 -0400
Hello,
> > - string res = n.tree.HelpSource.GetText (url, out x);
> > - ((Browser)browser).Render (res, n, url);
> > + // The root tree has no help source
> > + if (n.tree.HelpSource != null)
> > + res = n.tree.HelpSource.GetText (url, out x);
> > + else
> > + res = ((RootTree)n.tree).RenderUrl (url, out x);
> > +
> > + browser.Render (res, n, url);
> >
> > Can you explain me when do we trigger this particular case? This
> > pattern `n.tree.HelpSource != null' is used in a few more places, and
> > I
> > am wondering why we would have a null HelpSource.
> This is the RootTree. That class has no help source. Maybe I should
> replace this with if (n.tree is RootTree).
Ok, but why would the RootTree trigger a render *there*?
> Yeah, this was just a patch to allow those root:/ url's to load in the
> browser. They are *not* necessary for the web client.
I rather not have those then.
> > I like its principle, but it should probably have a different
> > name,
> > as "root:" gives the wrong idea.
> I have no problem with a new name.
ok. entry-point: or provider: or
> > I fail to understand the rationale for most of the changes here,
> > could you post a ChangeLog entry, or details?
> All the other providers generate content like this:
> <h1>this is content</h1>
>
> whereas monohb does this:
> <html><head><title></title></head>
> <body>
> <h1>this is content</h1>
> </body></html>
>
> Thus, when we put it inside <html><body> like we do in browser.exe and
> web monodoc, it is invalid.
Ok, can you add that to the comments, so it is clear from the source?
> > Seems like you got some old code in there; There is a name_to_hs
> > hack there that is never used, so those parts should probably be
> > removed.
> name_to_hs is used:
Ok, I see it is used.
> The hack is meant to allow use to map the name of a provider (eg,
> classlib) to the HelpSource for that provider. This way, we can allow
> each provider to be responsible for its own root. If you can think of a
> better way...I would love it.
I do not understand why we need it though, so I would like to understand
that part.
> > The changes to populate are also very bizarre, can you explain
> > what they are for? (They reference root:)
> Before, each node below Mono Documentation had a url such as "classlib".
> now they have "root:/classlib".
Ok, and what is that used for?
> The problem is that this turned out to be the easiest way to do it. I
> would like to do this some other way, but doing it would require more
> changes.
Ok, I can live with this for now.
Miguel