Community
    • Login

    Customize Toolbar - New Version 4.1

    Scheduled Pinned Locked Moved Notepad++ & Plugin Development
    45 Posts 19 Posters 60.2k Views
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • dinkumoilD
      dinkumoil @andrecool-68
      last edited by dinkumoil

      @andrecool-68

      I repeat the most important points of Customize Toolbar plugins’s Help - Custom Buttons and add number 6. based on my experience:

      1. Custom buttons are defined using a configuration file (CustomizeToolbar.btn) located in the Notepad++ configuration sub-folder (…\plugins\config).

      2. The .btn configuration file must employ Unicode UTF-16 Little Endian encoding, with optional Byte Order Mark (BOM) at start of file, and CR-LF line breaks.
        When creating this file with Notepad++, set Encoding to UCS-2 Little Endian.

      3. Each definition in the configuration file comprises five comma-separated fields (four menu strings and an optional .bmp icon file name).

      4. If the .bmp icon file name is present, the icon file must be located in the Notepad++ configuration sub-folder (…\plugins\config).

      5. Each .bmp icon file must be an image of 16x16 pixels with a bit depth of 8-bits. Any pixels with the same colour as the bottom left pixel will appear transparent.

      6. You have to localize the menu entries used in the configuration file.

      When the Custom Buttons feature is enabled and the .btn configuration file doesn’t exist it is created and contains examples of custom button definitions. These are the examples:

      Edit,Select All,,,custom-icon-1.bmp
      Plugins,Compare,Compare,,custom-icon-2.bmp
      

      Since my Notepad++ locale is german I had to change it to:

      Bearbeiten,Alles auswählen,,,custom-icon-1.bmp
      Erweiterungen,Compare,Compare,,custom-icon-2.bmp
      

      To please requirement 5. - the 8-bit BMP format of the icons - convert an ICO/PNG/what-ever-file to BMP (usually you’ll get a 24-bit BMP) and convert that to 8-bit BMP using plain old vanilla MS Paint (select 256 colors Bitmap file type).

      But finally I gave up to use custom icons because the Customize Toolbar plugin works not very reliable in that point, sometimes it works and sometimes not.

      andrecool-68A 1 Reply Last reply Reply Quote 2
      • andrecool-68A
        andrecool-68 @dinkumoil
        last edited by

        @dinkumoil
        I have three buttons, two of them work:

        Plugins,Visual Studio Line Copy,CopyAllowLine,,custom-icon-1.bmp
        Plugins,Visual Studio Line Copy,CutAllowLine,,custom-icon-1.bmp
        

        And one button does not work:

        Settings,Preferences...,General,Document List Panel,Show,,custom-icon-1.bmp
        
        1 Reply Last reply Reply Quote 0
        • Meta ChuhM
          Meta Chuh moderator @andrecool-68
          last edited by Meta Chuh

          @andrecool-68

          i don’t think you can toggle doc switcher with the customize toolbar plugin.
          only menu items can be selected, but not items in a settings window.

          it would be cool though, to show/hide doc switcher quicker than to go to the settings every time.

          andrecool-68A 2 Replies Last reply Reply Quote 3
          • andrecool-68A
            andrecool-68 @Meta Chuh
            last edited by

            @Meta-Chuh Of course it would be more convenient, this option should also be present in the “view menu”

            1 Reply Last reply Reply Quote 1
            • andrecool-68A
              andrecool-68 @Meta Chuh
              last edited by

              @Meta-Chuh
              I found this solution, and it works … but as always I want to simplify the solution … and not complicate it))
              https://github.com/notepad-plus-plus/notepad-plus-plus/issues/3526#issuecomment-355098777

              dinkumoilD Alan KilbornA 2 Replies Last reply Reply Quote 1
              • dinkumoilD
                dinkumoil @andrecool-68
                last edited by

                @andrecool-68

                @Meta-Chuh said:

                only menu items can be selected, but not items in a settings window.

                That’s exactly the meaning of point 3. in my list above:

                four menu strings and an optional .bmp icon file name

                Please note: It says “four menu strings”, so the nesting depth of suitable menu entries can only be 4.

                andrecool-68A 1 Reply Last reply Reply Quote 2
                • andrecool-68A
                  andrecool-68 @dinkumoil
                  last edited by

                  @dinkumoil You mean that I got five lines … and because of this all the problems?

                  dinkumoilD 1 Reply Last reply Reply Quote 0
                  • Alan KilbornA
                    Alan Kilborn @andrecool-68
                    last edited by

                    @andrecool-68 said:

                    I found this solution, and it works

                    Also can do it via Pythonscript:

                    notepad.showDocSwitcher(boolean)

                    andrecool-68A 1 Reply Last reply Reply Quote 2
                    • dinkumoilD
                      dinkumoil @andrecool-68
                      last edited by dinkumoil

                      @andrecool-68 said:

                      @dinkumoil You mean that I got five lines … and because of this all the problems?

                      No, the cause of your problem was that you tried to toggle settings in the preferences dialog. That’s not the intended use case of the Customize Toolbar plugin.

                      Mentioning the 4 menu strings was meant to be as a hint that you maybe should read the specs of the plugin more thoroughly before further experiments.

                      BTW: Your first screenshot concerning the issue showed three hammer icons, the default symbol for not assignable icons (e.g. icon file not found or wrong icon file format).

                      1 Reply Last reply Reply Quote 2
                      • andrecool-68A
                        andrecool-68 @Alan Kilborn
                        last edited by

                        @Alan-Kilborn Why not show how to do it?

                        Alan KilbornA 1 Reply Last reply Reply Quote 0
                        • Alan KilbornA
                          Alan Kilborn @andrecool-68
                          last edited by

                          @andrecool-68

                          Hmmmm…

                          Install Pythonscript plugin
                          Create new script, call it ShowDocSwitcher.py
                          In body of script, put notepad.showDocSwitcher(True)
                          Save script
                          To run script, go to Plugins > Pythonscript > Scripts and select ShowDocSwitcher
                          DOC SWITCHER WINDOW IS SHOWN
                          Optional: Create shortcut or toolbar button for script

                          Create another new script, call it HideDocSwitcher.py
                          In body of script, put notepad.showDocSwitcher(False)
                          Save script
                          To run script, go to Plugins > Pythonscript > Scripts and select HideDocSwitcher
                          DOC SWITCHER WINDOW IS HIDDEN
                          Optional: Create shortcut or toolbar button for script

                          :^P

                          1 Reply Last reply Reply Quote 2
                          • MAPJe71M
                            MAPJe71
                            last edited by MAPJe71

                            I’m using the LuaScript plugin to toggle the Doc Switcher:

                            1. add the following lines to startup.lua:
                            npp.AddShortcut("Toggle Doc Switcher", "", function()
                                npp:ShowDocSwitcher( not npp:IsDocSwitcherShown() )
                            end)
                            
                            1. create a DocSwitcher image (i.e. Toolbar-DocSwitcher.bmp) for the toolbar and put it in the same directory as CustomizeToolbar.btn.
                            2. add the following line to CustomizeToolbar.btn:
                            Plugins,LuaScript,Toggle Doc Switcher,,Toolbar-DocSwitcher.bmp
                            
                            1. restart Notepad++
                            2. show or hide the Doc Switcher by clicking one toolbar button

                            et Voila

                            andrecool-68A 1 Reply Last reply Reply Quote 3
                            • andrecool-68A
                              andrecool-68 @MAPJe71
                              last edited by

                              @MAPJe71 It works!
                              https://github.com/notepad-plus-plus/notepad-plus-plus/issues/3526#issuecomment-355098777
                              But … it should be a standard option in the view menu … or do you disagree?

                              1 Reply Last reply Reply Quote 2
                              • MAPJe71M
                                MAPJe71
                                last edited by

                                OK, the GitHub link @andrecool-68 provided already pointed to a description of how I did it.
                                Did not remember that.
                                What can I say: “Now also available for Notepad++ 64 bit!” :-D

                                @andrecool-68 I agree, same toolbar button functionality as the build-in Function List toolbar button i.e. indicating active/inactive by changing the button background color.

                                1 Reply Last reply Reply Quote 3
                                • First post
                                  Last post
                                The Community of users of the Notepad++ text editor.
                                Powered by NodeBB | Contributors