Main Module pane questions

What is a Content? Even when clicking "Add Content..." a dialog "Select
Path" occurs with the description "Select New Root"????

Tom

56 comments

We promised to post FAQ about configuring new projects, here it is:
1. Content is the same as "project path" was.
2. When you have content added you can add source folders - source path
(tests can be placed in separate sourcepath and compiled to separate output
path) and exclude folders.
3. To create classpath go to Libraries tab and add jars (or directories with
classes) there. You can group jars into "named libraries". Single
jar/directory and group of jars/directories named "library".
4. To order classpath go to order tab. It functions much like old classpath
tab.
5. To add external sources and/or javadocs go to Libraries choose there
library you want to attach sources/javadocs to and use buttons.
6. To remove anything use remove button.
7. To create Application/Project level library go to Order tab and press Add
Application/Project Library button.There you can press Configure button and
get dialog which act like Libraries Tab.

Any suggestions on how to make this UI more intuitive are welcome

--
Best regards,
Dmitry Peshehonov
JetBrains, Inc, http://www.intellij.com

"Develop with pleasure!"
"Thomas Singer" <thomas.singer@noregnisspam.de> wrote in message
news:opro7x6ayrmxlxr0@news.intellij.net...

What is a Content? Even when clicking "Add Content..." a dialog "Select
Path" occurs with the description "Select New Root"????

>

Tom



0

This new module thing is far from being intuitive... I filed a bug because I thought that I couldn't add new source folders to my project.

Also, for simple projects, the new organization requires more work since you need to add new content then new source folders... With the old way, I could get the same result in a single operation. Oh well, I guess this is waht you get for better flexibility. It would be nice though if improved flexibility didn't decrease productivity.

0

We are working on another view for contents: you add contents like you have
to do now and get file system tree starting there. In this tree you can mark
some folders as sources and excludes.

--
Best regards,
Dmitry Peshehonov
JetBrains, Inc, http://www.intellij.com

"Develop with pleasure!"
"Chris Laprun" <chris.laprun@nist.gov> wrote in message
news:422438.1053013779426.JavaMail.jrun@is.intellij.net...

This new module thing is far from being intuitive... I filed a bug because

I thought that I couldn't add new source folders to my project.
>

Also, for simple projects, the new organization requires more work since

you need to add new content then new source folders... With the old way, I
could get the same result in a single operation. Oh well, I guess this is
waht you get for better flexibility. It would be nice though if improved
flexibility didn't decrease productivity.


0

Hi there,

I have a problem related to the paths: for some reason, the output path is
added to my classpath and the intentions get really confused.

If I call a method that does not exist, IDEA suggests me to create it. Once
I choose the intention, the method gets created in the targeted class, but
when I navigate back to the place I initiated the creation from the method
call is red (highlighted as an error). This time, though, the only available
intention is the rename reference one.

Ctrl-clicking on the class declaration opens the class file, as opposed to
the source. From this point on, the intentions are not working anymore.

I have to clean the output folder to get back on track. Is there a way to
tell IDEA not to include the output path in the classpath (I don't seem to
find it if it is)?

Thx,
Andrei


0

What is a "named library"?

I cannot seem to add the actual .jar to a named library, so I don't understand how to group things in this dialog. This is under Application / Project library.

0

Andrei,

add your output path to exclude folders explicitlly. We will fix this soon.

Friendly,
Dmitry

Andrei Oprea wrote:

Hi there,

I have a problem related to the paths: for some reason, the output path is
added to my classpath and the intentions get really confused.

If I call a method that does not exist, IDEA suggests me to create it.
Once I choose the intention, the method gets created in the targeted
class, but when I navigate back to the place I initiated the creation from
the method call is red (highlighted as an error). This time, though, the
only available intention is the rename reference one.

Ctrl-clicking on the class declaration opens the class file, as opposed to
the source. From this point on, the intentions are not working anymore.

I have to clean the output folder to get back on track. Is there a way to
tell IDEA not to include the output path in the classpath (I don't seem to
find it if it is)?

Thx,
Andrei


--
Dmitry Lomov
IntelliJ Labs / JetBrains Inc.
http://www.intellij.com
"Develop with pleasure!"

0

We are working on another view for contents: you add
contents like you have
to do now and get file system tree starting there. In
this tree you can mark
some folders as sources and excludes.


That would be great. Having to manually add the different folders is a big waste of time. Being able to add roots and then mark folders as source or test or whatever would do the trick: all the benefits, not the pain! :)

0

I already tried that. Unfortunately, the OK button for the exclude dialog is
enabled only for folders underneath the content path (mine is somewhere
else, on another drive). I'll try to edit the iml file manually, see it I
can make it work.

Thx,
Andrei

"Dmitry Lomov" <dsl@intellij.com> wrote in message
news:ba0eq4$418$1@is.intellij.net...

Andrei,

>

