Movatterモバイル変換


[0]ホーム

URL:


Wayback Machine
4 captures
01 Dec 2008 - 18 Feb 2013
DecOCTMay
Previous capture29Next capture
200820112013
success
fail
COLLECTED BY
Organization:Alexa Crawls
Starting in 1996,Alexa Internet has been donating their crawl data to the Internet Archive. Flowing in every day, these data are added to theWayback Machine after an embargo period.
Collection:Alexa Crawls
Starting in 1996,Alexa Internet has been donating their crawl data to the Internet Archive. Flowing in every day, these data are added to theWayback Machine after an embargo period.
TIMESTAMPS
loading
The Wayback Machine - https://web.archive.org/web/20111029113303/http://www.codeproject.com:80/KB/cpp/visual_java.aspx
Click here to Skip to main content
8,205,222 members and growing! (38,836 online)
EmailPassword Lost password?
Home
Search within:




Licence CPOL
First Posted 13 May 2004
Views 49,962
Downloads 1,626
Bookmarked 36 times

A Java Language IDE

Bymystro_AKA_kokie | 13 May 2004
This is a partially implemented IDE for the Java platform.
 
See Also
Print Article
add
Add to your CodeProject bookmarks
Discuss
Discuss this article
17
  4.55 (25 votes)
1 vote, 4.0%
1
1 vote, 4.0%
2
4 votes, 16.0%
3
1 vote, 4.0%
4
18 votes, 72.0%
5
4.55/5 - 25 votes
2 removed
μ 4.16, σa 2.01 [?]
Sponsored Links

Introduction

<-political_rant>

The decision to share this software isn't so much in the spirit of open source as it is a humble protest against not being able to find a job as a programmer. If they won't hire us, then we'll flood the market with free software. SOLIDARITY!

<-/political_rant>"

With that said, let's get going. This a functional yet incomplete Java IDE. I have had the code on my PC for the last 3 years or so. Initially, I thought I could turn it into a commercially viable product, but that isn't happening. Below is a list of the classes contained in the project:

classes

The following features have been implemented to some extent:

Code completion. Code can be completed after the invocation of '.'. The invocation of a method doesn't yet support code completion.

ccpopp

Class view for currently loaded project files.

wksp

Editor customization options.

opt

Java SDK Setting utility.

sdk

Here are the other libraries the project uses.

workspace

The editlib is for the text editor, the bcglib (don't know if it's still publicly available) is for the UI.

This is the basic design of how the editor window interacts with the backend parser.

design

When a file is loaded, a map of the parser thread and the file associated with it is made. This allows the text editor to send EDIT notification messages to the global map, which locates the thread associated with the provided file name. As you can see, this provides for a very flexible interaction between the parser and the text editor. The text editor can be opened and closed without any further interaction with the parser. As in the diagram above, whenever an edit event occurs, the global map is accessed via theCVisualJavaApp::SendEditMsg() function. This function locates the thread ID, and posts the necessary message.

When a project is loaded

The project is loaded from:

CMainFrame::OnFileOpenworkspace().

From there, a series of calls lead to the next important point in the code, the call to:CProjectFile::CProjectFile().

From the above function, a new thread is spawn, that thread represents the parser. The above function is an ideal place to start learning about the project. If you're interested in adding code, check out theCVisualJavaAppp::InitInstance method. You'll also want to download the standard edition of the Java SDK. Set the path of the API and the tools bin from the SDK Tool setting windows shown above.

Running the Executable

Download the JAVA SDK standard edition.

For those who want to try out the app, you'll need to put thecodetemplates_1.txt file in theMy Documents folder. I hard coded that path in the app. Secondly, you'll have to create a new project as follows:

File->New->("type project name")->Choose Swing as App Type, Click the next button->Click the Frame button->Choose Simple Text editor.

Following the above steps should allow you to create a new Java project. Assuming the codetemplate is where it should be, you should have a simple editor code generated. The simple text editor is the only option that has template code, you can add more template codes to the file.

The format for the codetemplate file is "<TEMPLATE_NAME>" followed by template code. Below is a list of valid template names:

  • <CLASS_DECLARATION>|<INTERFACE_DECLARATION>| <SWING_TEXT_EDITOR>
  • <FRAME_APP_WITH_MENU_SWING>|<FRAME_APP_WITH_TOOLBAR_SWING>
  • <FRAME_APP_SWING>|<DIALOG_APP_SWING>| <FRAME_APP_AS_SIMPLE_TEXT_EDITOR_AWT>
  • <FRAME_APP_WITH_MENU_AWT>|<FRAME_APP_WITH_TOOLBAR_AWT>| <FRAME_APP_AWT>
  • <DIALOG_APP_AWT>|<CONSOLE_APP>|<APPLET_APP>

When you insert template code, the only thing that should be replaced is the class name. That is accomplished by replacing every occurrence of the class name with "<CLASS_NAME>".

For more information on codetemplates, see theCCodeTemplate class. A word of caution about the SDK: first of all, you can't put the Java project in theMy Documents folder. Put it in yourC: directory. The "javac" tool for some reason doesn't know how to read paths containingMy Documents (and probably any folders with names containing white spaces). You must also set the tool paths from the SDK window above. For limited code completion support, you must also set the API path.

License

This article, along with any associated source code and files, is licensed underThe Code Project Open License (CPOL)

About the Author

mystro_AKA_kokie

Web Developer

United States United States

Member
biography? I am not that old yet.

loading...
Sign Up to vote  PoorExcellent
Add a reason or comment to your vote:x
Votes of 3 or less require a comment

Comments and Discussions

 
 RefreshFirstPrevNext
GeneralDemo don't workmemberjanvb16:18 12 Aug '07  
GeneralThat is i'am looking for long.memberkuler_CN16:38 30 Jul '06  
Generalmissing file mfc42ud.libmemberPrachi Chitnis23:40 30 May '04  
GeneralRe: missing file mfc42ud.libmembermystro_AKA_kokie4:02 31 May '04  
GeneralAssert on RButtonDownmemberMike Wild22:50 23 May '04  
GeneralAssert in olelink.cppmemberatali8:02 19 May '04  
GeneralRe: Assert in olelink.cppmembermystro_AKA_kokie13:50 19 May '04  
QuestionWhat about Eclipse?sussAnonymous13:27 14 May '04  
AnswerRe: What about Eclipse?memberJörgen Sigvardsson8:00 16 May '04  
GeneralRe: What about Eclipse?membermystro_AKA_kokie8:24 16 May '04  
AnswerRe: What about Eclipse?memberflyingxu16:20 28 Apr '07  
Generalmissing filememberbitrat8:06 14 May '04  
GeneralRe: missing filemembermystro_AKA_kokie8:42 14 May '04  
GeneralFile MissingmemberSilentBob?5:30 14 May '04  
GeneralRe: File Missingmembermystro_AKA_kokie6:09 14 May '04  
QuestionFile Missing ?memberHing23:42 13 May '04  
AnswerRe: File Missing ?membermystro_AKA_kokie2:36 14 May '04  
Last Visit: 19:00 31 Dec '99     Last Update: 2:33 29 Oct '111

General General   News News   Suggestion Suggestion   Question Question   Bug Bug   Answer Answer   Joke Joke   Rant Rant   Admin Admin   

Permalink |Advertise |Privacy |Mobile
|Web24 |2.5.111017.1
Article Copyright 2004 by mystro_AKA_kokie
Everything elseCopyright ©CodeProject, 1999-2011
Terms of Use
Layout:fixed|fluid

The Daily Insider

[8]ページ先頭

©2009-2025 Movatter.jp