Menu

#1353 TAB key put back to switching windows

Initial
closed
nobody
5
2020-05-13
2020-05-12
Iain Clarke
No

I have two changes I thinking of making, which are related for my use case of embedding a readonly scintilla control in a dialog, as a syntax highlighting static control.

The first is getting the Tab key back to switching between controls.

I can see two ways of doing it - the first is a SCI_SETTABTONAVIGATION, bool function, but that seems a bit kludgy.

The second would be a new internal action, so you could do:
SendMessage (SCI_ASSIGNCMDKEY, SCK_TAB, SCI_DIALOGNAVIGATEFORWARD);
SendMessage (SCI_ASSIGNCMDKEY, SCK_TAB | SCI_SHIFT<<16, SCI_DIALOGNAVIGATEBACKWARDS);

The second would be my preference.

I am happy / competent (I think) to do this - this is a which is the preferred method, and am I missing something question.

Related

Feature Requests: #1353

Discussion

  • Neil Hodgson

    Neil Hodgson - 2020-05-12

    In SciTE, the instance of Scintilla in About SciTE can be tabbed from and to. I can't recall all the elements that go into this but start with the WS_TABSTOP window style bit.

     
    • Iain Clarke

      Iain Clarke - 2020-05-13

      CWnd* pChild = new CWnd;
      if (!pChild->Create(L"Scintilla", L"", WS_CHILD | WS_TABSTOP | WS_VISIBLE | WS_BORDER, CRect(40, 10, 30, 30), pParentWnd, 100))
      {
      delete pChild;
      return nullptr;
      }
      pChild->SendMessage(SCI_CLEARCMDKEY, SCK_TAB);

      I already had WS_TABSTOP set, and it's not tabbing out regardless of whether I have cleared SCK_TAB or not. But I shall dig into SciTE and see what "magic" I have missed.

      /Iain.

      From: Neil Hodgson [mailto:nyamatongwe@users.sourceforge.net]
      Sent: 13 May 2020 00:14
      To: [scintilla:feature-requests] 1353@feature-requests.scintilla.p.re.sourceforge.net
      Subject: [scintilla:feature-requests] #1353 TAB key put back to switching windows

      In SciTE, the instance of Scintilla in About SciTE can be tabbed from and to. I can't recall all the elements that go into this but start with the WS_TABSTOP window style bit.


      [feature-requests:#1353]https://sourceforge.net/p/scintilla/feature-requests/1353/ TAB key put back to switching windows

      Status: open
      Group: Initial
      Created: Tue May 12, 2020 11:07 AM UTC by Iain Clarke
      Last Updated: Tue May 12, 2020 11:07 AM UTC
      Owner: nobody

      I have two changes I thinking of making, which are related for my use case of embedding a readonly scintilla control in a dialog, as a syntax highlighting static control.

      The first is getting the Tab key back to switching between controls.

      I can see two ways of doing it - the first is a SCI_SETTABTONAVIGATION, bool function, but that seems a bit kludgy.

      The second would be a new internal action, so you could do:
      SendMessage (SCI_ASSIGNCMDKEY, SCK_TAB, SCI_DIALOGNAVIGATEFORWARD);
      SendMessage (SCI_ASSIGNCMDKEY, SCK_TAB | SCI_SHIFT<<16, SCI_DIALOGNAVIGATEBACKWARDS);

      The second would be my preference.

      I am happy / competent (I think) to do this - this is a which is the preferred method, and am I missing something question.


      Sent from sourceforge.net because you indicated interest in https://sourceforge.net/p/scintilla/feature-requests/1353/

      To unsubscribe from further messages, please visit https://sourceforge.net/auth/subscriptions/

       

      Related

      Feature Requests: #1353

    • Iain Clarke

      Iain Clarke - 2020-05-13

      I found the code that makes it work for SciTE:
      LRESULT CALLBACK CreditsWndProc(HWND hwnd, UINT uMsg, WPARAM wParam, LPARAM lParam) {
      if (uMsg == WM_GETDLGCODE)
      return DLGC_STATIC | DLGC_WANTARROWS | DLGC_WANTCHARS;
      This only allows characters and arrow keys in to the scintilla control in the first place.

      This may be fiddly for me to implement, but fiddly is fine. This feature request can be closed as "shoo!".

      Regards,

      Iain.

      From: Neil Hodgson [mailto:nyamatongwe@users.sourceforge.net]
      Sent: 13 May 2020 00:14
      To: [scintilla:feature-requests] 1353@feature-requests.scintilla.p.re.sourceforge.net
      Subject: [scintilla:feature-requests] #1353 TAB key put back to switching windows

      In SciTE, the instance of Scintilla in About SciTE can be tabbed from and to. I can't recall all the elements that go into this but start with the WS_TABSTOP window style bit.


      [feature-requests:#1353]https://sourceforge.net/p/scintilla/feature-requests/1353/ TAB key put back to switching windows

      Status: open
      Group: Initial
      Created: Tue May 12, 2020 11:07 AM UTC by Iain Clarke
      Last Updated: Tue May 12, 2020 11:07 AM UTC
      Owner: nobody

      I have two changes I thinking of making, which are related for my use case of embedding a readonly scintilla control in a dialog, as a syntax highlighting static control.

      The first is getting the Tab key back to switching between controls.

      I can see two ways of doing it - the first is a SCI_SETTABTONAVIGATION, bool function, but that seems a bit kludgy.

      The second would be a new internal action, so you could do:
      SendMessage (SCI_ASSIGNCMDKEY, SCK_TAB, SCI_DIALOGNAVIGATEFORWARD);
      SendMessage (SCI_ASSIGNCMDKEY, SCK_TAB | SCI_SHIFT<<16, SCI_DIALOGNAVIGATEBACKWARDS);

      The second would be my preference.

      I am happy / competent (I think) to do this - this is a which is the preferred method, and am I missing something question.


      Sent from sourceforge.net because you indicated interest in https://sourceforge.net/p/scintilla/feature-requests/1353/

      To unsubscribe from further messages, please visit https://sourceforge.net/auth/subscriptions/

       

      Related

      Feature Requests: #1353

  • Neil Hodgson

    Neil Hodgson - 2020-05-13
    • labels: --> scintilla, win32, dialog
    • status: open --> closed
     
  • Neil Hodgson

    Neil Hodgson - 2020-05-13

    Closing as user resolved their issue.

     

Log in to post a comment.

MongoDB Logo MongoDB