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 41291 - [2004-04-22] Multiview and (Cloneable)EditorSupport
Summary: [2004-04-22] Multiview and (Cloneable)EditorSupport
Status: CLOSED FIXED
Alias: None
Product: platform
Classification: Unclassified
Component: Window System (show other bugs)
Version: 4.x
Hardware: PC Linux
: P1 blocker (vote)
Assignee: Milos Kleint
URL:
Keywords:
Depends on:
Blocks: 19871 41085
  Show dependency tree
 
Reported: 2004-03-24 17:11 UTC by Jaroslav Tulach
Modified: 2008-12-22 15:59 UTC (History)
2 users (show)

See Also:
Issue Type: TASK
Exception Reporter:


Attachments
Introducing CES.Pane to allow other TopComponents to implement it and delegate to CloneableEditor (8.07 KB, patch)
2004-04-02 13:58 UTC, Jaroslav Tulach
Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Jaroslav Tulach 2004-03-24 17:11:09 UTC
In order to minimize the migration work for other
to do the multiview should work with existing
CloneableEditorSupport subclasses and alas also
with EditorSupport (because java team is pretty
busy and is not expected to spend some time on
migration during promoD). 

The major concern is ability to embed
CloneableEditor as one element in multiview and
correct implementation of
(Cloneable)EditorSupport.getOpenedPanes() Please
write test suite to verify the level of compatibility.
Comment 1 Milos Kleint 2004-03-25 15:05:10 UTC
I could not find any current tests focusing on
EditorSupport/CloneableEditorSupport behaviour. How can I then define
compatibility then? 
can the current CloneableEditorSupportTest be of any help?
Comment 2 Jaroslav Tulach 2004-03-25 15:34:23 UTC
CloneableEditorSupportTest defines basic behaviour and should give you
an idea how to write tests. You can use it as inspiration, but you
cannot just plug into it. Moreover it does not focus on
getEditorPanes() functionality at all. However the interaction between
multiview and the support will be unique anyway, reuse of the old
tests is hard to imagine.
Comment 3 Milos Kleint 2004-03-25 15:40:57 UTC
Weel, I was more interested in the used contract between API user and
the API. And the test interation is simplified compared to real-life
example. Also clearly shows what is actually supported.
Comment 4 Jaroslav Tulach 2004-04-02 13:58:16 UTC
Created attachment 14259 [details]
Introducing CES.Pane to allow other TopComponents to implement it and delegate to CloneableEditor
Comment 5 Milos Kleint 2004-04-13 09:02:14 UTC
reassigning
Comment 6 Milos Kleint 2004-04-22 07:42:21 UTC
http://openide.netbeans.org/source/browse/openide/src/org/openide/text/?only_with_tag=multiview_march2004
files in openide.text that changed. NnDocument, CloneableEditorSupport
and CloneableEditor changed APIs.

EditorSupport rewritten, changes verified by implementing basic
MultiView impl for form module.

Test not written yet.
Comment 7 Milos Kleint 2004-04-28 13:35:27 UTC
test written.
Comment 8 Jaroslav Tulach 2004-04-28 14:00:37 UTC
I'd like to suggest some changes:

1. when doing assert in other thread then the original one that
executed the test, the failure is never reported (aka invokeLater+assert)

2. override method runInEQ() and you do not need to mangle with AWT
anymore. CloneableOpenSupport seems to do Mutex.EVENT.writeAccess
which is synchronous when run from AWT thread

3. suggestion for test. Make sure that: 
Line line = support.getLineSet().getCurrent(0);
line.show(Line.SHOW_SHOW);
calls to yourTopComponent.requestActivated()

Comment 9 Milos Kleint 2004-04-28 15:05:22 UTC
done
Comment 10 Jaroslav Tulach 2004-04-28 15:57:23 UTC
Fine.