Results 1 to 20 of 115

Thread: QIde, a new IDE for Qt4

Hybrid View

Previous Post Previous Post   Next Post Next Post
  1. #1
    Join Date
    May 2006
    Posts
    788
    Thanks
    49
    Thanked 48 Times in 46 Posts
    Qt products
    Qt4
    Platforms
    MacOS X Unix/X11 Windows

    Default Re: QIde, a new IDE for Qt4

    Quote Originally Posted by jlbrd
    Q
    QIDe is new but really functional. Test it if you want !

    Available on http://qide.free.fr/index_en.html

    Thanks
    Why if i add a drag list of file only one open? (line 35 code down)

    Your method is ....
    Editeur * ouvrirFichier(QStringList listeEmplacements, int numLigne=-1, bool modeSilencieux=false);



    Qt Code:
    1. /* main.cpp */
    2. bool is_file(QString fullFileName)
    3. {
    4. QFile f( fullFileName );
    5. if ( f.exists() ) {
    6. return true;
    7. } else {
    8. return false;
    9. }
    10. }
    11. //
    12. int main(int argc, char *argv[])
    13. {
    14. QApplication app(argc, argv);
    15. for ( int i = 1; i < app.argc(); ++i )
    16. {
    17. QString yourfilemaybe = app.argv()[ i ];
    18. if (is_file(yourfilemaybe)) {
    19. list.append(yourfilemaybe);
    20. }
    21.  
    22. }
    23. QSplashScreen *splash = new QSplashScreen(QPixmap(":/divers/images/SplashQIde.png"));
    24. splash->show();
    25. QTranslator translator;
    26. QString fichierTraduction = ":/traductions/traductions/QIde_"+QLocale::languageToString( QLocale::system().language() )+".qm";
    27. translator.load( fichierTraduction );
    28. app.installTranslator( &translator );
    29. //
    30. MainImpl *main = new MainImpl;
    31. main->setGeometry(50,50, 800, 550);
    32. /* list of file */
    33. if (list.size() > 0) {
    34. main->ouvrirFichier(list);
    35. }
    36. /* list of file */
    37. main->showMaximized();
    38. //
    39. delete splash;
    40. main->controleEnvironnement();
    41. main->lectureINI();
    42. app.connect( &app, SIGNAL( lastWindowClosed() ), &app, SLOT( quit() ) );
    43. return app.exec();
    44. }
    To copy to clipboard, switch view to plain text mode 

  2. #2
    Join Date
    Jan 2006
    Posts
    156
    Thanked 12 Times in 12 Posts
    Qt products
    Qt3 Qt4
    Platforms
    Unix/X11 Windows

    Default Re: QIde, a new IDE for Qt4

    Hi,
    On Editeur * ouvrirFichier(QStringList listeEmplacements, int numLigne=-1, bool modeSilencieux=false);
    listeEmplacements is a list of location for ONE file and open the first good location on the list.
    I don't know why do you want open files on main function because QIde save all opens file on file settings. This files are open when QIde starts.
    But if you want replace
    Qt Code:
    1. #
    2. /* list of file */
    3. #
    4. if (list.size() > 0) {
    5. #
    6. main->ouvrirFichier(list);
    7. #
    8. }
    9. #
    10. /* list of file */
    11. #
    To copy to clipboard, switch view to plain text mode 
    by
    Qt Code:
    1. #
    2. /* list of file */
    3. #
    4. foreach(QString name, list) {
    5. #
    6. main->ouvrirFichier(name);
    7. #
    8. }
    9. #
    10. /* list of file */
    11. #
    To copy to clipboard, switch view to plain text mode 

  3. #3
    Join Date
    Jan 2006
    Posts
    371
    Thanks
    14
    Thanked 18 Times in 17 Posts
    Qt products
    Qt4
    Platforms
    Unix/X11 Windows

    Default Re: QIde, a new IDE for Qt4

    Hi,

    I am very happy to see the fast releases of this application, I am also happy to see many improovements.

    The search looks better, more intuetive.

    The shortcurs issue:
    The Shift+F12 looks much better now. The issue with shift+f5 and f6 is like this:
    I hate running applications under gdb, as they take a long time to load. This is why I run them usually without gdb. I would like a single button - F6. Stopping a debug session, is not something I normally do, as one should let the applications end normally - a double key hosrtcut is OK there. (IMHO).

    Another regression is the way you handle the resizement of the line numbers widget: you resize it as it gets displayed on screen. This is bad, because the size of that widget gets changed while you scroll - a passive command. This leads to the text moving to the left or right when you scroll and confuses you when looking for problems in your code. Also look at the locations in which the "stop" marks are been put now.

    The deal with the escape, turned out bad. Now when you press "F10" you cannot abort the messing with menus, at least on win32. Can anyone confirm this for X11? The intentions are good, but a better implementation is bad, maybe you should ovveride the keypress event of the main window instead of using a QAction on the main window?

    I have been using the application for a few days, and I am quite impressed about this application. I decided to make a new project and look how it behaves:

    I added a new source "main.cpp", and then "Would you like to add also an head file?" now thanks, not this time. Then I added another source "mainwindow.cpp", this time I added also the heder as well. I also added a bunch of existing source with a single opendialog, it worked and all files were put in the correct group. Way cool.

    I wrote the code, and started compiling and it faild due compilation problems. I could click the error, and the correct source (and line) were selected. Cool. Then it failed due linking. I needed to add the XML module to the linking. One click and it was done. Yay!

    Then it still failed, since the default project is debug, and I don't have the debug libraries here, only the release. Another single click, and I am ready to go.

    Then I pressed F5 (as F6 still does nothing usable... hint hint...). The application told me I don't have the debug exe, but only release, and then it asked me to run the release version. WAY COOL.

    It looks like this application is way more advanced then I thinked at the beginning. There are some rough edges, but damn, its working. I have a shortcut to it on my desktop, and I am using it now as by default "mini ide".

    Here is a new list of problems I found, besides what I mentioned yesterday and above:

    1. Qt environment not set up. It's not needed sometimes, as Qt knows it's own directory. Adding a "do not display again" checkbox could be a good idea. I know it works without it, I don't need it, don't bother me with this.
    2. GDB not installed. Same as (1), it's ok to alert me the 17 first times I run the application. On the 18th time, I am already aware of it. See my proposition on (1).
    3. Choose colors dialog. When you try to choose a color for the syntax, the currently selected color is not marked by default on the new dialog.
    4. Default syntax colors. By default the "precompiler" "keywords" and "qtkeywords" have the same colors. Please also note that types are not keywords...
    5. Edit - cancel/restore. The wording here is problematic. Lets say I add a new file to the project. Does restore or cancel reverts this operation? It's common to use "undo/redo" for text operations, which is what these commands do.
    6. Modifying variables is very difficult. I needed to modify the include path for my new project, and I needed to look up in the documentation whats the exact variable name. May I suggest adding a pre configured list of variables which by default are empty? You should write this to the config file only if the list is modified and non empty. This can help a lot,specially for those of us who do not remember the configuration items.

  4. #4
    Join Date
    Jan 2006
    Posts
    156
    Thanked 12 Times in 12 Posts
    Qt products
    Qt3 Qt4
    Platforms
    Unix/X11 Windows

    Default Re: QIde, a new IDE for Qt4

    patrik08
    I read again your post and I understand the reason. I modified your code. Thus, can open files or a project. Good idea, thanks. Include in next 0.14 version.
    Qt Code:
    1. //
    2. for ( int i = 1; i < app.argc(); ++i )
    3. {
    4. QString s = app.argv()[ i ];
    5. if( s.right(4).toLower() == ".pro" )
    6. {
    7. main->ouvrirProjet(s);
    8. break;
    9. }
    10. else
    11. main->ouvrirFichier( QStringList( s ) );
    12. }
    13. //
    To copy to clipboard, switch view to plain text mode 
    just before : app.connect( &app, SIGNAL( lastWindowClosed() ), &app, SLOT( quit() ) );

  5. #5
    Join Date
    Jan 2006
    Posts
    156
    Thanked 12 Times in 12 Posts
    Qt products
    Qt3 Qt4
    Platforms
    Unix/X11 Windows

    Default Re: QIde, a new IDE for Qt4

    Hi,
    New version 0.14 is released on server : http://qide.free.fr

    elcuco
    All your requests are corrected except the problem of short cut (Ctrl key don' t works one Linux !)

    patrik08
    Drag and drop files or project to application works.

    All news are on server.

    I await your remarks,

    jlbrd

  6. #6
    Join Date
    Jan 2006
    Posts
    156
    Thanked 12 Times in 12 Posts
    Qt products
    Qt3 Qt4
    Platforms
    Unix/X11 Windows

    Default Re: QIde, a new IDE for Qt4

    After a build, if an error or warning is occured, a double-click on the red or blue line open the file on error line. A user says to me that the double-click does not do anything.

    Can you say to me if it goes or not for you. And with which Windows or Linux version.

    Thanks,

  7. #7
    Join Date
    Jan 2006
    Posts
    371
    Thanks
    14
    Thanked 18 Times in 17 Posts
    Qt products
    Qt4
    Platforms
    Unix/X11 Windows

    Default Re: QIde, a new IDE for Qt4

    It's about time I do something instead of blabla like I did until now:

    in margeNumberation.cpp, paintEvent(), this line:
    Qt Code:
    1. p.drawText( width() -fm.width( txt ) - 2, qRound( position.y() ) -contentsY +ascent, txt ); // -fm.width( "0" ) is an ampty place/indent
    To copy to clipboard, switch view to plain text mode 

    and in setDigits:
    Qt Code:
    1. setFixedWidth( fontMetrics().width( "0" ) * (i) + 32 ); // +2 = 1 empty place before and 1 empty place after
    To copy to clipboard, switch view to plain text mode 

    This makes the line number widget behave better, and leves 32 pixels for the icons (break). I tested it with a 20K file (4 digits) and the icons are drawn on the correct location. I number of 22 is also good, more tight.

    There are some regressions on this version, I will test it trough today and tomorrow, and report about the ooopses I find.

    BTW, the auto hide thingie...? IMHO sux

  8. #8
    Join Date
    Jan 2006
    Posts
    156
    Thanked 12 Times in 12 Posts
    Qt products
    Qt3 Qt4
    Platforms
    Unix/X11 Windows

    Default Re: QIde, a new IDE for Qt4

    Thank you for this participation. The size of breakpoint icon is 22x22 thus I replaced 32 by 22 in your code. It works fine, tested with a 107000 lines file.

  9. #9
    Join Date
    Jan 2006
    Posts
    371
    Thanks
    14
    Thanked 18 Times in 17 Posts
    Qt products
    Qt4
    Platforms
    Unix/X11 Windows

    Default Re: QIde, a new IDE for Qt4

    Quote Originally Posted by jlbrd
    Thank you for this participation. The size of breakpoint icon is 22x22 thus I replaced 32 by 22 in your code. It works fine, tested with a 107000 lines file.
    Drawing 12,000 lines takes about 2 minutes on my box. How much does it take on your box? (another thing to optimize..)

    Btw, you have some *.o and ~ files on the release. You can keep the source bellow 1mb by just cleaning it up...

  10. #10
    Join Date
    Feb 2006
    Location
    Oslo, Norway
    Posts
    6,264
    Thanks
    36
    Thanked 1,519 Times in 1,389 Posts
    Qt products
    Qt4
    Platforms
    MacOS X Unix/X11 Windows Symbian S60 Maemo/MeeGo

    Default Re: QIde, a new IDE for Qt4

    Quote Originally Posted by elcuco
    BTW, the auto hide thingie...? IMHO sux
    At least there should be a "pin" button to optionally stick it visible like in VS.
    J-P Nurmi

  11. #11
    Join Date
    Jan 2006
    Posts
    156
    Thanked 12 Times in 12 Posts
    Qt products
    Qt3 Qt4
    Platforms
    Unix/X11 Windows

    Default Re: QIde, a new IDE for Qt4

    Drawing 12,000 lines takes about 2 minutes on my box. How much does it take on your box? (another thing to optimize..)
    Yes, it's very slow for me too. The cause it is the syntax highlighting, very too slow. It should be rewritten
    For .o, a new release is on server, thanks.

  12. #12
    Join Date
    Jan 2006
    Posts
    156
    Thanked 12 Times in 12 Posts
    Qt products
    Qt3 Qt4
    Platforms
    Unix/X11 Windows

    Default Re: QIde, a new IDE for Qt4

    At least there should be a "pin" button to optionally stick it visible like in VS.
    It's optionnal, on dialog "Options"

  13. #13
    Join Date
    Feb 2006
    Location
    Oslo, Norway
    Posts
    6,264
    Thanks
    36
    Thanked 1,519 Times in 1,389 Posts
    Qt products
    Qt4
    Platforms
    MacOS X Unix/X11 Windows Symbian S60 Maemo/MeeGo

    Default Re: QIde, a new IDE for Qt4

    Quote Originally Posted by jlbrd
    It's optionnal, on dialog "Options"
    Right, I missed that. But it would still be a nice feature to toggle auto-hiding feature by just a single click (like in VS). Btw, as I've heard, TT is implementing this kind of widget. Not sure if it will arrive in time yet for 4.2, though.

    A few suggestions:
    - a message box asking whether user wants to compile before starting debugging if any files belonging to the project have been modified since last build
    - open file dialog could allow selecting of multiple files
    - dynamic shortcuts, i want to debug with buttons i'm familiar with
    - properties dialog's layout does not work very well. unchecking "advanced mode" leaves the dialog's size as it is. maybe you could use QDialog's extension for showing advanced properties?
    - a possibility of re-arranging tabs the way or another

    Keep up the nice work! This project really has some potential..
    J-P Nurmi

  14. #14
    Join Date
    Jan 2006
    Posts
    156
    Thanked 12 Times in 12 Posts
    Qt products
    Qt3 Qt4
    Platforms
    Unix/X11 Windows

    Default Re: QIde, a new IDE for Qt4

    But it would still be a nice feature to toggle auto-hiding feature by just a single click (like in VS)
    Have you a screenshot for me for this feature.

    - a message box asking whether user wants to compile before starting debugging if any files belonging to the project have been modified since last build
    Excuse me but my english is very bad. It posts a message and it would not have?

    Can you explain what are the "dynamics shortcuts"?

    I will look for the tab and the dialogue config and the multiple files to open.

  15. #15
    Join Date
    Feb 2006
    Location
    Oslo, Norway
    Posts
    6,264
    Thanks
    36
    Thanked 1,519 Times in 1,389 Posts
    Qt products
    Qt4
    Platforms
    MacOS X Unix/X11 Windows Symbian S60 Maemo/MeeGo

    Default Re: QIde, a new IDE for Qt4

    Quote Originally Posted by jlbrd
    Have you a screenshot for me for this feature.
    Sure, see attached screenshots.

    Excuse me but my english is very bad. It posts a message and it would not have?
    I'm not saying you should start copying each and every feature in VS, but I find this very comfortable and handy. After modifying source files, all I have to do is to press the shortcut to start debugging (would currently be F6 in QIde) and it asks me if I want to build the project up-to-date. See attached screenshot.

    Can you explain what are the "dynamics shortcuts"?
    Configurable shortcuts (can be changed by the user). For example all KDE apps have this "Configure Shortcuts" dialog. Imagine users who are familiar with different shortcuts than you have set. They would not be happy to learn yet another set of shortcuts. I have myself exactly the same debugging shortcuts in both VS and KDevelop. It is really convenient to use same and familiar shortcuts when debugging in different environments instead of trying to keep shortcut differencies in mind all the time.
    Attached Images Attached Images
    J-P Nurmi

Bookmarks

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •  
Digia, Qt and their respective logos are trademarks of Digia Plc in Finland and/or other countries worldwide.