add your output path to exclude folders explicitlly. We will fix this

soon.
>

Friendly,
Dmitry

>

Andrei Oprea wrote:

>

Hi there,

>

I have a problem related to the paths: for some reason, the output path

is

added to my classpath and the intentions get really confused.

>

If I call a method that does not exist, IDEA suggests me to create it.
Once I choose the intention, the method gets created in the targeted
class, but when I navigate back to the place I initiated the creation

from

the method call is red (highlighted as an error). This time, though, the
only available intention is the rename reference one.

>

Ctrl-clicking on the class declaration opens the class file, as opposed

to

the source. From this point on, the intentions are not working anymore.

>

I have to clean the output folder to get back on track. Is there a way

to

tell IDEA not to include the output path in the classpath (I don't seem

to

find it if it is)?

>

Thx,
Andrei

>

--
Dmitry Lomov
IntelliJ Labs / JetBrains Inc.
http://www.intellij.com
"Develop with pleasure!"



0

Add a named library to the tree, then make sure it's selected and click Add
JAR... Works the same for source or javadoc.
(Note this is in the Libraries tab)

N.

Joseph Gergis wrote:

What is a "named library"?

>

I cannot seem to add the actual .jar to a named library, so I don't
understand how to group things in this dialog. This is under
Application / Project library.



0

Andrei,
ok I see the problem now. We will definitely fix this soon.
As a workaround, do the following weird and ugly thing: add a content entry
for your output path, and then exclude it all.

Sorry for inconvenience,
Friendly,
Dmitry

Andrei Oprea wrote:

I already tried that. Unfortunately, the OK button for the exclude dialog
is enabled only for folders underneath the content path (mine is somewhere
else, on another drive). I'll try to edit the iml file manually, see it I
can make it work.

Thx,
Andrei

"Dmitry Lomov" <dsl@intellij.com> wrote in message
news:ba0eq4$418$1@is.intellij.net...

>> Andrei,
>>
>> add your output path to exclude folders explicitlly. We will fix this

soon.

>>
>> Friendly,
>> Dmitry
>>
>> Andrei Oprea wrote:
>>
>> > Hi there,
>> >
>> > I have a problem related to the paths: for some reason, the output path

is

>> > added to my classpath and the intentions get really confused.
>> >
>> > If I call a method that does not exist, IDEA suggests me to create it.
>> > Once I choose the intention, the method gets created in the targeted
>> > class, but when I navigate back to the place I initiated the creation

from

>> > the method call is red (highlighted as an error). This time, though,
>> > the only available intention is the rename reference one.
>> >
>> > Ctrl-clicking on the class declaration opens the class file, as opposed

to

>> > the source. From this point on, the intentions are not working anymore.
>> >
>> > I have to clean the output folder to get back on track. Is there a way

to

>> > tell IDEA not to include the output path in the classpath (I don't seem

to

>> > find it if it is)?
>> >
>> > Thx,
>> > Andrei
>>
>> --
>> Dmitry Lomov
>> IntelliJ Labs / JetBrains Inc.
>> http://www.intellij.com
>> "Develop with pleasure!"

--
Dmitry Lomov
IntelliJ Labs / JetBrains Inc.
http://www.intellij.com
"Develop with pleasure!"

0

Same here. I can create a named library, add both source and documentation
paths to it, but can't find any way to add the actual classes. What am I
missing?

Vil.

Joseph Gergis wrote:

What is a "named library"?

I cannot seem to add the actual .jar to a named library, so I don't understand how to group things in this dialog. This is under Application / Project library.


--
Vilya Harvey, Consultant
vilya.harvey@digitalsteps.com / digital steps /
(W) +44 (0)1483 469 480
(M) +44 (0)7816 678 457 http://www.digitalsteps.com/

Disclaimer

This e-mail and any attachments may be confidential and/or legally
privileged. If you have received this email and you are not a named
addressee, please inform the sender at Digital Steps Ltd by phone on
+44 (0)1483 469 480 or by reply email and then delete the email from
your system. If you are not a named addressee you must not use,
disclose, distribute, copy, print or rely on this email. Although
Digital Steps Ltd routinely screens for viruses, addressees should
check this email and any attachments for viruses. Digital Steps Ltd
makes no representation or warranty as to the absence of viruses in this
email or any attachments.

0

Editing the file manually solved the classpath problem, but now the Project
Properties dialog does not show up anymore (the console logs some exceptions
every time I try to open it). I guess the OK button not being enabled for
other paths had it's reasons. :)

Andrei

P.S. Do you want me to fill in a bug report for the initial problem (output
in classpath) or you'll take care of it anyway?

"Andrei Oprea" <aoprea@creditwave.com> wrote in message
news:ba0f4a$4qb$1@is.intellij.net...

I already tried that. Unfortunately, the OK button for the exclude dialog

is

