<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
  <head>
    <meta content="text/html; charset=UTF-8" http-equiv="Content-Type">
  </head>
  <body bgcolor="#ffffff" text="#000000">
    The modifier keys have been most likely broken for some time in
    seach. It is easy to verify that in 7.2 or 7.0. This needs some
    review. But as Jon says, I think it is best to have a reasonable
    dialog with checkboxes for this. Maybe I can get to this during this
    week.<br>
    <br>
    Thanks!<br>
    <br>
    On 12/30/2024 10:58 AM, Jon Raiford via Cuis-dev wrote:
    <blockquote
cite="mid:SA1PR17MB5350A2541957D39BBC9EB912BE092@SA1PR17MB5350.namprd17.prod.outlook.com"
      type="cite">
      <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
      <meta name="Generator" content="Microsoft Word 15 (filtered
        medium)">
      <style><!--
/* Font Definitions */
@font-face
        {font-family:"Cambria Math";
        panose-1:2 4 5 3 5 4 6 3 2 4;}
@font-face
        {font-family:Aptos;
        panose-1:2 11 0 4 2 2 2 2 2 4;}
@font-face
        {font-family:Consolas;
        panose-1:2 11 6 9 2 2 4 3 2 4;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
        {margin:0in;
        font-size:10.0pt;
        font-family:"Aptos",sans-serif;}
p.MsoHeader, li.MsoHeader, div.MsoHeader
        {mso-style-priority:99;
        mso-style-link:"Header Char";
        margin:0in;
        font-size:10.0pt;
        font-family:"Aptos",sans-serif;}
p.MsoFooter, li.MsoFooter, div.MsoFooter
        {mso-style-priority:99;
        mso-style-link:"Footer Char";
        margin:0in;
        font-size:10.0pt;
        font-family:"Aptos",sans-serif;}
a:link, span.MsoHyperlink
        {mso-style-priority:99;
        color:blue;
        text-decoration:underline;}
pre
        {mso-style-priority:99;
        mso-style-link:"HTML Preformatted Char";
        margin:0in;
        font-size:10.0pt;
        font-family:"Courier New";}
span.HTMLPreformattedChar
        {mso-style-name:"HTML Preformatted Char";
        mso-style-priority:99;
        mso-style-link:"HTML Preformatted";
        font-family:"Consolas",serif;}
span.EmailStyle21
        {mso-style-type:personal-reply;
        font-family:"Aptos",sans-serif;
        color:windowtext;}
span.HeaderChar
        {mso-style-name:"Header Char";
        mso-style-priority:99;
        mso-style-link:Header;
        font-family:"Aptos",sans-serif;}
span.FooterChar
        {mso-style-name:"Footer Char";
        mso-style-priority:99;
        mso-style-link:Footer;
        font-family:"Aptos",sans-serif;}
.MsoChpDefault
        {mso-style-type:export-only;
        font-size:10.0pt;
        mso-ligatures:none;}
/* Page Definitions */
@page
        {mso-endnote-separator:url("cid:header.htm\@01DB5A98.5C5E3BD0") es;
        mso-endnote-continuation-separator:url("cid:header.htm\@01DB5A98.5C5E3BD0") ecs;}
@page WordSection1
        {size:8.5in 11.0in;
        margin:1.0in 1.0in 1.0in 1.0in;
        mso-footer:url("cid:header.htm\@01DB5A98.5C5E3BD0") f1;}
div.WordSection1
        {page:WordSection1;}
--></style><!--[if gte mso 9]><xml>
<o:shapedefaults v:ext="edit" spidmax="2050" />
</xml><![endif]--><!--[if gte mso 9]><xml>
<o:shapelayout v:ext="edit">
<o:idmap v:ext="edit" data="2" />
</o:shapelayout></xml><![endif]-->
      <div class="WordSection1">
        <p class="MsoNormal"><span style="font-size: 12pt;">Hi Hilaire,<o:p></o:p></span></p>
        <p class="MsoNormal"><span style="font-size: 12pt;"><o:p> </o:p></span></p>
        <p class="MsoNormal"><span style="font-size: 12pt;">I tried to
            just add the scope part. I really don’t use the modifier
            keys. That logic was all brought over from the original
            code. Maybe we need to grab their state before displaying
            the scope prompt? Btw, I’d ultimately like to see this be an
            integrated dialog that has the search text and the scope in
            one place. It could also then show checkboxes in place of
            the modifier keys to make it more intuitive / intuitable.<o:p></o:p></span></p>
        <p class="MsoNormal"><span style="font-size: 12pt;"><o:p> </o:p></span></p>
        <p class="MsoNormal"><span style="font-size: 12pt;">Jon<o:p></o:p></span></p>
        <p class="MsoNormal"><span style="font-size: 12pt;"><o:p> </o:p></span></p>
        <div id="mail-editor-reference-message-container">
          <div>
            <div>
              <div style="border-right: medium none; border-width: 1pt
                medium medium; border-style: solid none none;
                border-color: rgb(181, 196, 223) -moz-use-text-color
                -moz-use-text-color; padding: 3pt 0in 0in;">
                <p class="MsoNormal" style="margin-bottom: 12pt;"><b><span
                      style="font-size: 12pt; color: black;">From:
                    </span></b><span style="font-size: 12pt; color:
                    black;">Cuis-dev
                    <a class="moz-txt-link-rfc2396E" href="mailto:cuis-dev-bounces@lists.cuis.st"><cuis-dev-bounces@lists.cuis.st></a> on behalf of
                    Hilaire Fernandes via Cuis-dev
                    <a class="moz-txt-link-rfc2396E" href="mailto:cuis-dev@lists.cuis.st"><cuis-dev@lists.cuis.st></a><br>
                    <b>Date: </b>Sunday, December 29, 2024 at 5:32</span><span
                    style="font-size: 12pt; font-family:
                    "Arial",sans-serif; color: black;"> </span><span
                    style="font-size: 12pt; color: black;">AM<br>
                    <b>To: </b><a class="moz-txt-link-abbreviated" href="mailto:cuis-dev@lists.cuis.st">cuis-dev@lists.cuis.st</a>
                    <a class="moz-txt-link-rfc2396E" href="mailto:cuis-dev@lists.cuis.st"><cuis-dev@lists.cuis.st></a><br>
                    <b>Cc: </b>Hilaire Fernandes <a class="moz-txt-link-rfc2396E" href="mailto:hfern@free.fr"><hfern@free.fr></a><br>
                    <b>Subject: </b>Re: [Cuis-dev] Find with Scope<o:p></o:p></span></p>
              </div>
              <p><span style="font-size: 13.5pt;">This is useful,
                  thanks. </span>Some features, need to be documented
                thought (where?) when I read this method below. I did
                not find how to use the Shift or Ctrl alternatives.
                Pressing on of those prevent the search to start.<o:p></o:p></p>
              <pre>browseMethodsWithSourceString: aString<o:p></o:p></pre>
              <pre>scopeClass: scopeClass<o:p></o:p></pre>
              <pre>includeSubclasses: includeSubclasses<o:p></o:p></pre>
              <pre>includeSuperclasses: includeSuperclasses<o:p></o:p></pre>
              <pre>    "Smalltalk browseMethodsWithSourceString: 'SourceString' "<o:p></o:p></pre>
              <pre>    "Launch a browser on all methods whose source code contains aString as a substring."<o:p></o:p></pre>
              <pre><o:p> </o:p></pre>
              <pre>    | caseSensitive suffix selectString |<o:p></o:p></pre>
              <pre>    Sensor controlKeyPressed ifTrue: [<o:p></o:p></pre>
              <pre>        selectString := ((aString findTokens: '*') sorted: [ :a :b | a size > b size ]) first.<o:p></o:p></pre>
              <pre>        ^ self <o:p></o:p></pre>
              <pre>            browseMessageList: (self allMethodsSourceStringMatching: '*', aString, '*')<o:p></o:p></pre>
              <pre>            name: 'Methods matched by ' , aString printString , ' (no ctrl for exact match)'<o:p></o:p></pre>
              <pre>            autoHighlight: selectString<o:p></o:p></pre>
              <pre>            allOccurrences: true<o:p></o:p></pre>
              <pre>        ].<o:p></o:p></pre>
              <pre>   <b> suffix := (caseSensitive := Sensor shiftPressed)<o:p></o:p></b></pre>
              <pre><b>        ifTrue: [' (case-sensitive. Use ctrl for $* pattern match.)']<o:p></o:p></b></pre>
              <pre><b>        ifFalse: [' (shift for case-sensitive. ctrl for $* pattern match.)'].</b><o:p></o:p></pre>
              <pre>    ^ self <o:p></o:p></pre>
              <pre>        browseMessageList: (self allMethodsWithSourceString: aString matchCase: caseSensitive scopeClass: scopeClass includeSubclasses: includeSubclasses includeSuperclasses: includeSuperclasses)<o:p></o:p></pre>
              <pre>        name: 'Methods containing ' , aString printString , suffix<o:p></o:p></pre>
              <pre>        autoHighlight: aString<o:p></o:p></pre>
              <pre>        allOccurrences: true.<o:p></o:p></pre>
              <div>
                <p class="MsoNormal"><span style="font-size: 12pt;"><o:p> </o:p></span></p>
              </div>
              <div>
                <p class="MsoNormal"><span style="font-size: 12pt;"><o:p> </o:p></span></p>
              </div>
              <div>
                <p class="MsoNormal"><span style="font-size: 12pt;">Le
                    25/11/2024 à 19:47, Juan Vuletich via Cuis-dev a
                    écrit :<o:p></o:p></span></p>
              </div>
              <blockquote style="margin-top: 5pt; margin-bottom: 5pt;">
                <p class="MsoNormal"><span style="font-size: 12pt;"><br>
                    I recently replaced the 'Method Source with it' menu
                    option in Smalltalk Editors with the new 'Find with
                    Scope' option by Jon Raiford. I'm sure it is more
                    convenient and useful. Please try it and share your
                    thoughts.
                    <br>
                    <br>
                    I have also been doing other tweaks to improve
                    usability, for instance 'browse package' on all four
                    lists in the Browser, and minor tweaks here and
                    there. Feedback is most welcome as usual.
                    <o:p></o:p></span></p>
              </blockquote>
              <pre>-- <o:p></o:p></pre>
              <pre><a moz-do-not-send="true" href="http://mamot.fr/@drgeo">http://mamot.fr/@drgeo</a><o:p></o:p></pre>
            </div>
          </div>
        </div>
      </div>
    </blockquote>
    <br>
    <br>
    <pre class="moz-signature" cols="72">-- 
Juan Vuletich
cuis.st
github.com/jvuletich
researchgate.net/profile/Juan-Vuletich
independent.academia.edu/JuanVuletich
patents.justia.com/inventor/juan-manuel-vuletich
linkedin.com/in/juan-vuletich-75611b3
twitter.com/JuanVuletich</pre>
  </body>
</html>