本文整理汇总了Java中org.openide.windows.CloneableTopComponent类的典型用法代码示例。如果您正苦于以下问题:Java CloneableTopComponent类的具体用法?Java CloneableTopComponent怎么用?Java CloneableTopComponent使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
CloneableTopComponent类属于org.openide.windows包,在下文中一共展示了CloneableTopComponent类的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: addPropertyChangeListeners
import org.openide.windows.CloneableTopComponent; //导入依赖的package包/类
private void addPropertyChangeListeners() {
if( null != model ) {
for (MultiViewDescription mvd : model.getDescriptions()) {
if( mvd instanceof ContextAwareDescription && ((ContextAwareDescription)mvd).isSplitDescription() )
continue; //#240371 - don't update name from spit elements
MultiViewElement el = model.getElementForDescription( mvd, false );
if (el == null) {
continue;
}
if (el.getVisualRepresentation() instanceof Pane) {
Pane pane = (Pane)el.getVisualRepresentation();
final CloneableTopComponent tc = pane.getComponent();
if (!Arrays.asList(tc.getPropertyChangeListeners()).contains(propListener)) {
tc.addPropertyChangeListener(propListener);
}
}
}
}
}
示例2: updateName
import org.openide.windows.CloneableTopComponent; //导入依赖的package包/类
public void updateName() {
// is called before setMultiViewDescriptions() need to check for null.
if (model != null) {
for (MultiViewDescription mvd : model.getDescriptions()) {
if( mvd instanceof ContextAwareDescription && ((ContextAwareDescription)mvd).isSplitDescription() )
continue; //#240371 - don't update name from spit elements
MultiViewElement el = model.getElementForDescription(
mvd, MultiViewCloneableTopComponent.isSourceView(mvd)
);
if (el == null) {
continue;
}
if (el.getVisualRepresentation() instanceof Pane) {
Pane pane = (Pane)el.getVisualRepresentation();
pane.updateName();
final CloneableTopComponent tc = pane.getComponent();
peer.setDisplayName(tc.getDisplayName());
peer.setIcon(tc.getIcon());
if (!Arrays.asList(tc.getPropertyChangeListeners()).contains(propListener)) {
tc.addPropertyChangeListener(propListener);
}
}
}
}
}
示例3: testLookupInitializedForCloneable
import org.openide.windows.CloneableTopComponent; //导入依赖的package包/类
public void testLookupInitializedForCloneable() {
InstanceContent ic = new InstanceContent();
Lookup lookup = new AbstractLookup(ic);
ic.add(10);
CloneableTopComponent cmv = MultiViews.createCloneableMultiView("text/context", new LP(lookup));
assertEquals("10 now", Integer.valueOf(10), cmv.getLookup().lookup(Integer.class));
assertNotNull("MultiViewComponent created", cmv);
TopComponent mvc = cmv.cloneTopComponent();
assertNotNull("MultiViewComponent cloned", mvc);
MultiViewHandler handler = MultiViews.findMultiViewHandler(mvc);
assertNotNull("Handler found", handler);
assertEquals("10 now", Integer.valueOf(10), mvc.getLookup().lookup(Integer.class));
ic.remove(10);
ic.add(1);
assertEquals("1 now", Integer.valueOf(1), mvc.getLookup().lookup(Integer.class));
}
示例4: setTopComponent
import org.openide.windows.CloneableTopComponent; //导入依赖的package包/类
/** This is called by the multiview elements whenever they are created
* (and given a observer knowing their multiview TopComponent). It is
* important during deserialization and clonig the multiview - i.e. during
* the operations we have no control over. But anytime a multiview is
* created, this method gets called.
*/
private void setTopComponent(TopComponent topComp) {
multiviewTC = (CloneableTopComponent)topComp;
updateMVTCName();
if (topComponentsListener == null) {
topComponentsListener = new TopComponentsListener();
TopComponent.getRegistry().addPropertyChangeListener(topComponentsListener);
}
opened.add(this);
try {
addStatusListener(getDataObject().getPrimaryFile().getFileSystem());
} catch (FileStateInvalidException fsiex) {
Exceptions.printStackTrace(fsiex);
}
}
示例5: updateMVTCNameInAwt
import org.openide.windows.CloneableTopComponent; //导入依赖的package包/类
private void updateMVTCNameInAwt() {
CloneableTopComponent topComp = multiviewTC;
if (topComp != null) {
String htmlname = messageHtmlName();
String name = messageName();
String tip = messageToolTip();
for (CloneableTopComponent o : NbCollections.
iterable(topComp.getReference().getComponents())) {
topComp.setHtmlDisplayName(htmlname);
topComp.setDisplayName(name);
topComp.setName(name);
topComp.setToolTipText(tip);
}
}
}
示例6: openView
import org.openide.windows.CloneableTopComponent; //导入依赖的package包/类
/**
* Opens the view identified by given <code>index</code>
* and calls <code>#openDocument()</code>.
* @param index the index of the view to be opened.
*/
void openView(final int index) {
Utils.runInAwtDispatchThread(new Runnable() {
public void run() {
CloneableTopComponent mvtc = openCloneableTopComponent();
MultiViewHandler handler = MultiViews.findMultiViewHandler(mvtc);
handler.requestVisible(handler.getPerspectives()[index < 0 ? xmlMultiViewIndex : index]);
mvtc.requestActive();
}
});
try {
openDocument();
} catch (IOException ex) {
ErrorManager.getDefault().notify(ex);
}
}
示例7: canClose
import org.openide.windows.CloneableTopComponent; //导入依赖的package包/类
public boolean canClose() {
final CloneableTopComponent topComponent = ((CloneableTopComponent) getEditorSupport().getMVTC());
if (topComponent != null){
Enumeration enumeration = topComponent.getReference().getComponents();
if (enumeration.hasMoreElements()) {
enumeration.nextElement();
if (enumeration.hasMoreElements()) {
return true;
}
}
}
FileLock lock;
try {
lock = waitForLock();
} catch (IOException e) {
ErrorManager.getDefault().notify(e);
return !isModified();
}
try {
return !isModified();
} finally {
lock.releaseLock();
}
}
示例8: testDocumentIsSaved
import org.openide.windows.CloneableTopComponent; //导入依赖的package包/类
public void testDocumentIsSaved() throws Exception {
support.open();
Document doc = support.openDocument();
doc.insertString(0, "test", null);
CloneableTopComponent ctc = (CloneableTopComponent) support.getAllEditors().getComponents().nextElement();
SQLCloneableEditor editor = ctc.getLookup().lookup(SQLCloneableEditor.class);
editor.componentDeactivated();
assertTrue(support.saveDocumentCalled);
support.saveDocumentCalled = false;
doc.insertString(0, "test", null);
editor.writeExternal(new ObjectOutputStream(new ByteArrayOutputStream()));
assertTrue(support.saveDocumentCalled);
support.close();
}
示例9: testDocumentIsNotSavedOnComponentDeactivatedOrWriteExternal
import org.openide.windows.CloneableTopComponent; //导入依赖的package包/类
public void testDocumentIsNotSavedOnComponentDeactivatedOrWriteExternal() throws Exception {
support.open();
Document doc = support.openDocument();
doc.insertString(0, "test", null);
CloneableTopComponent ctc = (CloneableTopComponent) support.getAllEditors().getComponents().nextElement();
SQLCloneableEditor editor = ctc.getLookup().lookup(SQLCloneableEditor.class);
editor.componentDeactivated();
assertFalse(support.saveDocumentCalled);
doc.insertString(0, "test", null);
editor.writeExternal(new ObjectOutputStream(new ByteArrayOutputStream()));
assertFalse(support.saveDocumentCalled);
// XXX should test support.close() here, but how, since canClose() displays a dialog box?
//support.close();
}
示例10: reload
import org.openide.windows.CloneableTopComponent; //导入依赖的package包/类
/** Ask and reload/close image views. */
private void reload(FileEvent evt) {
// ask if reload?
// XXX the following is a resource path in NB 3.x and a URL after build system
// merge; better to produce something nicer (e.g. FileUtil.toFile):
String msg = NbBundle.getMessage(ImageOpenSupport.class, "MSG_ExternalChange", entry.getFile() );
NotifyDescriptor nd = new NotifyDescriptor.Confirmation(msg, NotifyDescriptor.YES_NO_OPTION);
Object ret = DialogDisplayer.getDefault().notify(nd);
if (NotifyDescriptor.YES_OPTION.equals(ret)) {
// due to compiler 1.2 bug only
final ImageDataObject imageObj = (ImageDataObject)entry.getDataObject();
final CloneableTopComponent.Ref editors = allEditors;
Enumeration e = editors.getComponents();
while(e.hasMoreElements()) {
final Object pane = e.nextElement();
SwingUtilities.invokeLater(new Runnable() {
public void run() {
((ImageViewer)pane).updateView(imageObj);
}
});
}
}
}
示例11: setTopComponent
import org.openide.windows.CloneableTopComponent; //导入依赖的package包/类
/** This is called by the multiview elements whenever they are created
* (and given a observer knowing their multiview TopComponent). It is
* important during deserialization and cloning the multiview - i.e. during
* the operations we have no control over. But anytime a multiview is
* created, this method gets called.
*/
void setTopComponent(TopComponent topComp) {
multiviewTC = (CloneableTopComponent)topComp;
String[] titles = getMVTCDisplayName(formDataObject);
multiviewTC.setDisplayName(titles[0]);
multiviewTC.setHtmlDisplayName(titles[1]);
multiviewTC.setToolTipText(getMVTCToolTipText(formDataObject));
opened.add(this);
registerNodeListener();
attachTopComponentsListener();
try {
addStatusListener(formDataObject.getPrimaryFile().getFileSystem());
} catch (FileStateInvalidException fsiex) {
fsiex.printStackTrace();
}
}
示例12: createCloneableTopComponent
import org.openide.windows.CloneableTopComponent; //导入依赖的package包/类
@Override
protected CloneableTopComponent createCloneableTopComponent() {
TLDataObject dataObject = (TLDataObject) entry.getDataObject();
MVTimelineDescription timelineDescription = new MVTimelineDescription(dataObject);
MVMapDescription mapDescription = new MVMapDescription(dataObject);
MultiViewDescription[] tcViewDescriptions = new MultiViewDescription[]{
timelineDescription,
mapDescription
};
// Create component representing experiment
CloneableTopComponent tc = MultiViewFactory.createCloneableMultiView(
tcViewDescriptions,
timelineDescription);
tc.setDisplayName(dataObject.getPrimaryFile().getNameExt());
return tc;
}
示例13: isFromEditorWindow
import org.openide.windows.CloneableTopComponent; //导入依赖的package包/类
protected boolean isFromEditorWindow(DataObject dobj,
final TopComponent tc) {
final EditorCookie editor = dobj.getLookup().lookup(
EditorCookie.class);
if (editor != null) {
return Mutex.EVENT.readAccess(new Action<Boolean>() {
@Override
public Boolean run() {
return (tc instanceof CloneableTopComponent) // #246597
|| NbDocument.findRecentEditorPane(editor) != null;
}
});
}
return false;
}
示例14: createClonedObject
import org.openide.windows.CloneableTopComponent; //导入依赖的package包/类
@Override
protected CloneableTopComponent createClonedObject() {
MultiViewCloneableTopComponent tc = new MultiViewCloneableTopComponent();
tc.setMultiViewDescriptions(peer.model.getDescriptions(), getActiveDescription());
tc.setCloseOperationHandler(peer.closeHandler);
tc.peer.copyMimeContext(peer);
if(getSplitOrientation() != -1) {
tc.splitComponent(getSplitOrientation(), -1);
tc.updateName();
}
return tc;
}
示例15: testCloneableMultiViewsSerialize
import org.openide.windows.CloneableTopComponent; //导入依赖的package包/类
public void testCloneableMultiViewsSerialize() throws Exception {
InstanceContent ic = new InstanceContent();
Lookup lookup = new AbstractLookup(ic);
CloneableTopComponent cmv = MultiViews.createCloneableMultiView("text/context", new LP(lookup));
assertPersistence("Always", TopComponent.PERSISTENCE_ALWAYS, cmv);
assertNotNull("MultiViewComponent created", cmv);
NbMarshalledObject mar = new NbMarshalledObject(cmv);
TopComponent mvc = (TopComponent) mar.get();
doCheck(mvc, ic);
}