001package com.hfg.xml.msofficexml.docx.part; 002 003 004import java.io.InputStream; 005 006import com.hfg.exception.ProgrammingException; 007import com.hfg.util.StringUtil; 008import com.hfg.xml.msofficexml.docx.wordprocessingml.WmlXML; 009import com.hfg.xml.msofficexml.part.VbaPart; 010 011//------------------------------------------------------------------------------ 012/** 013 Represents a Docx Office Open XML VBA part. 014 015 @author J. Alex Taylor, hairyfatguy.com 016 */ 017//------------------------------------------------------------------------------ 018// com.hfg XML/HTML Coding Library 019// 020// This library is free software; you can redistribute it and/or 021// modify it under the terms of the GNU Lesser General Public 022// License as published by the Free Software Foundation; either 023// version 2.1 of the License, or (at your option) any later version. 024// 025// This library is distributed in the hope that it will be useful, 026// but WITHOUT ANY WARRANTY; without even the implied warranty of 027// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 028// Lesser General Public License for more details. 029// 030// You should have received a copy of the GNU Lesser General Public 031// License along with this library; if not, write to the Free Software 032// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA 033// 034// J. Alex Taylor, President, Founder, CEO, COO, CFO, OOPS hairyfatguy.com 035// jataylor@hairyfatguy.com 036//------------------------------------------------------------------------------ 037 038public class WmlVbaPart extends VbaPart 039{ 040 public static final String VBA_PROJECT_NAME = "vbaProject.bin"; 041 public static final String AUTO_OPEN_VBA = "Project.com_hfg.AutoOpen"; 042 043 044 //########################################################################### 045 // CONSTRUCTORS 046 //########################################################################### 047 048 //--------------------------------------------------------------------------- 049 public WmlVbaPart(InputStream inStream, String inName) 050 { 051 super(inStream, inName); 052 } 053 054 //########################################################################### 055 // PUBLIC METHODS 056 //########################################################################### 057 058 //--------------------------------------------------------------------------- 059 public static final InputStream getVBA_ProjectStream() 060 { 061 InputStream stream = WmlVbaPart.class.getResourceAsStream("rsrc/" + VBA_PROJECT_NAME); 062 if (null == stream) 063 { 064 throw new ProgrammingException("The rsrc " + StringUtil.singleQuote(VBA_PROJECT_NAME) + " wasn't found!?"); 065 } 066 067 return stream; 068 } 069 070 071 //--------------------------------------------------------------------------- 072 protected String getDir() 073 { 074 return WmlXML.WORD_DIR; 075 } 076 077}