enabled only for folders underneath the content path (mine is somewhere
else, on another drive). I'll try to edit the iml file manually, see it I
can make it work.

>

Thx,
Andrei

>

"Dmitry Lomov" <dsl@intellij.com> wrote in message
news:ba0eq4$418$1@is.intellij.net...

Andrei,

>

add your output path to exclude folders explicitlly. We will fix this

soon.
>

Friendly,
Dmitry

>

Andrei Oprea wrote:

>

Hi there,

>

I have a problem related to the paths: for some reason, the output

path

is

added to my classpath and the intentions get really confused.

>

If I call a method that does not exist, IDEA suggests me to create it.
Once I choose the intention, the method gets created in the targeted
class, but when I navigate back to the place I initiated the creation

from

the method call is red (highlighted as an error). This time, though,

the

only available intention is the rename reference one.

>

Ctrl-clicking on the class declaration opens the class file, as

opposed

to

the source. From this point on, the intentions are not working

anymore.

>

I have to clean the output folder to get back on track. Is there a way

to

tell IDEA not to include the output path in the classpath (I don't

seem

to

find it if it is)?

>

Thx,
Andrei

>

--
Dmitry Lomov
IntelliJ Labs / JetBrains Inc.
http://www.intellij.com
"Develop with pleasure!"

>
>


0

Andrei Oprea wrote:

Editing the file manually solved the classpath problem, but now the
Project Properties dialog does not show up anymore (the console logs some
exceptions every time I try to open it). I guess the OK button not being
enabled for other paths had it's reasons. :)

Andrei

P.S. Do you want me to fill in a bug report for the initial problem
(output in classpath) or you'll take care of it anyway?


We will. File a bug though if you want to get notification when it is fixed.

Friendly,
Dmitry


"Andrei Oprea" <aoprea@creditwave.com> wrote in message
news:ba0f4a$4qb$1@is.intellij.net...

>> I already tried that. Unfortunately, the OK button for the exclude dialog

is

>> enabled only for folders underneath the content path (mine is somewhere
>> else, on another drive). I'll try to edit the iml file manually, see it I
>> can make it work.
>>
>> Thx,
>> Andrei
>>
>> "Dmitry Lomov" <dsl@intellij.com> wrote in message
>> news:ba0eq4$418$1@is.intellij.net...
>> > Andrei,
>> >
>> > add your output path to exclude folders explicitlly. We will fix this
>> soon.
>> >
>> > Friendly,
>> > Dmitry
>> >
>> > Andrei Oprea wrote:
>> >
>> > > Hi there,
>> > >
>> > > I have a problem related to the paths: for some reason, the output

path

>> is
>> > > added to my classpath and the intentions get really confused.
>> > >
>> > > If I call a method that does not exist, IDEA suggests me to create
>> > > it. Once I choose the intention, the method gets created in the
>> > > targeted class, but when I navigate back to the place I initiated the
>> > > creation
>> from
>> > > the method call is red (highlighted as an error). This time, though,

the

>> > > only available intention is the rename reference one.
>> > >
>> > > Ctrl-clicking on the class declaration opens the class file, as

opposed

>> to
>> > > the source. From this point on, the intentions are not working

anymore.

>> > >
>> > > I have to clean the output folder to get back on track. Is there a
>> > > way
>> to
>> > > tell IDEA not to include the output path in the classpath (I don't

seem

>> to
>> > > find it if it is)?
>> > >
>> > > Thx,
>> > > Andrei
>> >
>> > --
>> > Dmitry Lomov
>> > IntelliJ Labs / JetBrains Inc.
>> > http://www.intellij.com
>> > "Develop with pleasure!"
>>
>>

--
Dmitry Lomov
IntelliJ Labs / JetBrains Inc.
http://www.intellij.com
"Develop with pleasure!"

0

Great, I didn't think about that!
It works now.

Thanks a lot for the quick replies,
Andrei

"Dmitry Lomov" <dsl@intellij.com> wrote in message
news:ba0fsc$5ll$1@is.intellij.net...

Andrei,
ok I see the problem now. We will definitely fix this soon.
As a workaround, do the following weird and ugly thing: add a content

entry

for your output path, and then exclude it all.

>

Sorry for inconvenience,
Friendly,
Dmitry

>

Andrei Oprea wrote:

>

I already tried that. Unfortunately, the OK button for the exclude

dialog

is enabled only for folders underneath the content path (mine is

somewhere

else, on another drive). I'll try to edit the iml file manually, see it

I

can make it work.

>

Thx,
Andrei

>

"Dmitry Lomov" <dsl@intellij.com> wrote in message
news:ba0eq4$418$1@is.intellij.net...

>> Andrei,
>>
>> add your output path to exclude folders explicitlly. We will fix this

soon.

>>
>> Friendly,
>> Dmitry
>>
>> Andrei Oprea wrote:
>>
>> > Hi there,
>> >
>> > I have a problem related to the paths: for some reason, the output

