15 Commits

Author SHA1 Message Date
Rainer Klute
73a9af683f * Writing support added to the SummaryInformation and DocumentSummaryInformation classes. These classes now have methods for setting and removing properties. Coherent extensions are:
** Documentation section about writing standard properties added to the HPSF HOW-TO.
** Example application added showing how to modify the document summary information.
** Testcases added for testing modifying summary information and document summary information.
** PropertySetFactory extended to create SummaryInformation and DocumentSummaryInformation instances.

* Added MutablePropertySet.write(DirectoryEntry, String) to ease writing a property set to a POI filesystem document.

* Improved codepage handling.

* Bug fixed: Integral values were read and written as unsigned instead of signed.

* Reworked the mapping between variant types and Java types: Variant.VT_I4 is mapped to Integer now and Variant.VT_I8 to Long. This might cause incompatibilities if you are doing low-level HPSF programming. 

* Changed SectionIDMap.DOCUMENT_SUMMARY_INFORMATION_ID from a byte[] to a byte[][] in order to contain the format ID of the first and the second section. This is an incompatible change!

* Added PropertySet.getFirstSection(). This method is similar to getSingleSection() won't choke if the property set has more than one section.

* Support for low-level reading and writing of Variant.VT_I8 type properties added.

* Unnecessary casts removed.

* Poibrowser's display format changed slightly.



git-svn-id: https://svn.apache.org/repos/asf/jakarta/poi/trunk@382887 13f79535-47bb-0310-9956-ffa450edef68
2006-03-03 16:57:55 +00:00
Rainer Klute
1a5920f221 Bug 34247 fixed. Dictionaries are read with the specified codepage now.
git-svn-id: https://svn.apache.org/repos/asf/jakarta/poi/trunk@353636 13f79535-47bb-0310-9956-ffa450edef68
2005-04-01 16:58:00 +00:00
Rainer Klute
ff53b56c07 - A section's size is a multiple of 4 now. The Windows explorer seems to be constrained to this requirement in order to display custom properties.
- Custom properties may be written in character encodings different from Unicode.


git-svn-id: https://svn.apache.org/repos/asf/jakarta/poi/trunk@353596 13f79535-47bb-0310-9956-ffa450edef68
2004-08-31 20:47:09 +00:00
Rainer Klute
68b95f3a3f Some code and documentation cleanup.
git-svn-id: https://svn.apache.org/repos/asf/jakarta/poi/trunk@353584 13f79535-47bb-0310-9956-ffa450edef68
2004-08-15 15:20:08 +00:00
Rainer Klute
a9b6743b20 Fixed a bug where a mutable section's format ID was written in the wrong byte order. Thanks to Bernd Freigang for pointing this out!
git-svn-id: https://svn.apache.org/repos/asf/jakarta/poi/trunk@353581 13f79535-47bb-0310-9956-ffa450edef68
2004-08-13 22:38:52 +00:00
Rainer Klute
8fc4b6ba05 - Fix: HPSF now ensures that string properties are always written with the type Variant.VT_LPWSTR instead of Variant.VT_LPSTR if the codepage is 1200 (Unicode).
- Code cleanup (propertyCount in MutableSection removed).
- Codepage numbers aggregated in the new class org.apache.poi.hpsf.Constants.


git-svn-id: https://svn.apache.org/repos/asf/jakarta/poi/trunk@353561 13f79535-47bb-0310-9956-ffa450edef68
2004-06-22 16:11:39 +00:00
Rainer Klute
6d4852661f - Write properties sorted by property ID now. This hopefully fixes M$ Word compatibility.
git-svn-id: https://svn.apache.org/repos/asf/jakarta/poi/trunk@353558 13f79535-47bb-0310-9956-ffa450edef68
2004-06-09 17:51:51 +00:00
Glen Stampoultzis
58f1c92183 New licence changes.
git-svn-id: https://svn.apache.org/repos/asf/jakarta/poi/trunk@353545 13f79535-47bb-0310-9956-ffa450edef68
2004-04-09 13:05:39 +00:00
Rainer Klute
319c1c1fe8 HPSF: codepage support added
git-svn-id: https://svn.apache.org/repos/asf/jakarta/poi/trunk@353460 13f79535-47bb-0310-9956-ffa450edef68
2003-12-02 17:46:01 +00:00
Rainer Klute
6d1eefc2ea - Added Robert Flaherty's method getCustomProperties() (refactored)
- Got rid of the PropertySet instance variable sectionCount. Use getSectionCount() instead!
- Minor fixes


git-svn-id: https://svn.apache.org/repos/asf/jakarta/poi/trunk@353409 13f79535-47bb-0310-9956-ffa450edef68
2003-10-23 20:44:24 +00:00
Rainer Klute
8f08b03cf0 These changes introduce the following HPSF enhancements and fixes:
- Section dictionaries (aka custom properties) can be written now.
- Constructor MutableProperty(PropertySet) sets the class ID correctly now.
- Possible invalid section count fixed
- More testcases
- Cosmetics


git-svn-id: https://svn.apache.org/repos/asf/jakarta/poi/trunk@353360 13f79535-47bb-0310-9956-ffa450edef68
2003-09-18 18:56:35 +00:00
Rainer Klute
cdf513d1a3 *** empty log message ***
git-svn-id: https://svn.apache.org/repos/asf/jakarta/poi/trunk@353354 13f79535-47bb-0310-9956-ffa450edef68
2003-09-16 15:59:06 +00:00
Rainer Klute
d99a03d6d9 - PropertySetFactory.create(InputStream) no longer throws an UnexpectedPropertySetTypeException.
- HPSFRuntimeException is thrown when the application tries to read a non-integer property with Section.getPropertyIntValue(long).
- Package description updated.
- ClassIDhashCode() implemented.


git-svn-id: https://svn.apache.org/repos/asf/jakarta/poi/trunk@353349 13f79535-47bb-0310-9956-ffa450edef68
2003-09-13 12:31:28 +00:00
Rainer Klute
1de48575d0 Writing: API enhanced, bugs fixed, performance improvements, code simplifications, two new testcases, more int to long promotions.
git-svn-id: https://svn.apache.org/repos/asf/jakarta/poi/trunk@353341 13f79535-47bb-0310-9956-ffa450edef68
2003-09-04 20:15:24 +00:00
Rainer Klute
468615d2d9 HPSF writing capability added.
git-svn-id: https://svn.apache.org/repos/asf/jakarta/poi/trunk@353321 13f79535-47bb-0310-9956-ffa450edef68
2003-08-30 09:13:53 +00:00