1*cd519653SAndrew Rist /************************************************************** 2cdf0e10cSrcweir * 3*cd519653SAndrew Rist * Licensed to the Apache Software Foundation (ASF) under one 4*cd519653SAndrew Rist * or more contributor license agreements. See the NOTICE file 5*cd519653SAndrew Rist * distributed with this work for additional information 6*cd519653SAndrew Rist * regarding copyright ownership. The ASF licenses this file 7*cd519653SAndrew Rist * to you under the Apache License, Version 2.0 (the 8*cd519653SAndrew Rist * "License"); you may not use this file except in compliance 9*cd519653SAndrew Rist * with the License. You may obtain a copy of the License at 10*cd519653SAndrew Rist * 11*cd519653SAndrew Rist * http://www.apache.org/licenses/LICENSE-2.0 12*cd519653SAndrew Rist * 13*cd519653SAndrew Rist * Unless required by applicable law or agreed to in writing, 14*cd519653SAndrew Rist * software distributed under the License is distributed on an 15*cd519653SAndrew Rist * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY 16*cd519653SAndrew Rist * KIND, either express or implied. See the License for the 17*cd519653SAndrew Rist * specific language governing permissions and limitations 18*cd519653SAndrew Rist * under the License. 19*cd519653SAndrew Rist * 20*cd519653SAndrew Rist *************************************************************/ 21*cd519653SAndrew Rist 22*cd519653SAndrew Rist 23cdf0e10cSrcweir 24cdf0e10cSrcweir package org.openoffice.netbeans.modules.office.loader; 25cdf0e10cSrcweir 26cdf0e10cSrcweir import org.openide.loaders.*; 27cdf0e10cSrcweir import org.openide.filesystems.FileObject; 28cdf0e10cSrcweir import org.openide.actions.*; 29cdf0e10cSrcweir import org.openide.util.NbBundle; 30cdf0e10cSrcweir import org.openide.util.actions.SystemAction; 31cdf0e10cSrcweir 32cdf0e10cSrcweir import org.openoffice.idesupport.zip.ParcelZipper; 33cdf0e10cSrcweir 34cdf0e10cSrcweir public class ParcelContentsFolderDataLoader extends UniFileLoader { 35cdf0e10cSrcweir ParcelContentsFolderDataLoader()36cdf0e10cSrcweir public ParcelContentsFolderDataLoader() { 37cdf0e10cSrcweir this("org.openide.loaders.DataFolder"); 38cdf0e10cSrcweir } 39cdf0e10cSrcweir ParcelContentsFolderDataLoader(String recognizedObjectClass)40cdf0e10cSrcweir protected ParcelContentsFolderDataLoader(String recognizedObjectClass) { 41cdf0e10cSrcweir super(recognizedObjectClass); 42cdf0e10cSrcweir } 43cdf0e10cSrcweir defaultDisplayName()44cdf0e10cSrcweir protected String defaultDisplayName() { 45cdf0e10cSrcweir return "Office Script Parcel Contents"; 46cdf0e10cSrcweir } 47cdf0e10cSrcweir initialize()48cdf0e10cSrcweir protected void initialize() { 49cdf0e10cSrcweir super.initialize(); 50cdf0e10cSrcweir } 51cdf0e10cSrcweir findPrimaryFile(FileObject fo)52cdf0e10cSrcweir protected FileObject findPrimaryFile(FileObject fo) { 53cdf0e10cSrcweir if (fo.isFolder() == false || 54cdf0e10cSrcweir fo.getName().equals(ParcelZipper.CONTENTS_DIRNAME) == false || 55cdf0e10cSrcweir fo.getFileObject(ParcelZipper.PARCEL_DESCRIPTOR_XML) == null) 56cdf0e10cSrcweir return null; 57cdf0e10cSrcweir 58cdf0e10cSrcweir return fo; 59cdf0e10cSrcweir } 60cdf0e10cSrcweir defaultActions()61cdf0e10cSrcweir protected SystemAction[] defaultActions() { 62cdf0e10cSrcweir return new SystemAction[] { 63cdf0e10cSrcweir SystemAction.get(PasteAction.class), 64cdf0e10cSrcweir SystemAction.get(NewAction.class), 65cdf0e10cSrcweir // null, 66cdf0e10cSrcweir // SystemAction.get(PropertiesAction.class), 67cdf0e10cSrcweir }; 68cdf0e10cSrcweir } 69cdf0e10cSrcweir createMultiObject(FileObject primaryFile)70cdf0e10cSrcweir protected MultiDataObject createMultiObject(FileObject primaryFile) 71cdf0e10cSrcweir throws DataObjectExistsException { 72cdf0e10cSrcweir return new ParcelContentsFolder(primaryFile, this); 73cdf0e10cSrcweir } 74cdf0e10cSrcweir createPrimaryEntry(MultiDataObject obj, FileObject primaryFile)75cdf0e10cSrcweir protected MultiDataObject.Entry createPrimaryEntry(MultiDataObject obj, FileObject primaryFile) { 76cdf0e10cSrcweir return new FileEntry.Folder(obj, primaryFile); 77cdf0e10cSrcweir } 78cdf0e10cSrcweir } 79