path

is

>> > added to my classpath and the intentions get really confused.
>> >
>> > If I call a method that does not exist, IDEA suggests me to create

it.

>> > Once I choose the intention, the method gets created in the targeted
>> > class, but when I navigate back to the place I initiated the creation

from

>> > the method call is red (highlighted as an error). This time, though,
>> > the only available intention is the rename reference one.
>> >
>> > Ctrl-clicking on the class declaration opens the class file, as

opposed

to

>> > the source. From this point on, the intentions are not working

anymore.

>> >
>> > I have to clean the output folder to get back on track. Is there a

way

to

>> > tell IDEA not to include the output path in the classpath (I don't

seem

to

>> > find it if it is)?
>> >
>> > Thx,
>> > Andrei
>>
>> --
>> Dmitry Lomov
>> IntelliJ Labs / JetBrains Inc.
>> http://www.intellij.com
>> "Develop with pleasure!"

>

--
Dmitry Lomov
IntelliJ Labs / JetBrains Inc.
http://www.intellij.com
"Develop with pleasure!"



0

It seems you can only add classes to a library that you create on the
Libraries tab of the Main Module properties. If you try to add an
application library or a project library (via the respective buttons on the
Order tab of the Main Module properties), there is no way to add classes to
the libraries. No way that I can find, anyway. :-/

Also, the libraries that you create in the Library tab don't show up in the
list of application libraries or the list of project libraries. Are they
intended to be module specific libraries, or is this just something that's
not working properly yet?

Vil.


Vilya Harvey wrote:

Same here. I can create a named library, add both source and
documentation paths to it, but can't find any way to add the actual
classes. What am I missing?

Vil.

Joseph Gergis wrote:

>> What is a "named library"?
>>
>> I cannot seem to add the actual .jar to a named library, so I don't
>> understand how to group things in this dialog. This is under
>> Application / Project library.

--
Vilya Harvey, Consultant
vilya.harvey@digitalsteps.com / digital steps /
(W) +44 (0)1483 469 480
(M) +44 (0)7816 678 457 http://www.digitalsteps.com/

Disclaimer

This e-mail and any attachments may be confidential and/or legally
privileged. If you have received this email and you are not a named
addressee, please inform the sender at Digital Steps Ltd by phone on
+44 (0)1483 469 480 or by reply email and then delete the email from
your system. If you are not a named addressee you must not use,
disclose, distribute, copy, print or rely on this email. Although
Digital Steps Ltd routinely screens for viruses, addressees should
check this email and any attachments for viruses. Digital Steps Ltd
makes no representation or warranty as to the absence of viruses in this
email or any attachments.

0

Vilya Harvey wrote:

It seems you can only add classes to a library that you create on the
Libraries tab of the Main Module properties. If you try to add an
application library or a project library (via the respective buttons on
the Order tab of the Main Module properties), there is no way to add
classes to the libraries. No way that I can find, anyway. :-/


Go to "Add Project Library" dialog, and choose "Configure".
Application and Project libraries cannot be configured in module libraries
tab. Is this ugly or confusing? Better ideas?


Also, the libraries that you create in the Library tab don't show up in
the list of application libraries or the list of project libraries. Are
they intended to be module specific libraries, or is this just something
that's not working properly yet?


These are module specific libraries.

Friendly,
Dmitry

--
Dmitry Lomov
IntelliJ Labs / JetBrains Inc.
http://www.intellij.com
"Develop with pleasure!"

0

I cannot seem to add the actual .jar to a named library, so I don't

understand how to group things in this dialog. This is under Application /
Project library.

Sorry, this is bug UI bug, there should be button add jar (as in Libraries
tab) ...

BTW in Libraries tab there are two buttons (Add JAR, Add Directory) will it
be good to unite them and how it should be named?

--
Best regards,
Dmitry Peshehonov
JetBrains, Inc, http://www.intellij.com


0

Dmitry Peshehonov wrote:

BTW in Libraries tab there are two buttons (Add JAR, Add Directory) will it
be good to unite them and how it should be named?


"Add JAR/Directory..."

They're basically the same thing as far as the classpath is concerned so
it does make sense to merge them.

Ciao,
Gordon

--
Gordon Tyler (Software Developer)
Quest Software <http://java.quest.com/>
260 King Street East, Toronto, Ontario M5A 4L5, Canada
Voice: 416-643-4846 | Fax: 416-594-1919

0

One thing I miss about the old project structure was the automatic
detection of source paths under the project root (with confirmation). Is
that something you're planning on adding again? Should I file a tracker
request?

I would imagine this coudl be extended to possibly detect test paths as
well.

Thanks
Peter

Thomas Singer wrote:

What is a Content? Even when clicking "Add Content..." a dialog "Select
Path" occurs with the description "Select New Root"????

