Customize Toolbar - New Version 4.1



  • Custom button error on img:
    http://i.shotnes.com/u/2837/0423/screenshot_1419.png
    DSpellCheck removed.
    How to fix it?



  • Hello @Goodie_Slava,

    Did those icons belong to DSpellCheck?
    Did you manually edit CustomizeToolbar.btn? - If you did, remove the references from that file.

    You can also try deleting CustomizeToolbar.btn and CustomizeToolbar.dat (in the Config folder) and restart NPP.

    Best regards.



  • Hello
    How can I create Icons for funtions which there are no icons yet but there is a menu item for it?
    Thanks



  • @MAPJe71

    Thank you for reporting this. I also had same issues and discussed with Dave.
    Apparently the CustomizeToolbar plugin needs all other plugins to be loaded and initialized on start up. Since there is no indication by NPP, an arbitrary waiting time is set then plugin starts. So on slower machines (and with many/ heavy plugins) this time may be insufficient.
    As a workaround, a version with longer waiting time is under test,
    Note, these times are in milliseconds range so it should not “slow down” too much the NPP startup.

    As for DSpellCheck - the relation to this issue is its relatively long overall time to load so any optimization in this regard will help additionally. Already reported on their GitHub

    @dave-user Sorry for bringing this instead of you, I am excited that this annoying thing has a workaround!



  • How to use this plugin to make a button on the toolbar “Document List Panel, Show”
    I only get to bring up the Preferences panel

    Imgur



  • @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.



  • @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


  • @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.



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



  • @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



  • @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.



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



  • @andrecool-68 said:

    I found this solution, and it works

    Also can do it via Pythonscript:

    notepad.showDocSwitcher(boolean)



  • @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).



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



  • @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



  • 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



  • @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?



  • 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.


Log in to reply