topbanner_forum
  *

avatar image

Welcome, Guest. Please login or register.
Did you miss your activation email?

Login with username, password and session length
  • Thursday October 10, 2024, 5:41 am
  • Proudly celebrating 15+ years online.
  • Donate now to become a lifetime supporting member of the site and get a non-expiring license key for all of our programs.
  • donate

Author Topic: Introducing SkyIDE - a free integrated development environment written in BCB 6  (Read 26441 times)

SkyIDE

  • Honorary Member
  • Joined in 2006
  • **
  • default avatar
  • Posts: 245
    • View Profile
    • Read more about this member.
    • Donate to Member
SkyIDE is a free integrated development environment for C++, Java and other projects. SkyIDE stands for Sky Integrated Development Environment


Main Screenshot: http://www.skyide.com/images/main.png
All Other screenshots: http://www.skyide.com/screenshots.html

Project URL: http://www.skyide.com


Here is a brief overview of what SkyIDE can do.

 
* Update: Full Java Support added
* Multiple project support
* Multiple C++ compiler support
* Each project of type C++ can be set to use a different C++ compiler
* Tabbed document Interface implemented using MDI with drag-tab support
*
* You can have different projects open at the same time. You can have HTML,
*  C++, Java, PHP
* and JavaScript projects all open at the same time.
*
* Powerful text manipulation functions:
*
* You can extract JavaScript scripts from a file quickly and efficiently. You can
* also extract CSS styles too the same way you would extract JavaScript scripts.
*
* Easily chop a particular number of characters on the start or end of each line.
* Very useful if for example you have saved an IRC conversation and you want
* to get rid of the time stamps.
*
* SQL-like bar lets you get/delete text by using SQL-like commands.
* Easily numerate lines, convert text case, join lines, line selection, completition
* etc.
*
* Choose between Search as you type Search or the ordinary search. The Quick
* Find and the Search Bar highlights text as you type it in the search box (like
* Firefox)
*
* C++ Function bar lists all your functions / methods in the file.
*
* C++ File structure lists all your standard C++ object types: int, floats, double
* etc and also lists all of your loops such as for loops and while loops. It lists
* your class names, structs and static members.
*
* A JavaScript Tree that can be customized (atm via manual edit only) lets you
* insert pre-defined JavaScript propertites in your file.
*
*
*
* The line tracker: A handy toolbar that shows the current line of text where the
* caret is with a copy to Clipboard feature. The line tracker also lets you add
* extra lines by selecting some text from the edit control, right click and
* selecting Add Lines To Tracker.
*
*
* Favorites Pane: Easily add your favorite files hat you work the most with to
* the Favorites bar.
*
* History bar, unlimitted history viewer. Shows all your files that you have
* opened up in the past.
*
*
* Undo Last Close will re-open the last closed document.
*
* Revert to original will revert the file to its original position from the current
* session even after you saved the file.
*
*
* Powerful syntax coloring for supported languages thanks to the TScintilla
* component.
*
* Smart tab stops mark the tab sets of each line (Thanks to TScintilla
* component)
*
* Auto Complete feature that can be customized for each file type that you edit.
* So, if you edit a c++ file you can have one set of words that appear in the
* Auto Complete box and if you edit an HTML you can have a different set of
* words that appear in auto complete list.
*
* Abbrevations let you insert text as you type, example:
*
* You type "for" and press the space bar key, it will auto insert "for (int i = 0; i <
* 10; i++)"
*
* All these abbrevations can be customized for each file type by editing a text
* file. So just like the Auto Complete feature, the abbrevations can also be
* customized. This is not a default
* behaviour in TScintilla so I implemented this my self to my project for both
* Auto Complete and Abbrevations.
*
*
* Easily preview web documents using an external browser and pre-defined
* locations of a few popular extrenal functions....
*
* Dynamic Filter for open/save dialog boxes. You be the judge what you want
* and what you don't want to appear in the filter when you open/save files.
* Filter index can also be saved.
*
* Start the program with the same documents that were open from the previous
* session. Start the program with the same projects that were open from the
* previous session.
*
*
* Extract ints, floats, void functions from file.
* Bookmark only ints, floats, chars etc...
*
*
* Compile using the default compiler, compiler set for the project or a different
* compiler altogether (finished)


