diff options
Diffstat (limited to 'scripting/java/org/openoffice/netbeans/modules/office/actions/ParcelDescriptorEditorSupport.java')
-rw-r--r-- | scripting/java/org/openoffice/netbeans/modules/office/actions/ParcelDescriptorEditorSupport.java | 136 |
1 files changed, 0 insertions, 136 deletions
diff --git a/scripting/java/org/openoffice/netbeans/modules/office/actions/ParcelDescriptorEditorSupport.java b/scripting/java/org/openoffice/netbeans/modules/office/actions/ParcelDescriptorEditorSupport.java deleted file mode 100644 index c4378ceff24d..000000000000 --- a/scripting/java/org/openoffice/netbeans/modules/office/actions/ParcelDescriptorEditorSupport.java +++ /dev/null @@ -1,136 +0,0 @@ -/* - * This file is part of the LibreOffice project. - * - * This Source Code Form is subject to the terms of the Mozilla Public - * License, v. 2.0. If a copy of the MPL was not distributed with this - * file, You can obtain one at http://mozilla.org/MPL/2.0/. - * - * This file incorporates work covered by the following license notice: - * - * Licensed to the Apache Software Foundation (ASF) under one or more - * contributor license agreements. See the NOTICE file distributed - * with this work for additional information regarding copyright - * ownership. The ASF licenses this file to you under the Apache - * License, Version 2.0 (the "License"); you may not use this file - * except in compliance with the License. You may obtain a copy of - * the License at http://www.apache.org/licenses/LICENSE-2.0 . - */ - -package org.openoffice.netbeans.modules.office.actions; - -import java.io.IOException; - -import org.openide.cookies.*; -import org.openide.filesystems.FileLock; -import org.openide.filesystems.FileObject; -import org.openide.loaders.DataObject; -import org.openide.text.DataEditorSupport; -import org.openide.windows.CloneableOpenSupport; - -import org.openoffice.netbeans.modules.office.loader.ParcelDescriptorDataObject; - -/** Support for editing a data object as text. - */ -// Replace OpenCookie with EditCookie or maybe ViewCookie as desired: -public class ParcelDescriptorEditorSupport extends DataEditorSupport implements - EditorCookie, OpenCookie, CloseCookie, PrintCookie { - - /** Create a new editor support. - * @param obj the data object whose primary file will be edited as text - */ - public ParcelDescriptorEditorSupport(ParcelDescriptorDataObject obj) { - super(obj, new ParcelDescriptorEnv(obj)); - // Set a MIME type as needed, e.g.: - setMIMEType("text/xml"); - } - - /** Called when the document is modified. - * Here, adding a save cookie to the object and marking it modified. - * @return true if the modification is acceptable - */ - protected boolean notifyModified() { - if (!super.notifyModified()) { - return false; - } - - ParcelDescriptorDataObject obj = (ParcelDescriptorDataObject)getDataObject(); - - if (obj.getCookie(SaveCookie.class) == null) { - obj.setModified(true); - // You must implement this method on the object: - obj.addSaveCookie(new Save()); - } - - return true; - } - - /** Called when the document becomes unmodified. - * Here, removing the save cookie from the object and marking it unmodified. - */ - protected void notifyUnmodified() { - ParcelDescriptorDataObject obj = (ParcelDescriptorDataObject)getDataObject(); - SaveCookie save = (SaveCookie)obj.getCookie(SaveCookie.class); - - if (save != null) { - // You must implement this method on the object: - obj.removeSaveCookie(save); - obj.setModified(false); - } - - super.notifyUnmodified(); - } - - /** A save cookie to use for the editor support. - * When saved, saves the document to disk and marks the object unmodified. - */ - private class Save implements SaveCookie { - public void save() throws IOException { - saveDocument(); - getDataObject().setModified(false); - } - } - - /** A description of the binding between the editor support and the object. - * Note this may be serialized as part of the window system and so - * should be static, and use the transient modifier where needed. - */ - private static class ParcelDescriptorEnv extends DataEditorSupport.Env { - - /** Create a new environment based on the data object. - * @param obj the data object to edit - */ - public ParcelDescriptorEnv(ParcelDescriptorDataObject obj) { - super(obj); - } - - /** Get the file to edit. - * @return the primary file normally - */ - protected FileObject getFile() { - return getDataObject().getPrimaryFile(); - } - - /** Lock the file to edit. - * Should be taken from the file entry if possible, helpful during - * e.g. deletion of the file. - * @return a lock on the primary file normally - * @throws IOException if the lock could not be taken - */ - protected FileLock takeLock() throws IOException { - return ((ParcelDescriptorDataObject) - getDataObject()).getPrimaryEntry().takeLock(); - } - - /** Find the editor support this environment represents. - * Note that we have to look it up, as keeping a direct - * reference would not permit this environment to be serialized. - * @return the editor support - */ - public CloneableOpenSupport findCloneableOpenSupport() { - return (ParcelDescriptorEditorSupport)getDataObject().getCookie( - ParcelDescriptorEditorSupport.class); - } - - } - -} |