This Bugzilla instance is a read-only archive of historic NetBeans bug reports. To report a bug in NetBeans please follow the project's instructions for reporting issues.

Bug 28048 - Declare root nodes used in explorer via xml layer
Summary: Declare root nodes used in explorer via xml layer
Status: VERIFIED FIXED
Alias: None
Product: platform
Classification: Unclassified
Component: Window System (show other bugs)
Version: 3.x
Hardware: All All
: P2 blocker (vote)
Assignee: Peter Zavadsky
URL:
Keywords: API
Depends on:
Blocks: 19443 22758
  Show dependency tree
 
Reported: 2002-10-16 15:07 UTC by Peter Zavadsky
Modified: 2008-12-23 09:41 UTC (History)
2 users (show)

See Also:
Issue Type: DEFECT
Exception Reporter:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Peter Zavadsky 2002-10-16 15:07:52 UTC
This is mentioned in issue #19443, #25017, #22758.

It is necessary to solve ASAP, to be able to deal
with project tab at least. Currently only
temporary solution is on route.
Comment 1 Peter Zavadsky 2002-10-16 15:45:19 UTC
Currently only via hack in NbPlaces.projectDesktop and projects xml
layer, is Project node set to Project tab.
Comment 2 Peter Zavadsky 2002-10-16 16:06:36 UTC
As I understand it is necessary to make this:

1) Register the roots in xml in some folder (Nodes/ExplorerRoots ?)
2) Retrieve those roots in NbMainExplorer and work with them
3) For backward compatibility, when loading old roots from maninfest
convert them to the xml.
Comment 3 Jesse Glick 2002-10-16 17:00:21 UTC
AFAIK this is not what we actually want to do. There is already an
adequate API for adding Explorer tabs - the Window System API's XML
declaration system. Issue #22758 requests that this actually be done
for the standard tabs; then manifest root installation would still be
deprecated and there would be no direct layer equivalent.

You also need to add menu items to the View menu and redisplay logic,
though, so the actual impl might not be so easy. But there is nothing
privileged about NbMainExplorer's impl, any module could do this I think.

But I feel that having the core not only create Explorer tabs, but
also menu items, automatically from a single layer file is too
high-level and magical and not a great API. I don't agree with the
style of the hack in place for the Project tab now.

Anyway UI/ExplorerRoots/ is a more suitable folder name, probably.
Comment 4 Peter Zavadsky 2002-10-16 17:44:42 UTC
I confused even more now.

I thought the WindowSystem xml API isn't enough, that it just
registers the components to the explorer.
And that the registering of root nodes is needed so the project tab
component gets the proper one.

Yes, the hack is ugly (I marked is as temporary in the sense this
issue should fix it).

But remains the question what the solution of the project node should be?
I guess you have in mind moving the actual project tab component impl
to projects and make it working from there. Right?
Comment 5 Jesse Glick 2002-10-16 22:04:36 UTC
"I thought the WindowSystem xml API isn't enough, that it just
registers the components to the explorer." - right, and then you need
one menu action action to display it.

"I guess you have in mind moving the actual project tab component impl
to projects and make it working from there. Right?" - yes, delete it
from core entirely.
Comment 6 Peter Zavadsky 2002-10-17 15:04:17 UTC
Fixed in [trunk]
moved the actual project tab component impl into projects module.
Removed the hack and created actions in menu to represent the explorer
components, the defaults are filesystems, runtime (def in core), and
projects (in projects), other roots are retrieved be ExplorerRootsAction.

core/../NbPlaces.java 1.63
       /actions/Bundle.properties 1.124
       /actions/ExplorerRootsAction.java 1.2
       /actions/ViewFilesystemsTabAction 1.1
       /actions/ViewRuntimeTabAction 1.1
 
projects/../Bundle.properties 1.57
           /CurrentProjectNode.java 1.2
           /ViewProjectsTabAction 1.1
           /MiniStatusBar.java 1.1
           /resources/project-layer.xml 1.30
           /resources/components/project.settings 1.3
Comment 7 Marian Mirilovic 2004-03-01 08:55:29 UTC
issue doesn't apply to new window system - verified