Tom


0

First, I'm starting to look at it and I'm already missing the clean, simple
previous implementation.

Of course, the new one is much better. It only needs a little simplifying
:)

1. Content is the same as "project path" was.


Content? Whatever can this be? Confusing, very confusing :(

The Project group is "Main Module", why not call this tab "Modules" and name
the button "Add Module"? Or am I missing something here? And in this case,
why name the group "Main Module" and not "Project" or something like it? In
fact, it should be named "Project", as it contains other things than
modules.

2. When you have content added you can add source folders - source path
(tests can be placed in separate sourcepath and compiled to separate

output

path) and exclude folders.


Too many buttons IMHO. Three buttons only: "Add Module", "Add Folder",
"Remove".

"Add Folder" should be context sensitive: selection is in the source tree ->
add sources, etc.

Also, as only sub-directories of the module can be added as folders, the
root directory of the "Add Folder" dialog should be the root directory of
the module.

3. To create classpath go to Libraries tab and add jars (or directories

with

classes) there. You can group jars into "named libraries". Single
jar/directory and group of jars/directories named "library".


Very good. I like this Library tab.

1. Entries should be grouped and sorted: named libs, directories, jars?

2. "Add Named Library" seems ... redundant and confusing. Couldn't the
button just be "Add Library"? And the opened dialog title could be "Name for
the new library" or only "Library Name" or ...

2. I'm getting into deep water here, but IMHO, the source/class/javadoc/...
intermediate nodes add clutter to the entries and seem superfluous. A
simpler tree could be:

somelib
|--(jar icon) somejar.jar
|--(jar icon) anotherjar.jar
|--(src icon) some-src-dir
|--(src icon) another-src.jar
|--(javadoc icon) some-javadoc.dir
|--(javadoc icon) some-javadoc.jar

And the same for jars and directories. The list should be grouped and
sorted.

Note that in here, I'm not much interested if an entry actually points to a
jar or to a directory - what I'm interested in is that it's a source entry:
something with java/xml/... files, a class entry: something with class/...
files, a javadoc entry, etc

Some ways to distinguish what an entry points to, could be:

Two icons: (source icon) (jar icon) source files inside a jar, or (source
icon)(folder icon) source files inside a folder, ... The second icon would
be smaller that the first.

A combination icon: the jar with the source marker, the jar inside a javadoc
icon, ...

4. To order classpath go to order tab. It functions much like old

classpath

tab.
5. To add external sources and/or javadocs go to Libraries choose there
library you want to attach sources/javadocs to and use buttons.
6. To remove anything use remove button.

7. To create Application/Project level library go to Order tab and press

Add

Application/Project Library button.There you can press Configure button

and

get dialog which act like Libraries Tab.


Add Project Library, and Add Application Library??? Libraries without jars
(no add jar button in configure dialog)?

What's a project library? Why is it different than an entry in the libraries
tab?

IMHO the application libraries merit their own tab, just like that normal
libraries.


That's all for now.

Regards,

Carlos


0

First, I'm starting to look at it and I'm already missing the clean, simple
previous implementation.


I am too, but think once this is polished it'll be much better.

The Project group is "Main Module", why not call this tab "Modules" and name
the button "Add Module"? Or am I missing something here? And in this case,
why name the group "Main Module" and not "Project" or something like it? In
fact, it should be named "Project", as it contains other things than
modules.


Agreed. "Project" would be a better name than "Content" (I was thinking this was
something to do with the Web setup at first).

Too many buttons IMHO. Three buttons only: "Add Module", "Add Folder",
"Remove".

"Add Folder" should be context sensitive: selection is in the source tree ->
add sources, etc.

Also, as only sub-directories of the module can be added as folders, the
root directory of the "Add Folder" dialog should be the root directory of
the module.


Yes yes yes.

1. Entries should be grouped and sorted: named libs, directories, jars?


I don't know about grouped, it's already a bit heirarchical in there. As for
ordering this shows up the problem with having ordering on a seperate tab. More
on this later.

2. I'm getting into deep water here, but IMHO, the source/class/javadoc/...
intermediate nodes add clutter to the entries and seem superfluous. A
simpler tree could be:


Agreed. Heirarchical for no real purpose.

0

The Project group is "Main Module", why not call this tab "Modules" and
name the button "Add Module"? Or am I missing something here? And in this
case, why name the group "Main Module" and not "Project" or something
like it? In fact, it should be named "Project", as it contains other
things than
modules.


Completely agree. Is the main module anyhow outstanding out of other
modules?

+1 for making it simpler, currently it's too confusing.

Tom

0

Maybe it would help in understanding the Contents panel, if different icons
were used for Module, Source Folders (why not Source Paths?), Test Source
Folders and Exclude Folders

Tom

0

Hi Dimitry, thanks for the reponse!

Dmitry Lomov wrote:

Vilya Harvey wrote:

>>It seems you can only add classes to a library that you create on the
>>Libraries tab of the Main Module properties. If you try to add an
>>application library or a project library (via the respective buttons on
>>the Order tab of the Main Module properties), there is no way to add
>>classes to the libraries. No way that I can find, anyway. :-/


Go to "Add Project Library" dialog, and choose "Configure".


That's actually what I did. The configure dialog doesn't have a button for
adding jars or directories to the library.

Application and Project libraries cannot be configured in module libraries
tab. Is this ugly or confusing? Better ideas?


I think it would be better to have acess to all library types - module,
project or application level - go through the libraries tab.

Rather than having separate buttons for adding each type of library I'd
prefer to have a single button. This button should bring up a dialog which
lists all libraries of all types; it should be possible to choose a
combination of libraries of any type from this dialog and also to create a
library of any type from it. Just my thoughts, of course.

BTW, I just noticed that you can attach source and javadoc to a jar without
having to create a library. Nice one!

Vil.
--
Vilya Harvey, Consultant
vilya.harvey@digitalsteps.com / digital steps /
(W) +44 (0)1483 469 480
(M) +44 (0)7816 678 457 http://www.digitalsteps.com/

Disclaimer

This e-mail and any attachments may be confidential and/or legally
privileged. If you have received this email and you are not a named
addressee, please inform the sender at Digital Steps Ltd by phone on
+44 (0)1483 469 480 or by reply email and then delete the email from
your system. If you are not a named addressee you must not use,
disclose, distribute, copy, print or rely on this email. Although
Digital Steps Ltd routinely screens for viruses, addressees should
check this email and any attachments for viruses. Digital Steps Ltd
makes no representation or warranty as to the absence of viruses in this
email or any attachments.

0

It seems wrong that the order tab lists the contents of the other tabs (although
]]> is an aggregate), there's duplication in here which creates
confusion.

