NSIS Dialog Designer

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts
  • nicorac
    NSIS Dialog Designer Author
    • Apr 2011
    • 71

    NSIS Dialog Designer

    Hello everyone,
    after a lot of manually-designed custom dialogs I realized that we need a tool to make this task easier. This tool should be a graphical dialog designer, like the one in Visual Studio.

    Here we are, NSIS Dialog Designer is almost ready, and I'd like to hear some feedback from you.
    It allows an easier NSIS dialogs design with a modern dockable interface.



    It works like this: custom dialog definition is stored into an XML definition file (*.nsddef), which is the file NSIS Dialog Designer manage.
    When you save the dialog, NSIS Dialog Designer creates another file (*.nsdinc). This file is a NSIS script containing all the commands needed to create the dialog and all of its controls, including support variables.

    For each control you can define name, position and size. You could also link your script functions to control events.

    NSIS Dialog Designer is available here: http://coolsoft.altervista.org/

    I'd like to hear your feedback...
    Author of NSIS Dialog Designer
  • Afrow UK
    Moderator
    • Nov 2002
    • 8434

    #2
    That is very nice! I've stickied the thread. Be cool if you could make a Wiki page for it too.

    Stu

    Comment

    • MSG
      Major Dude
      • Oct 2006
      • 1892

      #3
      Very nice indeed. Could someone port this to a standalone application, please? >__>

      Comment

      • Pawel
        Spectral Moderator
        • Aug 2004
        • 575

        #4
        Yes, indeed. The tool looks very interesting.
        I would like to see there a log field, where user can see in real time compilation progress and eventual errors.
        Also, I hope you add more properties for controls (like for example font colour, font type etc).
        Keep up good work!
        -Pawel
        OFICJALNY POLSKI PAKIET JĘZYKOWY WINAMPA

        Polski Pakiet Językowy Winampa 5.92.0.10042
        (WINAMP 5.92.0.10042)
        Polski Pakiet Językowy Winampa 5.6.6.3516 (WINAMP 5.6.6.3516)

        WINAMP PL | NSIS PL | WINAMP ICON PACKS | WINAMP COLOR THEMES | ULTIMATE FILE MANAGER

        !!! PLEASE DONATE !!!

        Comment

        • nicorac
          NSIS Dialog Designer Author
          • Apr 2011
          • 71

          #5
          Originally Posted by MSG View Post
          Very nice indeed. Could someone port this to a standalone application, please? >__>
          What you mean with "standalone"?
          NSIS Dialog Designer is already a standalone app, less than 1Mb installed.

          Maybe the screenshot is confusing... making you think the IDE has a lot of components.
          Actually you only have a toolbox with controls, a property grid and one or more "documents" with your custom dialogs.
          Author of NSIS Dialog Designer

          Comment

          • nicorac
            NSIS Dialog Designer Author
            • Apr 2011
            • 71

            #6
            Originally Posted by Pawel View Post
            I hope you add more properties for controls (like for example font colour, font type etc)
            Sure, designer code is modular so adding properties is quite easy.
            I referred to this page to add actual properties, and there I can't find a way to set colors.

            Is there some macros to do it?
            Can you please provide a sample script snippet to set font and color?
            Author of NSIS Dialog Designer

            Comment

            • nicorac
              NSIS Dialog Designer Author
              • Apr 2011
              • 71

              #7
              Originally Posted by Pawel View Post
              I would like to see there a log field, where user can see in real time compilation progress
              I'm going to add a (readonly) preview panel where NSIS experienced users can see the generated NSIS script in realtime.
              I thought to split the designer tab vertically: the top part will contain the graphical designer and the bottom will have the generated script.

              What about it?
              Author of NSIS Dialog Designer

              Comment

              • Pawel
                Spectral Moderator
                • Aug 2004
                • 575

                #8
                Originally Posted by nicorac View Post
                Can you please provide a sample script snippet to set font and color?
                For example:
                ; Some text control
                ${NSD_CreateLabel} 120u 8u 203u 30u "Text to display"
                ; Set variable for control
                Pop $My_Control_Variable
                ; Set example styles
                ${NSD_AddStyle} $My_Control_Variable ${WS_VISIBLE}|${WS_CHILD}|${WS_CLIPSIBLINGS}|${SS_CENTER}

                ; Create font (http://msdn.microsoft.com/en-us/libr...(v=vs.85).aspx)
                CreateFont $My_Control_Variable_Font "TAHOMA" "12" "700"
                SendMessage $My_Control_Variable ${WM_SETFONT} $My_Control_Variable_Font 0
                ; Set colours for control (Hwnd, font colour, background colour)
                SetCtlColors $My_Control_Variable "0x000000" "Transparent"

                -Pawel
                OFICJALNY POLSKI PAKIET JĘZYKOWY WINAMPA

                Polski Pakiet Językowy Winampa 5.92.0.10042
                (WINAMP 5.92.0.10042)
                Polski Pakiet Językowy Winampa 5.6.6.3516 (WINAMP 5.6.6.3516)

                WINAMP PL | NSIS PL | WINAMP ICON PACKS | WINAMP COLOR THEMES | ULTIMATE FILE MANAGER

                !!! PLEASE DONATE !!!

                Comment

                • Pawel
                  Spectral Moderator
                  • Aug 2004
                  • 575

                  #9
                  Yeah, that is a good idea...
                  I would like to see GUI designer in main part of window and a source code generated in real time in bottom part of window.
                  Is it possible user can also edit it in real time (I know that would need a lot work...)?

                  About compilation preview.. Yeah, that in my opinion should be read only and maybe optional. I like to see what is happening...
                  -Pawel
                  OFICJALNY POLSKI PAKIET JĘZYKOWY WINAMPA

                  Polski Pakiet Językowy Winampa 5.92.0.10042
                  (WINAMP 5.92.0.10042)
                  Polski Pakiet Językowy Winampa 5.6.6.3516 (WINAMP 5.6.6.3516)

                  WINAMP PL | NSIS PL | WINAMP ICON PACKS | WINAMP COLOR THEMES | ULTIMATE FILE MANAGER

                  !!! PLEASE DONATE !!!

                  Comment

                  • nicorac
                    NSIS Dialog Designer Author
                    • Apr 2011
                    • 71

                    #10
                    Version 0.9.1 was released:
                    - New dockable content with realtime NSIS generated script preview

                    Script preview is readonly; its purpose is to allow advanced users to understand what's being generated.
                    Author of NSIS Dialog Designer

                    Comment

                    • jiake
                      Senior Member
                      • Oct 2007
                      • 207

                      #11
                      1. Most users prefer using dialog unit to pixel, so I think the software should use dialog unit, or you may add an option for user.
                      2. It will be better if it supports multi-language.
                      Contact me: [email protected]

                      Comment

                      • MSG
                        Major Dude
                        • Oct 2006
                        • 1892

                        #12
                        Originally Posted by nicorac View Post
                        What you mean with "standalone"?
                        NSIS Dialog Designer is already a standalone app, less than 1Mb installed.
                        I meant something that doesn't require .NET (or other frameworks, like Java). I don't install these things on my systems. Still I'd really like to be able to use this tool, nsDialogs page design takes a lot of time to do manually. :-(

                        Comment

                        • T.Slappy
                          Major Dude
                          • Jan 2006
                          • 571

                          #13
                          Editor looks fantastic!!!
                          The very first look gave me these ideas:
                          - add some grid (dotted grid) to main area for better navigation like other IDEs have (+ possibility to turn it on/off) or some kind of ruler
                          - give some option to choose pixels/units
                          - name your tool NSIS nsDialogs Editor to be clear that these pages will not work with those deprecated ini files
                          - add Name into Properties window, all IDEs use the same principe (I suppose you generate name of variable/control as some creepy _fdfjdfjsdh_Label1 which looks terrible)

                          I am downloading and starting to play with it, great work!

                          Edit:
                          I started creating my own form:
                          - add possibility to generate method name automatically by doubleclick based on controls' name (with Name above)
                          Example: I have button called Button1
                          When I double-click in Properties pane into onClick field I expect that method Button1_Click will be generated automatically like Delphi IDE and also appropriate block in script:
                          PHP Code:
                          Function Button1_Click
                          Add your code here
                          FunctionEnd 
                          For multiple forms there could be some identifier added:
                          Form1_Button1_Click or Form1_Edit1_Change etc.
                          If I want to name my method manually the I need to write it into box (like now)...
                          Cool looking installers with custom design: www.graphical-installer.com
                          Create Setup Pages easily: www.install-designer.com
                          Build installers in Visual Studio 2005-2022: www.visual-installer.com
                          or RAD Studio 2009 - 11 Alexandria: www.rad-installer.com

                          Comment

                          • nicorac
                            NSIS Dialog Designer Author
                            • Apr 2011
                            • 71

                            #14
                            Thank you all for thanks and feedbacks!

                            Originally Posted by jiake View Post
                            1. Most users prefer using dialog unit to pixel
                            Added to TODO list

                            Originally Posted by jiake View Post
                            2. It will be better if it supports multi-language.
                            What you mean with multi-language? NSIS Dialog Designer interface or the generated dialogs? If the latter, well, I think you can put variables into control text value, but I'm not so experienced in multilanguage setup scripts...
                            Can you please provide a code snippet for a multi-language control?

                            Originally Posted by MSG View Post
                            I meant something that doesn't require .NET (or other frameworks, like Java)
                            You're right, I thought the same till WinXP.
                            But Vista and 7 comes with .NET integrated, so for these users there's no requirements at all . .NET software development is really fast and safe, (I'm an old time C++ dev)

                            Originally Posted by T.Slappy View Post
                            add some grid (dotted grid) to main area for better navigation like other IDEs have (+ possibility to turn it on/off) or some kind of ruler
                            Added to TODO list

                            Originally Posted by T.Slappy View Post
                            name your tool NSIS nsDialogs Editor to be clear that these pages will not work with those deprecated ini files
                            "Dialog" is a generic word that includes nsDialogs
                            I'm thinking about import support for old INI file styles...

                            Originally Posted by T.Slappy View Post
                            add Name into Properties window
                            Name is already there, I'm investigating why it does not appear
                            Author of NSIS Dialog Designer

                            Comment

                            • Afrow UK
                              Moderator
                              • Nov 2002
                              • 8434

                              #15
                              Originally Posted by MSG View Post
                              I meant something that doesn't require .NET (or other frameworks, like Java). I don't install these things on my systems. Still I'd really like to be able to use this tool, nsDialogs page design takes a lot of time to do manually. :-(
                              .NET/Java makes programming tools like this much faster. Why would you not install them? Lack of disk space ? To port this to native C/C++ would be a lot of work and is probably why a tool such as this has not been written already. I know if I had the choice I would go with .NET every time.

                              Stu

                              Comment

                              Working...
                              X