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 81330

Summary: Remove SDI mode
Product: platform Reporter: David Simonek <dsimonek>
Component: Window SystemAssignee: issues@platform <issues>
Status: STARTED ---    
Severity: blocker CC: jskrivanek, jtulach, mmirilovic
Priority: P3 Keywords: API
Version: 6.x   
Hardware: All   
OS: All   
Issue Type: TASK Exception Reporter:
Bug Depends on:    
Bug Blocks: 50352    
Attachments: diff to architecture questions
changes in apichanges :-)

Description David Simonek 2006-07-28 13:03:53 UTC
With current work on undock from MDI (50352), SDI mode is no longer needed. It
is replaced by existence of separated windows, which in fact is more powerful
then old SDI.

From API point of view, it is semantically incompatible change, as command line
property netbeans.windows=sdi won't work anymore. Change is described in
attached diffs.
Comment 1 David Simonek 2006-07-28 13:16:25 UTC
Created attachment 32294 [details]
diff to architecture questions
Comment 2 David Simonek 2006-07-28 13:19:18 UTC
Created attachment 32295 [details]
changes in apichanges :-)
Comment 3 David Simonek 2006-07-28 13:55:19 UTC
Some further comments:

This change may look dangerous, but in fact it isn't. Here is what will happen:

1) IDE Users that has saved NetBeans config in SDI mode from older version - IDE
will start always in MDI mode and users can restore their desired state by few
DnDs, with now more powerful ability to have separated even editor windows.

2) For module writers, nothing has changed now. DTDs for winsys layout xml are
planned co change compatibly in short future, but for now it stays the same.

3) Developers working on Netbeans platform. If they were using SDI mode
primarily for their apps, now they just need to ensure that their mode's xml
defining separate windows contain <state type=separated />, and they will get
the same fuinctionality as in old SDI, even with some improvements.
Comment 4 Jiri Skrivanek 2006-07-28 14:17:25 UTC
What is the timeframe? From testing tools point of view before SDI mode is
removed we need to:

- update the commit validation suite (remove or update testSeparateWindowsMode)
- remove SDI related stuff from Jellytools
- remove usage of netbeans.windows property from XTest

It should not take much time and I can do it.
Comment 5 David Simonek 2006-08-01 16:44:31 UTC
Timing - after two or three weeks I guess, when there will be no pushback from
other teams. Floating windows functionality will hopefully be integrated into
main trunk later this week, but SDI removal must wait for agreement from other
teams.
Comment 6 Jaroslav Tulach 2006-12-01 10:36:32 UTC
Is this fixed and can it be closed or not?
Comment 7 David Simonek 2006-12-01 15:21:39 UTC
No, this issue is still in progress, as it requires agreement from other teams
which I didn't receive yet. However API review is done I believe, taking back.
Comment 8 David Simonek 2007-03-06 13:09:53 UTC
SDI mode removed from GUI and command line option, impl inside winsys will be
changed in next steps.

Removing core/windows/src/org/netbeans/core/windows/UIModeHandler.java;
/cvs/core/windows/src/org/netbeans/core/windows/UIModeHandler.java,v  <-- 
UIModeHandler.java
new revision: delete; previous revision: 1.5
done
Checking in core/windows/src/org/netbeans/core/windows/PersistenceHandler.java;
/cvs/core/windows/src/org/netbeans/core/windows/PersistenceHandler.java,v  <-- 
PersistenceHandler.java
new revision: 1.49; previous revision: 1.48
done
Checking in core/windows/src/org/netbeans/core/windows/WindowManagerImpl.java;
/cvs/core/windows/src/org/netbeans/core/windows/WindowManagerImpl.java,v  <-- 
WindowManagerImpl.java
new revision: 1.58; previous revision: 1.57
done
Checking in core/windows/src/org/netbeans/core/windows/Constants.java;
/cvs/core/windows/src/org/netbeans/core/windows/Constants.java,v  <-- 
Constants.java
new revision: 1.20; previous revision: 1.19
done
Checking in openide/arch/arch-openide-windowsystem.xml;
/cvs/openide/arch/arch-openide-windowsystem.xml,v  <-- 
arch-openide-windowsystem.xml
new revision: 1.53; previous revision: 1.52
done
Removing core/src/org/netbeans/core/UIModePropertyEditor.java;
/cvs/core/src/org/netbeans/core/UIModePropertyEditor.java,v  <-- 
UIModePropertyEditor.java
new revision: delete; previous revision: 1.6
done
Checking in core/src/org/netbeans/core/IDESettings.java;
/cvs/core/src/org/netbeans/core/IDESettings.java,v  <--  IDESettings.java
new revision: 1.88; previous revision: 1.87
done
Checking in core/src/org/netbeans/core/IDESettingsBeanInfo.java;
/cvs/core/src/org/netbeans/core/IDESettingsBeanInfo.java,v  <-- 
IDESettingsBeanInfo.java
new revision: 1.49; previous revision: 1.48
done
Checking in openide/windows/apichanges.xml;
/cvs/openide/windows/apichanges.xml,v  <--  apichanges.xml
new revision: 1.12; previous revision: 1.11
done
Checking in openide/windows/manifest.mf;
/cvs/openide/windows/manifest.mf,v  <--  manifest.mf
new revision: 1.14; previous revision: 1.13
done
Checking in
core/windows/src/org/netbeans/core/windows/view/ui/toolbars/ToolbarConfiguration.java;
/cvs/core/windows/src/org/netbeans/core/windows/view/ui/toolbars/ToolbarConfiguration.java,v
 <--  ToolbarConfiguration.java
new revision: 1.43; previous revision: 1.42
done
Comment 9 _ wadechandler 2007-05-11 15:39:26 UTC
A note to add, a user has just mentioned that he used SDI and window placement
was remembered.  He wants Windows placement and docking remembered between
closing and opening files with undocking.  This would be similar to what the
Swing Application Framework does with its Window placement for it's main window.
 Any ideas here?
Comment 10 _ wadechandler 2007-05-11 15:43:29 UTC
I noticed in the UI spec document this is to work this way for the main top
components.  The user mentioned wants this to work for editor tabs and all.
Comment 11 David Simonek 2007-10-23 17:02:15 UTC
Changing the issue to task, what remains is code cleanup of now obsolete classes and parts of model.
wadechandler , to discuss new or desired behavior please use mailing lists and/or new enhancements/defects in
IssueZilla, thanks.