How do I generate CustomHelp method stubs?

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
2 messages Options
Reply | Threaded
Open this post in threaded view
|

How do I generate CustomHelp method stubs?

Hannes Hirzel
Hello

How do I generate CustomHelp method stubs?

The HelpBrowser you get when you choose menu 'Help' / 'HelpBrowser'
[1] automatically includes all help specified as subclasses of
CustomHelp [2].

A typical help method is

SqueakCorePackagesHelp>>
collections
        "This method was automatically generated. Edit it using:"
        "SqueakCorePackagesHelp edit: #collections"
.....
[3]


How do I generate the method stubs for

        CustomHelp subclass: #MyPackageHelp
        instanceVariableNames: ''
        classVariableNames: ''
        poolDictionaries: ''
        category: 'MyPackage'


Kind regards
Hannes


------------------------------------------------------------------------

[1] The menu entry calls
          HelpBrowser open



------------------------------------------------------------------------

[2] CustomHelp printHierarchy '
ProtoObject #()
        Object #()

                CustomHelp #()
                        EnvironmentsHelp #()
                                EnvironmentsAPIDocumentation #()
                        HelpOnHelp #()
                                HelpAPIDocumentation #()
                                HelpHowToHelpTopics #()
                                        HelpHowToHelpTopicsFromCode #()
                        SWikiHelp #()
                        SqueakCorePackagesHelp #()
                                SqueakFurtherCorePackagesHelp #()
                                SqueakUsefulCorePackagesHelp #()
                        SqueakHelp #()
                                SqueakProjectHelp #()
                                        SqueakLicenseHelp #()
                                        SqueakReleaseNotes #()
                                SqueakToolsHelp #()
                                        SqueakToolsDebuggerHelp #()
                                        SqueakToolsTranscriptHelp #()
                                        SqueakToolsWorkspaceHelp #()
                                SqueakTutorials #()
                                        SqueakTutorialsCommandKey #()
                                        SqueakTutorialsOnImage #()
                                        SqueakTutorialsOnXML #()
                        TerseGuideHelp #()
                        WebClientHelp #()
                                WebClientReference #()
                        WebServerHelp #()
                                WebServerReference #()'



------------------------------------------------------------------------



[3] SqueakCorePackagesHelp>>collections
        "This method was automatically generated. Edit it using:"
        "SqueakCorePackagesHelp edit: #collections"
        ^(HelpTopic
                title: 'Collections'
                contents:
'Everything related to working with multiple objects such as Array,
String (Collection of characters), Stream, Set, and Dictionary.!
]style[(60 5 2 6 29 6 2 3 6 10 1),dArray browse;;,,dString
browse;;,,dStream browse;;,,dSet browse;;,,dDictionary browse;;,!'
readStream nextChunkText)
                        key: #collections

Reply | Threaded
Open this post in threaded view
|

Re: How do I generate CustomHelp method stubs?

marcel.taeumel
Hi Hannes.

The code generation happens in CustomHelp class >> #accept:title:contents:, which is triggerd via CustomHelp class >> #edit:.

Note that "CustomHelp" represents your domain model while all subclasses of "AbstractHelpTopic" represent the help browser's tool model. By default, CustomHelp uses ClassBasedHelpTopic for data interpretation. Other examples such as SWikiHelp and EnvironmentsAPIDocumentation override #asHelpTopic to use more convenient ways to generate the tool model. Take a look at the category "HelpSystem-Core-Model" to get an overview of the possibilities: class-based, directory-based, file-based, html-based, package-based, ... The "SearchTopic" is used for searching through all active help topics in a certain help browser.

Note that there is not "one" help browser in Squeak but "a" help browser that shows a certain amount of help topics. I think you can open a rather "complete" help browser via HelpBrowser class >> #open and a "specific" one via HelpBrowser class >> #openOn:. For advanced API usage see ReleaseBuilder class >> #openWelcomeWorkspacesWith:.

Best,
Marcel

Am 16.10.2017 12:17:23 schrieb H. Hirzel <[hidden email]>:

Hello

How do I generate CustomHelp method stubs?

The HelpBrowser you get when you choose menu 'Help' / 'HelpBrowser'
[1] automatically includes all help specified as subclasses of
CustomHelp [2].

A typical help method is

SqueakCorePackagesHelp>>
collections
"This method was automatically generated. Edit it using:"
"SqueakCorePackagesHelp edit: #collections"
.....
[3]


How do I generate the method stubs for

CustomHelp subclass: #MyPackageHelp
instanceVariableNames: ''
classVariableNames: ''
poolDictionaries: ''
category: 'MyPackage'


Kind regards
Hannes


------------------------------------------------------------------------

[1] The menu entry calls
HelpBrowser open



------------------------------------------------------------------------

[2] CustomHelp printHierarchy '
ProtoObject #()
Object #()

CustomHelp #()
EnvironmentsHelp #()
EnvironmentsAPIDocumentation #()
HelpOnHelp #()
HelpAPIDocumentation #()
HelpHowToHelpTopics #()
HelpHowToHelpTopicsFromCode #()
SWikiHelp #()
SqueakCorePackagesHelp #()
SqueakFurtherCorePackagesHelp #()
SqueakUsefulCorePackagesHelp #()
SqueakHelp #()
SqueakProjectHelp #()
SqueakLicenseHelp #()
SqueakReleaseNotes #()
SqueakToolsHelp #()
SqueakToolsDebuggerHelp #()
SqueakToolsTranscriptHelp #()
SqueakToolsWorkspaceHelp #()
SqueakTutorials #()
SqueakTutorialsCommandKey #()
SqueakTutorialsOnImage #()
SqueakTutorialsOnXML #()
TerseGuideHelp #()
WebClientHelp #()
WebClientReference #()
WebServerHelp #()
WebServerReference #()'



------------------------------------------------------------------------



[3] SqueakCorePackagesHelp>>collections
"This method was automatically generated. Edit it using:"
"SqueakCorePackagesHelp edit: #collections"
^(HelpTopic
title: 'Collections'
contents:
'Everything related to working with multiple objects such as Array,
String (Collection of characters), Stream, Set, and Dictionary.!
]style[(60 5 2 6 29 6 2 3 6 10 1),dArray browse;;,,dString
browse;;,,dStream browse;;,,dSet browse;;,,dDictionary browse;;,!'
readStream nextChunkText)
key: #collections