Menu

visual rc editor for dev-cpp

2004-07-07
2012-09-26
1 2 > >> (Page 1 of 2)
  • Marek Januszewski

    once again I'm thinking about integrating visual rc editor with dev-cpp. The best one I've seen seems to be this one: http://radasm.visualassembler.com/ Resed. There's no license on this software - it's freeware with source available. Please let me know if you know of a better software (license must be compatible with dev-cpp).

    Integration would be kind of a plugin like: on startup dev-cpp loads a dll (some plugin standard) which loads and creates an invisible window of resed. Then if a person requests to see the rc file instead of opening it in editor, a message is sent to resed window to open the file and to make window visible. There should be some way to see the rc as text. after the user is done editing the window would be made invisible again, and unloaded on dev-cpp exit. The plugin dll would have to be able to assign keys to do some actions, and to be associated with file extensions. That way if at some point we're going to find software to be used as a plugin for .xrc files, it could be used in the same manner for developing xwidgets apps.

    Any thoughts on this? Does anyone has any experience with plugins and their structures?

     
    • Marek Januszewski

      some of my comments to resed itself are here: http://www.visualassembler.com/forum/viewtopic.php?p=702#702

       
    • Guru Kathiresan

      Guru Kathiresan - 2004-07-20

      Take a look at my wxWidgets designer at

      http://wxdsgn.sourceforge.net/

      i was able to add the form designer into dev-cpp within couple of weeks work.

      -Guru

       
      • Marek Januszewski

        what is the plan regarding wxdevcpp?

         
      • Marek Januszewski

        also please provide the source somehow - either snapshot or cvs access. I see that you've moved to sf.net and deleted the sources from the old site.

         
    • Guru Kathiresan

      Guru Kathiresan - 2004-07-21

      Lot of cool things have happened to wxdevcpp. I have give the list of improvements in the site
      http://wxdsgn.sourceforge.net/  , please have a look at them. The most notable addition is the support for Sizers, full intellisense support for all wxclasses . Most of the Wx Community uses sizers for layout management, so, I guess wxdevcpp is a clear winner :o)

      As per your request, I have uploaded the source to

      http://wxdsgn.sourceforge.net/wxdevcpp_src__july_21_2004.zip

      -Guru

       
    • boguslaw brandys

      Guru,

      Maybe start  CVS support for wxdsgn ? What do You think about ?

      Bogusław

       
      • Guru Kathiresan

        Guru Kathiresan - 2004-07-27

        Hi,
        Colin is very much interested in integrating the wx designer with the main dev-cpp codebase, so I'm currently merging the code to the dev-cpp CVS content. when I finish merging, I guess , you can access my code through normal dev-cpp CVS :o)

        -Guru

         
        • Marek Januszewski

          I have couple of concerns regarding this wxdev-cpp: first is the mess - installing jcl and jvcl is going to cause a mess and on top of it we're not going to use 80%.
          I've also tried to develop something in wxdev-cpp and it's very unstable - it crashes a lot.
          Also a lot of components used in wxdev-cpp I think is not GPL compatible: mainly extlib and the component for catching application exceptions. Please correct me if I'm wrong.

           
          • Guru Kathiresan

            Guru Kathiresan - 2004-07-27

            Hi,
            I'll try to clarify some of the issues

            >installing jcl and jvcl is going to cause a mess and on top of it we're not going to use 80%.

            In the merge submitted today, you dont have to install jvcl/jcl(into delphi IDE) to get the wx-devcpp build from the IDE.

            >I've also tried to develop something in wxdev-cpp and it's very unstable - it crashes a lot.
            I'm not sure which version you are using, the latest build beta 5 works without any hitch. The first 2 betas has this crash because I was incorrectly using the designer form after it is destroyed.

            >Also a lot of components used in wxdev-cpp
            >I think is not GPL compatible:

            We are building dev-cpp with VCL and do you think VCL is GPL compatible ? If you want everything to be GPL compatible then you **should** use Freepascal.

            I'm just using certain libs that has no restrictions. Just because we develop GPL software doesnt mean every piece of code should be GPL.

            >mainly extlib and
            extlib in the current form has no license and has been used in lot of opensource GPL project (I guess resbuilder uses it).

            >the component for catching application exceptions.
            >Please correct me if I'm wrong.

            You are  correct, i'm using a commercial program (with my licensed copy). I have removed the dependency with the current merge.

            please check the recently merged code
            http://wxdsgn.sourceforge.net/wxdevcpp_completely_merged_code_july_27_2004.zip

            Make sure you use wx_build in the defines to build the  wxdevcpp

            once colin approved this, it will be updated to the main CVS trunk.

            -Guru

             
            • Marek Januszewski

              Hi,

              I was using the version using the version that was there on july 21. Anyway this is not a problem - dev-c++ is pretty unstable too, so nothing is perfect or unfixable.

              With VCL I think the point with Delphi personal edition you are only allowed to build free software, so I guess  VCL that comes with Delphi personal is GPL compatible - I'm not sure about that. I tried to use the newest Lazarus just yesterday - I gave up after 2 hours - transition from Delphi is rather hard.

              > I'm just using certain libs that has no restrictions. Just because we develop GPL software doesnt mean every piece of code should be GPL.

              Agreed.

              > >mainly extlib and
              > extlib in the current form has no license and has been used in lot of opensource GPL project (I guess resbuilder uses it).

              Perfect - just asking. Same with Resed - no license at all.

              > You are correct, i'm using a commercial program (with my licensed copy). I have removed the dependency with the current merge.

              I forgot what is the name of that component?

              > please check the recently merged code
              > http://wxdsgn.sourceforge.net/wxdevcpp_completely_merged_code_july_27_2004.zip

              Right now I don't have much time to develop dev-c++, but I will definitely check it out once I have some spare time. I was also planning to replace synedit with scintilla - it's much better editor plus code completion is much more advanced. Have you considered it?

              > once colin approved this, it will be updated to the main CVS trunk.

              conditional defines is a perfect solution. Are you planning to get this code into Dev-c++ before or after  version 5 final?

              Thanks,
              Marek

               
              • Guru Kathiresan

                Guru Kathiresan - 2004-07-28

                Hi,

                >I was using the version using the version that was
                >there on july 21.
                I guess I fixed a problem that caused a constant crash on 20th. It seems what ever issues you have is entirely
                different. Can you please send me the steps to reproduce that ? I can have a look at it.

                >Perfect - just asking. Same with Resed - no license at all.
                Whats the URL for that ?

                >I forgot what is the name of that component?
                Its called madexcept. Even this one is free for opensource and freeware programs.

                >I was also planning to replace synedit with scintilla -
                >it's much better editor plus code completion is much more
                >advanced. Have you considered it?
                I havent checked it yet. I'll check it once I get some time.

                >Are you planning to get this code into Dev-c++ before
                >or after version 5 final?
                I guess the plan is to get the designer code into the current CVS, so you can see the designer in the 5.0 final release :o)

                Please dont forget to send your bug report and the steps to repoduce the crash.

                -regards,
                Guru

                 
                • Marek Januszewski

                  Resed - I mentioned it in the first posting of this thread here: https://sourceforge.net/forum/message.php?msg_id=2653046

                  Scintilla is being used by many programs, among others anjuta and mingw studio. It's really great - has for example code folding that many people requested. Delphi  wrapper is here: http://www.pnotepad.org/scintilla/
                  Also code completion needs files that are created by ctags and then processed by another script, so it's tricky but definitely worth looking at.

                  I saw madexcept sometime ago. Someone reported that it would catch more exceptions than current code in dev-c++ which is possible. I hate those free for non commercial use licenses and I hate to read licenses. You never know when your software is already illegal and when it is still legal. :)

                  Marek

                   
                  • Guru Kathiresan

                    Guru Kathiresan - 2004-07-28

                    Hi,
                    Since the name resed was not mentioned , I thought you are mentioning another program.
                    Regarding resed: This program is freakin written in Assembly !!! I guess this author must be retarted :o).
                    I'm not sure you can include this with dev-cpp.

                    The project I was mentioning is resbuilder, check :

                    http://sourceforge.net/projects/resbuilder

                    This project is written in Delphi, so the port should be fairly easy.

                    reg Madexcept: if you just stick to a version that gives the freedon to be used with free software, we wont have any problem. Apart from that, not all the developer need to have madExcept installed. may be the guy who is going to build the final release can have it.

                    Some years back, I have tried pn's scintilla component, but I was not very comfortable with it. I'll try to create some test build based on the scintilla in my spare time.

                    -Guru

                     
                    • Marek Januszewski

                      A lot of people think of us pascal programmers the same. When I started programming on amiga, assembly was the perfect for me. I regret that I learned pascal instead of some c/c++ - almost everything is written in it.

                      I don't see the problem with resed being written in assembly. Why would it be a problem to integrate? it could be made as dll or even dev-c++ could send messages to resed window (that way we wouldn't have to alter a single thing in resed and upgrade would be just downloading a new .exe)

                      Scintilla is written in c. PN just wrote the wrapper for the dll. Scintilla is used in many projects: http://scintilla.sourceforge.net/ScintillaRelated.html and that's another plus over synedit. I'm just not sure if there's an easy replacement for syendit's capabilty of exporting to html and rtf, and printing the code.

                       
                      • Guru Kathiresan

                        Guru Kathiresan - 2004-07-28

                        Hi,
                        I'm not sure why you are involved in dev-cpp, but my intension of contributing to this project is to make dev-cpp as a better wx IDE and to work with a  wxWidgets based IDE for my current C++ projects. I havent joined to just work on another delphi project, so i just want to make certain things work quickly.

                        Although you may have experience creating dll + exe with Asembly, I'm not here to do things in hard way. I'm sure you can create a dll from the resed asm code and then create a way to integrate it to dev-cpp, but does it worth the time spent on it ? Certainly not for me, when I have a component like extlib why I should worry wasting time on this ? May be hacking the resbuilder code would produce a much native solution in delphi.

                        I'm too spoiled with Delphi :o)

                        Please understand, I'm not trying to belittle you, I'm trying to fix things faster and make things work, but your interest is much different from mine.

                        It seems the current pn's component is unusable because it is still using scintilla 1.56 dll. Current Scintilla release has removed the scintilla.dll and created scintLexer.dll(something like that), so I'm not able to find scintilla.dll to make the component work. If you have any info about the latest scintilla component or the scintilla.dll , please let me know.

                        -regards,
                        Guru

                         
                        • Marek Januszewski

                          the dll download instructions are here: http://scintilla.sourceforge.net/ScintillaDownload.html . You're going to have to rename the name of the dll in the delphi code of the wrapper and that's it.

                          To make code completion work you're also going to need api files. Example program is here: http://amip.tools-for.net/SciTE-CVS.exe . Api files have to be created this way: http://www.scintilla.org/SciTEDoc.html under "Creating API files"
                          anjuta project has alread a static lib called tagmanager - which is exactly what we need. Except they use glib.

                           
                          • Guru Kathiresan

                            Guru Kathiresan - 2004-07-28

                            I just renamed the sciLexer to scintilla.dll , but none seems to work. I guess the original author has to fix this issue.

                            -Guru

                             
                            • Marek Januszewski

                              I renamed scintilla.dll to sciLexer.dll IN THE DELPHI CODE not on local system. Anyway it works perfectly fine here.

                               
                            • Marek Januszewski

                              I'm trying to install the source code you provided (the one from 07/21). it seems to still require jvcl (which is ok - just wanted to make sure). Also does it require GExperts for DbugIntf.pas? Also ThemeManager doesn't seem to work on Delphi Personal 6 - is this correct?

                               
                              • Guru Kathiresan

                                Guru Kathiresan - 2004-07-29

                                Hi,
                                You can remove the GExpert unit and comment out the senddebug function. If Thememanager doesnt work with d6 personal, please ignore the component and proceed compiling the code, it should work.
                                Please check
                                http://wxdsgn.sourceforge.net/wxdevcpp_completely_merged_code_july_27_2004.zip
                                to get the latest code. This contains lots of bug fixes.

                                ps: Just by renaming the scintilla dll doeesnt work for me, can you please send me the component with the renamed dll file that worked for you ?

                                -regards,
                                Guru

                                 
                                • Marek Januszewski

                                  Here's step by step what I do:
                                  1) download http://prdownloads.sourceforge.net/scintilla/wscite161.zip?download
                                  2) unpack
                                  3) copy SciLexer.dll from the zip file to c:\winnt\system32
                                  this is for design time only - in runtime the dll needs to be in the same directory as .exe or in the path (of course same with design time, but the above is simpler)
                                  4) download http://www.pnotepad.org/files/scintilla_pascal.zip
                                  5) unpack
                                  6) open Scintilla_d6.dpk with delphi 6, or Scintilla_d7.dpk with delphi 7 - depending what you're using. I tried with 6 personal and enterprise - both work fine.
                                  7) double click on SciLexer.pas, go to line 3895 and rename scintilla.dll to SciLexer.dll. The one I just download has this already renamed.
                                  8) optionally rename it also in lines 2898 and 2900 of SciLexer.pas
                                  9) go back to package window and click install.

                                  10) if you don't have jvcl like I, readme says:
                                  "remove the EdOptionsWin.pas and SciLexerDlg.pas files from the package and modify SciLexerReg.pas accordingly."
                                  Actually it's "SciLexerOptionsDlg.pas" other than that it works fine.
                                  Remove ",  JvCoreD6R,  JvSystemD6R,  JvStdCtrlsD6R"  from Scintilla_d6.dpk from requires section and EdOptionsWin and SciLexerOptionsDlg from contains section, "EdOptionsWin, SciLexerOptionsDlg, " from uses section of SciLexerReg.pas, "TScintillaOptionsDlg, " from RegisterComponents in procedure Register, comment out the whole inside of TScintillaComponentEditor.ExecuteVerb procedure, and the whole inside of the TSciKeyCommandsPropertyEditor.Edit procedure

                                  11) It should now install and display success message
                                  12) create a new app and place scintilla component on your form. If you don't have SciLexer.dll in path it will give you an error (do point 3) )
                                  13) in project options in search path - put the path of the scintill_pascal you unpacked in point 5)

                                  code folding is off by default - change to on, set the highlither to cpp and that's it.

                                   
                • Michal Molhanec

                  Michal Molhanec - 2004-07-28

                  madexcept isn't free for opensource, only for non-commercial use, which IMHO means that it can be part of GPL product as GPL allows you to create commercial versions

                  scintilla is nice, it allows to use non monospace fonts and even to use different fonts for highlighting

                   
                  • Marek Januszewski

                    > madexcept isn't free for opensource, only for non-commercial use, which IMHO means that it can be part of GPL product as GPL allows you to create commercial versions

                    I think so too. But it would not hurt to ask the author if we decided to use it. That way we're sure we're legal. I'd hate read another 10 pages of some stupid licenses.

                    > scintilla is nice, it allows to use non monospace fonts and even to use different fonts for highlighting

                    IMHO it makes anjuta editor and code completion much better than konqueror. ctags also parses #ifdefs and (I think) namespaces - which a lot of people requested. it's also A LOT faster cpp code parser. so...

                     
    • boguslaw brandys

      Marek,

      Please explain in detail how parser,code completion ,tooltips will work under Scintilla ? I mean what about project own headers ? Will they be parsed or no ? Do You have any library (dll) for this (using external ctags would be horrible)
      Could You tell what is wrong with current parser and what are the benefits of using Scintilla, and what will change.

       
1 2 > >> (Page 1 of 2)

Log in to post a comment.

Want the latest updates on software, tech news, and AI?
Get latest updates about software, tech news, and AI from SourceForge directly in your inbox once a month.