How's about this for a wacky idea. Combine all three tabs ("Contents",
"Libraries" and "Order") into one. This is the makeup of yuor project and they
are just so inter-related that (to me) it makes more sense. Also modules and
libraries have similarities, they both have collections of sources and classes
and combining this would make it easier to understand.

How would this work?

Well the order tab isn't needed because the one list provides it's own ordering.
That's two buttons: "Move up", "Move down". Could these be named something
different maybe, to indicate that higher (up) in the list takes precedence?

An "Add module" button adds a module. One module would already exist after the
"New project" wizard which shuold stop the current confusion about what a module
is. This works just like "Add content" currently. As Carlos mentioned just one
button could be used to add source, test and exclude folders. I'll call it
"Attach..." though for reasons that will become clear further down. There is
also a "Remove" button that does the logical thing.

Why allow jars, directories and libraries as seperate things when they're all
just "local libraries" (I'd prefer to call them "project libraries" but that
appears to be taken already - I'm not sure what for). The only argument to keep
them seperate (as far as I can tell) is that it's faster to add just a jar or
directory. Here's how it goes. Hit "Add local library...", a directory dialog
pops up where you can mutli select directories and jar files and enter a name.
When you select the first directory/jar then the name can default to that (since
it will be close in most cases). Hit OK. Just as fast as add directory/jar by
themselves while also achieving what "Add named library" currently does in
mutliple steps. IDEA then figures out from what's in these directories/jars what
type they are (classes, source, javadoc) and displays them with different icons.
It could maybe even figure out what type they are back in the directory
selection dialog on the fly and dislpay the icons there - that would be cool.
The "Attach..." button (mentioned above) brings the directory/jar selection
dialog back up, and the "Remove" button does the obvious to the current selection.

"Global" libraries. I haven't figured out what the difference between an
"application" and a "project" library is yet, but when you hit "Add global
library" it should list the application and project libraries (with icons to
differentiate them) and three buttons: "Add selected libraries", "Create
application library", "Create project library". No configure button.
Configuration can be done back within the project options using the "Attach" and
"Remove" buttons as per above, just like you do for local libraries. Why edit
things that are the same in different places? This does create an issue with
changing something in the project options that may change things in other
projects but this could be made obvious to the user (different colored
background in the list, different icons, maybe even - ick - a popup dialog warning).

That's only 7 buttons to do everything - just one more than is on the current
"Libraries" tab alone.

Additional features. Two buttons (seperated from the others, maybe where the
"Add application/project library" buttons are at present): "Make global" that
coverts the selected local library into a global one (either application or
porject, whatever that means) and "Copy to local" that copies a global library
to a local one so you can edit it without changing other projects.

More wackiness: there's another thread going on at the moment about a new
"Package" view along with/instead of the current "Project", "Sourepath" and
"Classpath" views. The above list I've described is begining to sound a lot like
these views combined. Would it be possible to just do all the editing I've
described above out in the project sidebar? It all seems so much the same it
could possibly be "refactored" all together.

