Git Product home page Git Product logo

codehelp's People

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar

codehelp's Issues

Explain how CHGroupPanel works

I'm loving this addin but I see there is a plugin for a CHGroupPanel which tabs the tool windows. I cannot seem to make it work though. How do you put them in tabs?

Fix AltGr key being detected as Ctrl key on German keyboards

On German keyboards the Alt Gr key is needed to produce round or curly brackets in combination with the keys 7 to 0. While it technically still works, the current implementation also switches tabs if you have the appropriate number of tabs open. The Alt Gr key is equivalent to pressing both Ctrl and Alt at the same time.

I downloaded the project, changed all the EOL characters from vbLf to vbCrLf, and built all the DLLs. In order to fix the problem I created a new function in MDIMonitor.bas in the CHTabMDI project:

'new function to make things easier
Private Function KeyPressed(ByVal Key As Long) As Boolean
  KeyPressed = CBool((GetAsyncKeyState(Key) And &H8000) = &H8000)
End Function

Afterwards, I simply enhanced the CtrlDown detection by also querying the state of the Alt key:

' This is where we ctrl-switch tabs
Private Sub ICHPlugin_OnKeyHook(bHandled As Boolean, lReturn As Long, wParam As Long, lParam As Long)
    ' Call into VBWinApi to get the control key state
    
'    CtrlDown = GetAsyncKeyState(vbKeyControl)
    'Fix AltGr-Key on German keyboard layout so that only the ctrl keys enable switching tabs
    CtrlDown = KeyPressed(vbKeyControl) And Not KeyPressed(vbKeyMenu)

    If m_CtrlPressed Then
        Select Case wParam
            Case vbKey0 To vbKey9
                Call m_tabManager.ShortcutActivate(wParam)
            
            Case vbKeyReturn
                Call MaximizeCodePane
                
        End Select
    End If
End Sub

Whether you implement the change or not, this way it's documented and easy to fix.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.