<div id="__MailbirdStyleContent" style="font-size: 10pt;font-family: Arial;color: #000000">
Quick suggestion on the formatting. This one:<div><br></div><div><span style="font-family: Arial, Helvetica, sans-serif;font-size: 13px">^ self canBrowseTopic or: [</span><br style="font-family: Arial, Helvetica, sans-serif;font-size: 13px"><span style="font-family: Arial, Helvetica, sans-serif;font-size: 13px"> parentTopic ifNotNil: #canBrowseSubtopic ifNil: [false]]</span></div><div><span style="font-family: Arial, Helvetica, sans-serif;font-size: 13px"><br></span></div><div><span style="font-family: Arial, Helvetica, sans-serif;font-size: 13px">could become:</span></div><div><span style="font-family: Arial, Helvetica, sans-serif;font-size: 13px"><br></span></div><div><div style="font-size: 13.3333px"><span style="font-family: Arial, Helvetica, sans-serif;font-size: 13px">^ self canBrowseTopic or: [</span><br style="font-family: Arial, Helvetica, sans-serif;font-size: 13px"><span style="font-family: Arial, Helvetica, sans-serif;font-size: 13px"> parentTopic</span></div><div style="font-size: 13.3333px"><span style="font-family: Arial, Helvetica, sans-serif;font-size: 13px"> </span><span style="font-family: Arial, Helvetica, sans-serif;font-size: 13px"> </span><span style="font-family: Arial, Helvetica, sans-serif;font-size: 13px"> </span><span style="font-family: Arial, Helvetica, sans-serif;font-size: 13px">ifNil: [false]</span></div><div style="font-size: 13.3333px"><span style="font-family: Arial, Helvetica, sans-serif;font-size: 13px"> </span><span style="font-family: Arial, Helvetica, sans-serif;font-size: 13px"> </span><span style="font-family: Arial, Helvetica, sans-serif;font-size: 13px"> </span><span style="font-family: Arial, Helvetica, sans-serif;font-size: 13px">ifNotNil: [:topic | topic canBrowseSubtopic]]</span></div></div><div><span style="font-family: Arial, Helvetica, sans-serif;font-size: 13px"><br></span></div><div><span style="font-family: Arial, Helvetica, sans-serif;font-size: 13px">or:</span></div><div><span style="font-family: Arial, Helvetica, sans-serif;font-size: 13px"><br></span></div><div><div style="font-size: 13.3333px"><div style="font-size: 13.3333px"><span style="font-family: Arial, Helvetica, sans-serif;font-size: 13px">^ self canBrowseTopic</span></div><div style="font-size: 13.3333px"><span style="font-family: Arial, Helvetica, sans-serif;font-size: 13px"> or: [parentTopic notNil and: </span><span style="font-family: Arial, Helvetica, sans-serif;font-size: 13px">[parentTopic canBrowseSubtopic]]</span></div><div style="font-size: 13.3333px"><span style="font-family: Arial, Helvetica, sans-serif;font-size: 13px"><br></span></div><div style="font-size: 13.3333px"><span style="font-family: Arial, Helvetica, sans-serif;font-size: 13px">Hmmm... what are other opinions on this? There is no need for #ifNil/ifNotNil in such a boolean expression?</span></div><div style="font-size: 13.3333px"><span style="font-family: Arial, Helvetica, sans-serif;font-size: 13px"><br></span></div><div style="font-size: 13.3333px"><span style="font-family: Arial, Helvetica, sans-serif;font-size: 13px">Best,</span></div><div style="font-size: 13.3333px"><span style="font-family: Arial, Helvetica, sans-serif;font-size: 13px">Marcel</span></div><div style="font-size: 13.3333px"><span style="font-family: Arial, Helvetica, sans-serif;font-size: 13px"><br></span></div><div style="font-size: 13.3333px"><br></div></div></div><div class="mb_sig"></div>
<blockquote class="history_container" type="cite" style="border-left-style: solid;border-width: 1px;margin-top: 20px;margin-left: 0px;padding-left: 10px;min-width: 500px">
<p style="color: #AAAAAA; margin-top: 10px;">Am 13.10.2019 21:04:19 schrieb commits@source.squeak.org <commits@source.squeak.org>:</p><div style="font-family:Arial,Helvetica,sans-serif">A new version of HelpSystem-Core was added to project The Inbox:<br>http://source.squeak.org/inbox/HelpSystem-Core-ct.123.mcz<br><br>==================== Summary ====================<br><br>Name: HelpSystem-Core-ct.123<br>Author: ct<br>Time: 13 October 2019, 9:04:08.373932 pm<br>UUID: dec7ceca-320f-d945-8d2a-c2f6a5e49a52<br>Ancestors: HelpSystem-Core-ct.120<br><br>Refactors HelpBrowser menu: Move menu stuff from HelpBrowser into HelpTopic hierarchy in favor of a better object design<br><br>Thanks again, Marcel :-)<br><br>=============== Diff against HelpSystem-Core-ct.120 ===============<br><br>Item was added:<br>+ ----- Method: AbstractHelpTopic>>browseTopicFromParent: (in category 'tools') -----<br>+ browseTopicFromParent: parentTopic<br>+ <br>+ self canBrowseTopic<br>+ ifTrue: [^ self browseTopic].<br>+ parentTopic canBrowseSubtopic<br>+ ifTrue: [^ parentTopic browseSubtopic: self].<br>+ !<br><br>Item was added:<br>+ ----- Method: AbstractHelpTopic>>canBrowseSubtopic (in category 'testing') -----<br>+ canBrowseSubtopic<br>+ <br>+ ^ false!<br><br>Item was added:<br>+ ----- Method: AbstractHelpTopic>>canBrowseTopic (in category 'testing') -----<br>+ canBrowseTopic<br>+ <br>+ ^ false!<br><br>Item was added:<br>+ ----- Method: AbstractHelpTopic>>canBrowseTopicFromParent: (in category 'testing') -----<br>+ canBrowseTopicFromParent: parentTopic<br>+ <br>+ ^ self canBrowseTopic or: [<br>+ parentTopic ifNotNil: #canBrowseSubtopic ifNil: [false]]!<br><br>Item was added:<br>+ ----- Method: AbstractHelpTopic>>topicMenu:parentTopic: (in category 'menus') -----<br>+ topicMenu: aMenu parentTopic: parentTopic<br>+ <br>+ aMenu<br>+ add: 'Inspect (i)' translated target: self action: #inspect;<br>+ add: 'Explore (I)' translated target: self action: #explore.<br>+ (self canBrowseTopicFromParent: parentTopic)<br>+ ifTrue: [<br>+ aMenu add: 'Browse (b)' translated<br>+ target: self<br>+ selector: #browseTopicFromParent:<br>+ argumentList: {parentTopic} ].<br>+ <br>+ ^ aMenu!<br><br>Item was added:<br>+ ----- Method: AbstractHelpTopic>>topicMenuKey:fromParent: (in category 'menus') -----<br>+ topicMenuKey: aChar fromParent: parentTopic<br>+ <br>+ aChar<br>+ caseOf: {<br>+ [$b] -> [(self canBrowseTopicFromParent: parentTopic)<br>+ ifTrue: [ self browseTopicFromParent: parentTopic ]].<br>+ [$i] -> [self inspect].<br>+ [$I] -> [self explore] }<br>+ otherwise: [^ false].<br>+ ^ true!<br><br>Item was added:<br>+ ----- Method: ClassAPIHelpTopic>>canBrowseTopic (in category 'testing') -----<br>+ canBrowseTopic<br>+ <br>+ ^ true!<br><br>Item was added:<br>+ ----- Method: ClassBasedHelpTopic>>canBrowseSubtopic (in category 'testing') -----<br>+ canBrowseSubtopic<br>+ <br>+ ^ true!<br><br>Item was added:<br>+ ----- Method: ClassBasedHelpTopic>>canBrowseTopic (in category 'testing') -----<br>+ canBrowseTopic<br>+ <br>+ ^ true!<br><br>Item was added:<br>+ ----- Method: DirectoryBasedHelpTopic>>canBrowseTopic (in category 'testing') -----<br>+ canBrowseTopic<br>+ <br>+ ^ true!<br><br>Item was added:<br>+ ----- Method: FileBasedHelpTopic>>canBrowseTopic (in category 'testing') -----<br>+ canBrowseTopic<br>+ <br>+ ^ true!<br><br>Item was removed:<br>- ----- Method: HelpBrowser>>browseTopic (in category 'actions') -----<br>- browseTopic<br>- <br>- ^ (self currentTopic respondsTo: #browseTopic)<br>- ifTrue: [self currentTopic browseTopic]<br>- ifFalse: [self currentParentTopic browseSubtopic: self currentTopic]!<br><br>Item was removed:<br>- ----- Method: HelpBrowser>>canBrowseTopic (in category 'testing') -----<br>- canBrowseTopic<br>- <br>- ^ (self currentTopic respondsTo: #browseTopic)<br>- or: [self currentParentTopic respondsTo: #browseSubtopic:]!<br><br>Item was removed:<br>- ----- Method: HelpBrowser>>exploreTopic (in category 'actions') -----<br>- exploreTopic<br>- <br>- ^ self currentTopic explore!<br><br>Item was removed:<br>- ----- Method: HelpBrowser>>inspectTopic (in category 'actions') -----<br>- inspectTopic<br>- <br>- ^ self currentTopic inspect!<br><br>Item was changed:<br> ----- Method: HelpBrowser>>treeKey:from:event: (in category 'menus') -----<br> treeKey: aChar from: aView event: anEvent<br> <br> anEvent anyModifierKeyPressed ifFalse: [^ false].<br>+ ^ (self currentTopic topicMenuKey: aChar fromParent: self currentParentTopic)!<br>- aChar<br>- caseOf: {<br>- [$b] -> [self browseTopic].<br>- [$i] -> [self inspectTopic].<br>- [$I] -> [self exploreTopic]. }<br>- otherwise: [^ false].<br>- ^ true!<br><br>Item was changed:<br> ----- Method: HelpBrowser>>treeListMenu: (in category 'menus') -----<br> treeListMenu: aMenu<br> <treelistmenu><br> <br>+ ^ self currentTopic<br>+ ifNil: [aMenu]<br>+ ifNotNil: [:topic | topic<br>+ topicMenu: aMenu<br>+ parentTopic: self currentParentTopic]!<br>- self currentTopic ifNil: [^ aMenu].<br>- <br>- aMenu<br>- add: 'Inspect (i)' action: #inspectTopic;<br>- add: 'Explore (I)' action: #exploreTopic.<br>- <br>- self canBrowseTopic ifTrue: [<br>- aMenu<br>- addLine;<br>- add: 'Browse (b)' action: #browseTopic].<br>- <br>- ^ aMenu!<br><br>Item was added:<br>+ ----- Method: MethodListHelpTopic>>canBrowseTopic (in category 'testing') -----<br>+ canBrowseTopic<br>+ <br>+ ^ true!<br><br>Item was added:<br>+ ----- Method: PackageAPIHelpTopic>>canBrowseTopic (in category 'testing') -----<br>+ canBrowseTopic<br>+ <br>+ ^ true!<br><br><br></treelistmenu></div></blockquote></div>