Thoughts?

Damon.

0

Carlos Costa e Silva wrote:

First, I'm starting to look at it and I'm already missing the clean,
simple previous implementation.

Of course, the new one is much better. It only needs a little
simplifying
:)

>> 1. Content is the same as "project path" was.


Content? Whatever can this be? Confusing, very confusing :(

The Project group is "Main Module", why not call this tab "Modules" and
name the button "Add Module"? Or am I missing something here? And in this
case, why name the group "Main Module" and not "Project" or something like
it? In fact, it should be named "Project", as it contains other things
than modules.


What you see in "Main module" tab is in fact a configuration of one module.
Currently we have one module per project, but this will change in a near
future. As soon as this changes, we will have an "Add Module" button.

>> 2. When you have content added you can add source folders - source path
>> (tests can be placed in separate sourcepath and compiled to separate

output

>> path) and exclude folders.


Too many buttons IMHO. Three buttons only: "Add Module", "Add Folder",
"Remove".

"Add Folder" should be context sensitive: selection is in the source tree
-> add sources, etc.


If you do not have a source folder, you do not know what is a source tree :)
We have a better idea for content editing: when you add a content for a
mdoule, you get a view with its subdirs, then you mark some of them as
source folders, and exclusde others.


Also, as only sub-directories of the module can be added as folders, the
root directory of the "Add Folder" dialog should be the root directory of
the module.


Agreed. The above suggestion also fixes this.



2. I'm getting into deep water here, but IMHO, the
source/class/javadoc/... intermediate nodes add clutter to the entries and
seem superfluous. A simpler tree could be:

somelib
|--(jar icon) somejar.jar
|--(jar icon) anotherjar.jar
|--(src icon) some-src-dir
|--(src icon) another-src.jar
|--(javadoc icon) some-javadoc.dir
|--(javadoc icon) some-javadoc.jar

And the same for jars and directories. The list should be grouped and
sorted.

Note that in here, I'm not much interested if an entry actually points to
a jar or to a directory - what I'm interested in is that it's a source
entry:
something with java/xml/... files, a class entry: something with
class/... files, a javadoc entry, etc

Some ways to distinguish what an entry points to, could be:

Two icons: (source icon) (jar icon) source files inside a jar, or (source
icon)(folder icon) source files inside a folder, ... The second icon would
be smaller that the first.

A combination icon: the jar with the source marker, the jar inside a
javadoc icon, ...



I guess that is a good idea.

>> 7. To create Application/Project level library go to Order tab and press

Add

>> Application/Project Library button.There you can press Configure button

and

>> get dialog which act like Libraries Tab.


Add Project Library, and Add Application Library??? Libraries without jars
(no add jar button in configure dialog)?

What's a project library? Why is it different than an entry in the
libraries tab?


The point is that those libraries are stored on project level (shared
between modules) or on application level (shared between projects)


IMHO the application libraries merit their own tab, just like that normal
libraries.


Indeed. We will have that eventually.

Friendly,
Dmitry
--
Dmitry Lomov
IntelliJ Labs / JetBrains Inc.
http://www.intellij.com
"Develop with pleasure!"

0

Damon Maria wrote:

It seems wrong that the order tab lists the contents of the other tabs
(although <Module source> is an aggregate), there's duplication in here
which creates confusion.

How's about this for a wacky idea. Combine all three tabs ("Contents",
"Libraries" and "Order") into one. This is the makeup of yuor project
and they are just so inter-related that (to me) it makes more sense.
Also modules and libraries have similarities, they both have collections
of sources and classes and combining this would make it easier to
understand.


+1!

How would this work?

Well the order tab isn't needed because the one list provides it's own
ordering. That's two buttons: "Move up", "Move down". Could these be
named something different maybe, to indicate that higher (up) in the
list takes precedence?


I like the names "Move up" and "Move down", myself. I think most people
know, or can figure out, what they imply.

An "Add module" button adds a module. One module would already exist
after the "New project" wizard which shuold stop the current confusion
about what a module is. This works just like "Add content" currently. As
Carlos mentioned just one button could be used to add source, test and
exclude folders. I'll call it "Attach..." though for reasons that will
become clear further down. There is also a "Remove" button that does the
logical thing.


+1 again, although having a single "Attach..." button would mean that the
Source, Test and Exclude subfolders would have to remain in the tree (it's
been suggested elsewhere that this additional layer of hierarchy is
unnecessary, that the same effect could be achieved more simply by using
different icons to indicate whether something was in the source path, the
test source path or the exclude path).

Why allow jars, directories and libraries as seperate things when
they're all just "local libraries" (I'd prefer to call them "project
libraries" but that appears to be taken already - I'm not sure what
for). <snip>


Implicitly creating a library when adding a jar or directory is a very nice
idea. +1!

"Global" libraries. I haven't figured out what the difference between an
"application" and a "project" library is yet,