main.png
« Last Edit: September 17, 2006, 06:25 AM by alexk »

Blaster

  • Honorary Member
  • Joined in 2006
  • **
  • Posts: 85
    • View Profile
    • Donate to Member
Great programme!!

Congratulations!

You really earned your prize... ;-)

SkyIDE

  • Honorary Member
  • Joined in 2006
  • **
  • default avatar
  • Posts: 245
    • View Profile
    • Read more about this member.
    • Donate to Member
Thanks :) That screen shot is quite old now.

Here is how it looks now: http://www.skyide.com/images/main.png

Download URL: http://www.skyide.com/downloads.html



C++Speaker

  • Honorary Member
  • Joined in 2006
  • **
  • default avatar
  • Posts: 19
    • View Profile
    • Donate to Member
Very good entry !  :Thmbsup:

Do You plan to add something similar to ClassExplorer ?
Do You plan to add functionality similar to 'Understand for C++' ?

SkyIDE

  • Honorary Member
  • Joined in 2006
  • **
  • default avatar
  • Posts: 245
    • View Profile
    • Read more about this member.
    • Donate to Member
Thanks :)

>> Do You plan to add something similar to ClassExplorer ?

Believe me I tried, but I failed. I tried a few times. I haven't tried lately again but I will. I've had a big break since my last try. I just left that section and focused on other stuff. I am so very sorry. I really want this feature pationately. I tried a few different ways to implement this but I always failed when I tried to catch/detect inner classes, a class within a class. It's getting complicated. I need to write some good C++ string analyzer. I am not sure how long this is gonna take me and whether I will succeed. Yes, DevC++ does this and does it well with great success. The C++ Object viewer was my answer to this, at least I tried to do something similar to it. I can assure you I will try again but whether I will succeed , I am not sure. Speed is also very important.

>> Do You plan to add functionality similar to 'Understand for C++' ?

I don't think I've heard of this before, can you please clarify?

C++Speaker

  • Honorary Member
  • Joined in 2006
  • **
  • default avatar
  • Posts: 19
    • View Profile
    • Donate to Member
>> Do You plan to add something similar to ClassExplorer ?

Believe me I tried a few times. [...]

Yes it should be a very difficult feature to implement, some time ago I started thinking to implement it but never tried, during the research for tools that helps doing so I found ANTLR (www.antlr.org)
a parser builder, and the source code of GCC, but probabily trying to implement a parser is overkill for this feature ...

>> Do You plan to add functionality similar to 'Understand for C++' ?

I don't think I've heard of this before, can you please clarify?


Yes,
it's a tool to better understand programs.
It parses a project and put all classes, macros, files, functions etc.. etc...
in a DB so a user can reach them with a click or as their developers say

ANSI C, C++ and K&R C reverse engineering, code navigation, and metrics tool.

The link is www.scitools.com

However SkyIDE is really a good entry and such features can be added in a future ...

Ciao.

SkyIDE

  • Honorary Member
  • Joined in 2006
  • **
  • default avatar
  • Posts: 245
    • View Profile
    • Read more about this member.
    • Donate to Member
It is an extremely difficult feature and then when you create an object

MyClass myVar = new MyClass();

you need to be able to list the class members of that class! BUT if I succeed with the class explorer, this second feature might be easier to implement because I would already know the class members of all the classes (they'll be listed in the tree view) so it will only be a matter of detecting the word on the left of myVar and see if it is present in the tree view class explorer and if it is, you just need to show a drop down box and list all the members of the tree node in the class explorer. That would be extremely easy to do.

« Last Edit: September 13, 2006, 06:27 AM by alexk »