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 29836 - Redesign window system implementation
Summary: Redesign window system implementation
Status: VERIFIED FIXED
Alias: None
Product: platform
Classification: Unclassified
Component: Window System (show other bugs)
Version: 3.x
Hardware: All All
: P1 blocker (vote)
Assignee: Peter Zavadsky
URL: http://core.netbeans.org/windowsystem...
Keywords:
Depends on: 32211 32212 32213 32214 32224 32228 32336 32403 32404 32405 32468 32477 34734 36118 36124
Blocks: 35607 35581 35584 35650 35698
  Show dependency tree
 
Reported: 2003-01-07 16:48 UTC by Peter Zavadsky
Modified: 2008-12-23 09:39 UTC (History)
9 users (show)

See Also:
Issue Type: TASK
Exception Reporter:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Peter Zavadsky 2003-01-07 16:48:29 UTC
It seems to me there is necessary to redesign the
current window system implementation.

There are various targets which the most general
is achieving easier maintainance of the window
system, there are also targets like removing some
problematic classes, e.g. DeferredPerformer which
adds some level of non-deterministic behaviour in
window sys.

I think it is possible to achieve good desing
followin MVC(Model-View-Controller) architecture,
where all three part will be separated from each
other. Each component will be devided to three
level (1= window system, workspaces as data, main
window as view, 2= workspace level, modes as data,
their frames as views, 3= modes, topcomponents as
data, and their mode containers as views)
The controllers will work that way, they will
observe user interaction to view, and update the
model acordinly.
Note the current WindowManager, Workspace, Mode
are not considered as some component of MVC, but
it will consist of them. 

There is also additional part dealing with this
kind of MVC, i.e. the persistence level,
especially its lazy loading. Currently I havae in
mind, the lazy updater coudl directly update model
data, when triggerred by request from the
"encapsulated" component, i.e. WindowManager,
Workspace or Mode.
Comment 1 Peter Zavadsky 2003-01-10 13:50:05 UTC
Created branch winsys_29836 in core module. (winsys_29836_root is root
of branch).
Comment 2 Peter Zavadsky 2003-03-22 10:56:37 UTC
Merged trunk (build BLD200303210100) to the branch (winsys_29836).
(tags, winsys_29836_before_BLD200303210100_merge
       winsys_29836_after_BLD200303210100_merge)

Instructions for those who will work on the branch.
1) Checkout all modules except the core with BLD200303210100 tag
2) Checkout core module with winsys_29836 tag
3) build & run, it should work.
Comment 3 Peter Zavadsky 2003-03-30 09:35:47 UTC
I updated the branch from trunk (It had a problem editor module
created wrongly dependency on core - windows). Now it is "rooted" to
BLD200303280100.
Also added to branch modules (debuggercore, form [both due to chaning
component and tc sets], and projects [for handling project switch].

So the new instructions for branch developers are:
1) checkout all modules except the core,debuggercore,form and projects
with BLD200303280100 tag,
2) checkout core,debuggercore,form,projects modules with winsys_29836 tag,
3) build & run etc.

Comment 4 Peter Zavadsky 2003-03-30 15:54:14 UTC
To the above modules is added also nbbuild, "rooted" from
BLD200303280100 too.
Comment 5 Peter Zavadsky 2003-05-15 15:40:10 UTC
Updating from trunk to tag BLD200305150100.

Updated modules: core, debuggercore, form, nbbuild, projects;
Tags: winsys_29836_before_BLD200315050100_merge,
      winsys_29836_after_BLD200315050100_merge

Branched also openide module:

New instructions for building from branch:

1) Checkout all except the next specified modules with tag
BLD200305150100 tag.
2) Checkout 
    core, debuggercore, form, nbbuild, openide, projects
with winsys_29836 tag.
3) build and run as usual.

Comment 6 Peter Zavadsky 2003-06-04 16:51:07 UTC
Added to branched modules tag "winsys_29836_1"

It is possible to try it out. There is not the UI yet, some bugs in
actions etc. (some actions remained in View menu -> not branched), but
it is possible to work with, manipulate windows, open, close, attach,
etc. There are also used form and debugger groups (sets). 
Comment 7 Peter Zavadsky 2003-08-05 16:54:32 UTC
Updating from trunk to tag BLD200308040100 (to get the new property
sheets).

Updated modules: core, debuggercore, form, nbbuild, projects;
Tags: winsys_29836_before_BLD200308040100_merge,
      winsys_29836_after_BLD200308040100_merge

Branched also openide module:

New instructions for building from branch:

1) Checkout all except the next specified modules with tag
BLD200308040100 tag.
2) Checkout 
    core, debuggercore, form, nbbuild, openide, projects
with winsys_29836 tag.
3) build and run as usual.

Comment 8 Peter Zavadsky 2003-09-22 17:28:43 UTC
Another update from trunk. Now to tag BLD200309220100.

Updated modules: core, debuggercore, form, nbbuild, openide, projects;
Tags: winsys_29836_before_BLD200309220100_merge,
      winsys_29836_after_BLD200309220100_merge

New instructions for building from branch:

1) Checkout all except the next specified modules with tag
BLD200309220100 tag.
2) Checkout 
    core, debuggercore, form, nbbuild, openide, projects
with winsys_29836 tag.
3) build and run as usual.
Comment 9 Peter Zavadsky 2003-10-15 15:47:01 UTC
Another update from trunk. Now to tag BLD200310150100.

Updated modules: core, debuggercore, form, nbbuild, openide, projects;
Tags: winsys_29836_before_BLD200310150100_merge,
      winsys_29836_after_BLD200310150100_merge

New instructions for building from branch:

1) Checkout all except the next specified modules with tag
BLD200310150100 tag.
2) Checkout 
    core, debuggercore, form, nbbuild, openide, projects
with winsys_29836 tag.
3) build and run as usual.
Comment 10 Peter Zavadsky 2003-10-29 10:21:35 UTC
Another update from trunk. Now to tag BLD200310281900.

Updated modules: core, debuggercore, form, nbbuild, openide, projects;
Tags: winsys_29836_before_BLD200310281900_merge,
      winsys_29836_after_BLD200310281900_merge

New instructions for building from branch:

1) Checkout all except the next specified modules with tag
BLD200310281900 tag.
2) Checkout 
    core, debuggercore, form, nbbuild, openide, projects
with winsys_29836 tag.
3) build and run as usual.
Comment 11 Peter Zavadsky 2003-11-11 12:45:42 UTC
Last synch with trunk before the merge. Now to tag BLD200311101900.

Updated modules: core, debuggercore, form, nbbuild, openide, projects;
Tags: winsys_29836_before_BLD200311101900_merge,
      winsys_29836_after_BLD200311101900_merge

New instructions for building from branch:

1) Checkout all except the next specified modules with tag
BLD200311101900 tag.
2) Checkout 
    core, debuggercore, form, nbbuild, openide, projects
with winsys_29836 tag.
3) build and run as usual.
Comment 12 Peter Zavadsky 2003-11-12 08:41:58 UTC
Branch merged into trunk, see issue #36118.
Comment 13 Marian Mirilovic 2004-03-01 08:53:30 UTC
issue doesn't apply to new window system - verified