An application library is one that's stored with your application
preferences directory and is available across all your projects. A project
library is one that gets stored with your project preferences and is
available to all modules in the project. There's also module-level
libraries, which are only available in the module where they are defined.
That's my understanding, anyway.

............................................... but when you hit "Add
global library" it should list the application and project libraries
(with icons to differentiate them) and three buttons: "Add selected
libraries", "Create application library", "Create project library". No
configure button. Configuration can be done back within the project
options using the "Attach" and "Remove" buttons as per above, just like
you do for local libraries. <snip>


This is pretty close to how I'd like it to work. The difference is that I'd
like to see a single dialog for all libraries that are available in the
current module, grouped according to whether they are application-, project-
or module-level libraries. Then you'd only need a single "Add Library..."
button to launch that dialog. The dialog itself would need to have an extra
button for creating a module-level library.

Additional features. Two buttons (seperated from the others, maybe where
the "Add application/project library" buttons are at present): "Make
global" that coverts the selected local library into a global one
(either application or porject, whatever that means) and "Copy to local"
that copies a global library to a local one so you can edit it without
changing other projects.


Very good idea.

More wackiness: there's another thread going on at the moment about a
new "Package" view along with/instead of the current "Project",
"Sourepath" and "Classpath" views. The above list I've described is
begining to sound a lot like these views combined. Would it be possible
to just do all the editing I've described above out in the project
sidebar? It all seems so much the same it could possibly be "refactored"
all together.


It sounds like it could be done, but that doesn't necessarily mean it
should be done. I personally like the clarity of having separate UIs for
the two functions. Not sure how others feel about it though...

Thoughts?

Damon.


Vil.
--
Vilya Harvey, Consultant
vilya.harvey@digitalsteps.com / digital steps /
(W) +44 (0)1483 469 480
(M) +44 (0)7816 678 457 http://www.digitalsteps.com/

Disclaimer

This e-mail and any attachments may be confidential and/or legally
privileged. If you have received this email and you are not a named
addressee, please inform the sender at Digital Steps Ltd by phone on
+44 (0)1483 469 480 or by reply email and then delete the email from
your system. If you are not a named addressee you must not use,
disclose, distribute, copy, print or rely on this email. Although
Digital Steps Ltd routinely screens for viruses, addressees should
check this email and any attachments for viruses. Digital Steps Ltd
makes no representation or warranty as to the absence of viruses in this
email or any attachments.

0

One thing I miss about the old project structure was the automatic
detection of source paths under the project root (with confirmation). Is
that something you're planning on adding again? Should I file a tracker
request?


Yes, it's planned.
>

I would imagine this coudl be extended to possibly detect test paths as
well.


That we didn't think about yet. Any ideas how it should be done?

--
Valentin Kipiatkov
JetBrains, Inc
http://www.intellij.com
"Develop with pleasure!"


"Peter Mularien" <pmularien@dNeOpSlPoAyM.com> wrote in message
news:ba0uf1$3td$2@is.intellij.net...

One thing I miss about the old project structure was the automatic
detection of source paths under the project root (with confirmation). Is
that something you're planning on adding again? Should I file a tracker
request?

>

I would imagine this coudl be extended to possibly detect test paths as
well.

>

Thanks
Peter

>

Thomas Singer wrote:

>

What is a Content? Even when clicking "Add Content..." a dialog "Select
Path" occurs with the description "Select New Root"????

>

Tom

>


0


"Nathan Brown" <nedski@yahoo.com> wrote in message
news:ba0fe9$57v$1@is.intellij.net...

Add a named library to the tree, then make sure it's selected and click

Add

JAR... Works the same for source or javadoc.
(Note this is in the Libraries tab)


Yeah I just figured that out, I like the FEATURE, but the interface to
understand to do this... boy we're WAY off the mark here.

I'm trying to think of a better way for this, and the only thing I can think
of is:

Click to add the name of the library, the popup window should be more than
just a text box, I think I'd like to see a text box with a list of
directories that I can navigate, to add those files. Let me add as many
that I want, perhaps by having a simple add button which adds the jar file
to a list undeneath the nav window, then when I'm done adding, click finish
and see the whole thing done in one shot.

The interface is pretty counter intuitive, but the idea of grouping
libraries with their docs in a tree view is excellent.

R


0

>>I would imagine this coudl be extended to possibly detect test paths as
>>well.

That we didn't think about yet. Any ideas how it should be done?


Well, I assume you detect source paths by looking at the file extensions
in the path. Perhaps if you saw Java files in the path, you could go
one step further to see whether they extend any of the interesting JUnit
classes, at which point the path would be a good candidate for being in
the "Test Paths" folder. Other cues might be if the folder is called
something common, like "test" or "tests" or "junit" and appears to have
a valid package structure below it.

Peter

0

Please sign in to leave a comment.