| /************************************************************** |
| * |
| * 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 |
| * |
| * Unless required by applicable law or agreed to in writing, |
| * software distributed under the License is distributed on an |
| * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY |
| * KIND, either express or implied. See the License for the |
| * specific language governing permissions and limitations |
| * under the License. |
| * |
| *************************************************************/ |
| |
| |
| |
| // MARKER(update_precomp.py): autogen include statement, do not remove |
| #include "precompiled_xmlscript.hxx" |
| #include "exp_share.hxx" |
| |
| #include <com/sun/star/util/XNumberFormatsSupplier.hpp> |
| |
| |
| using namespace ::com::sun::star; |
| using namespace ::com::sun::star::uno; |
| using ::rtl::OUString; |
| |
| namespace xmlscript |
| { |
| |
| static inline bool readBorderProps( |
| ElementDescriptor * element, Style & style ) |
| { |
| if (element->readProp( &style._border, OUSTR("Border") )) { |
| if (style._border == BORDER_SIMPLE /* simple */) |
| { |
| if (element->readProp( &style._borderColor, OUSTR("BorderColor") )) |
| style._border = BORDER_SIMPLE_COLOR; |
| } |
| return true; |
| } |
| return false; |
| } |
| |
| static inline bool readFontProps( ElementDescriptor * element, Style & style ) |
| { |
| bool ret = element->readProp( |
| &style._descr, OUSTR("FontDescriptor") ); |
| ret |= element->readProp( |
| &style._fontEmphasisMark, OUSTR("FontEmphasisMark") ); |
| ret |= element->readProp( |
| &style._fontRelief, OUSTR("FontRelief") ); |
| return ret; |
| } |
| |
| //__________________________________________________________________________________________________ |
| void ElementDescriptor::readButtonModel( StyleBag * all_styles ) |
| SAL_THROW( (Exception) ) |
| { |
| // collect styles |
| Style aStyle( 0x1 | 0x2 | 0x8 | 0x20 ); |
| if (readProp( OUString( RTL_CONSTASCII_USTRINGPARAM("BackgroundColor") ) ) >>= aStyle._backgroundColor) |
| aStyle._set |= 0x1; |
| if (readProp( OUString( RTL_CONSTASCII_USTRINGPARAM("TextColor") ) ) >>= aStyle._textColor) |
| aStyle._set |= 0x2; |
| if (readProp( OUString( RTL_CONSTASCII_USTRINGPARAM("TextLineColor") ) ) >>= aStyle._textLineColor) |
| aStyle._set |= 0x20; |
| if (readFontProps( this, aStyle )) |
| aStyle._set |= 0x8; |
| if (aStyle._set) |
| { |
| addAttribute( OUString( RTL_CONSTASCII_USTRINGPARAM(XMLNS_DIALOGS_PREFIX ":style-id") ), |
| all_styles->getStyleId( aStyle ) ); |
| } |
| |
| // collect elements |
| readDefaults(); |
| readBoolAttr( OUString( RTL_CONSTASCII_USTRINGPARAM("Tabstop") ), |
| OUString( RTL_CONSTASCII_USTRINGPARAM(XMLNS_DIALOGS_PREFIX ":tabstop") ) ); |
| readBoolAttr( OUString( RTL_CONSTASCII_USTRINGPARAM("DefaultButton") ), |
| OUString( RTL_CONSTASCII_USTRINGPARAM(XMLNS_DIALOGS_PREFIX ":default") ) ); |
| readStringAttr( OUString( RTL_CONSTASCII_USTRINGPARAM("Label") ), |
| OUString( RTL_CONSTASCII_USTRINGPARAM(XMLNS_DIALOGS_PREFIX ":value") ) ); |
| readAlignAttr( OUString( RTL_CONSTASCII_USTRINGPARAM("Align") ), |
| OUString( RTL_CONSTASCII_USTRINGPARAM(XMLNS_DIALOGS_PREFIX ":align") ) ); |
| readVerticalAlignAttr( OUString( RTL_CONSTASCII_USTRINGPARAM("VerticalAlign") ), |
| OUString( RTL_CONSTASCII_USTRINGPARAM(XMLNS_DIALOGS_PREFIX ":valign") ) ); |
| readButtonTypeAttr( OUString( RTL_CONSTASCII_USTRINGPARAM("PushButtonType") ), |
| OUString( RTL_CONSTASCII_USTRINGPARAM(XMLNS_DIALOGS_PREFIX ":button-type") ) ); |
| readStringAttr( OUString( RTL_CONSTASCII_USTRINGPARAM("ImageURL") ), |
| OUString( RTL_CONSTASCII_USTRINGPARAM(XMLNS_DIALOGS_PREFIX ":image-src") ) ); |
| readImagePositionAttr( OUString( RTL_CONSTASCII_USTRINGPARAM("ImagePosition") ), |
| OUString( RTL_CONSTASCII_USTRINGPARAM(XMLNS_DIALOGS_PREFIX ":image-position") ) ); |
| readImageAlignAttr( OUString( RTL_CONSTASCII_USTRINGPARAM("ImageAlign") ), |
| OUString( RTL_CONSTASCII_USTRINGPARAM(XMLNS_DIALOGS_PREFIX ":image-align") ) ); |
| if (extract_throw<bool>( _xProps->getPropertyValue( OUSTR("Repeat") ) )) |
| readLongAttr( OUSTR("RepeatDelay"), |
| OUSTR(XMLNS_DIALOGS_PREFIX ":repeat"), true /* force */ ); |
| if (extract_throw<bool>( _xProps->getPropertyValue( OUSTR("Toggle") ) )) |
| addAttribute( OUSTR(XMLNS_DIALOGS_PREFIX ":toggled"), OUSTR("1") ); |
| readBoolAttr( OUSTR("FocusOnClick"), |
| OUSTR(XMLNS_DIALOGS_PREFIX ":grab-focus") ); |
| readBoolAttr( OUString( RTL_CONSTASCII_USTRINGPARAM("MultiLine") ), |
| OUString( RTL_CONSTASCII_USTRINGPARAM(XMLNS_DIALOGS_PREFIX ":multiline") ) ); |
| |
| |
| // State |
| sal_Int16 nState = 0; |
| if (readProp( OUString( RTL_CONSTASCII_USTRINGPARAM("State") ) ) >>= nState) |
| { |
| switch (nState) |
| { |
| case 0: |
| addAttribute( OUString( RTL_CONSTASCII_USTRINGPARAM(XMLNS_DIALOGS_PREFIX ":checked") ), |
| OUString( RTL_CONSTASCII_USTRINGPARAM("false") ) ); |
| break; |
| case 1: |
| addAttribute( OUString( RTL_CONSTASCII_USTRINGPARAM(XMLNS_DIALOGS_PREFIX ":checked") ), |
| OUString( RTL_CONSTASCII_USTRINGPARAM("true") ) ); |
| break; |
| default: |
| OSL_ENSURE( 0, "### unexpected radio state!" ); |
| break; |
| } |
| } |
| |
| readEvents(); |
| } |
| //__________________________________________________________________________________________________ |
| void ElementDescriptor::readCheckBoxModel( StyleBag * all_styles ) |
| SAL_THROW( (Exception) ) |
| { |
| // collect styles |
| Style aStyle( 0x1 | 0x2 | 0x8 | 0x20 | 0x40 ); |
| if (readProp( OUString( RTL_CONSTASCII_USTRINGPARAM("BackgroundColor") ) ) >>= aStyle._backgroundColor) |
| aStyle._set |= 0x1; |
| if (readProp( OUString( RTL_CONSTASCII_USTRINGPARAM("TextColor") ) ) >>= aStyle._textColor) |
| aStyle._set |= 0x2; |
| if (readProp( OUString( RTL_CONSTASCII_USTRINGPARAM("TextLineColor") ) ) >>= aStyle._textLineColor) |
| aStyle._set |= 0x20; |
| if (readFontProps( this, aStyle )) |
| aStyle._set |= 0x8; |
| if (readProp( OUSTR("VisualEffect") ) >>= aStyle._visualEffect) |
| aStyle._set |= 0x40; |
| if (aStyle._set) |
| { |
| addAttribute( OUString( RTL_CONSTASCII_USTRINGPARAM(XMLNS_DIALOGS_PREFIX ":style-id") ), |
| all_styles->getStyleId( aStyle ) ); |
| } |
| |
| // collect elements |
| readDefaults(); |
| readBoolAttr( OUString( RTL_CONSTASCII_USTRINGPARAM("Tabstop") ), |
| OUString( RTL_CONSTASCII_USTRINGPARAM(XMLNS_DIALOGS_PREFIX ":tabstop") ) ); |
| readStringAttr( OUString( RTL_CONSTASCII_USTRINGPARAM("Label") ), |
| OUString( RTL_CONSTASCII_USTRINGPARAM(XMLNS_DIALOGS_PREFIX ":value") ) ); |
| readAlignAttr( OUString( RTL_CONSTASCII_USTRINGPARAM("Align") ), |
| OUString( RTL_CONSTASCII_USTRINGPARAM(XMLNS_DIALOGS_PREFIX ":align") ) ); |
| readVerticalAlignAttr( OUString( RTL_CONSTASCII_USTRINGPARAM("VerticalAlign") ), |
| OUString( RTL_CONSTASCII_USTRINGPARAM(XMLNS_DIALOGS_PREFIX ":valign") ) ); |
| readStringAttr( OUString( RTL_CONSTASCII_USTRINGPARAM("ImageURL") ), |
| OUString( RTL_CONSTASCII_USTRINGPARAM(XMLNS_DIALOGS_PREFIX ":image-src") ) ); |
| readImagePositionAttr( OUString( RTL_CONSTASCII_USTRINGPARAM("ImagePosition") ), |
| OUString( RTL_CONSTASCII_USTRINGPARAM(XMLNS_DIALOGS_PREFIX ":image-position") ) ); |
| readBoolAttr( OUString( RTL_CONSTASCII_USTRINGPARAM("MultiLine") ), |
| OUString( RTL_CONSTASCII_USTRINGPARAM(XMLNS_DIALOGS_PREFIX ":multiline") ) ); |
| |
| sal_Bool bTriState = sal_False; |
| if ((readProp( OUString( RTL_CONSTASCII_USTRINGPARAM("TriState") ) ) >>= bTriState) && bTriState) |
| { |
| addAttribute( OUString( RTL_CONSTASCII_USTRINGPARAM(XMLNS_DIALOGS_PREFIX ":tristate") ), |
| OUString( RTL_CONSTASCII_USTRINGPARAM("true") ) ); |
| } |
| sal_Int16 nState = 0; |
| if (_xProps->getPropertyValue( OUString( RTL_CONSTASCII_USTRINGPARAM("State") ) ) >>= nState) |
| { |
| switch (nState) |
| { |
| case 0: |
| addAttribute( OUString( RTL_CONSTASCII_USTRINGPARAM(XMLNS_DIALOGS_PREFIX ":checked") ), |
| OUString( RTL_CONSTASCII_USTRINGPARAM("false") ) ); |
| break; |
| case 1: |
| addAttribute( OUString( RTL_CONSTASCII_USTRINGPARAM(XMLNS_DIALOGS_PREFIX ":checked") ), |
| OUString( RTL_CONSTASCII_USTRINGPARAM("true") ) ); |
| break; |
| case 2: // tristate=true exported, checked omitted => dont know! |
| OSL_ENSURE( bTriState, "### detected tristate value, but TriState is not set!" ); |
| break; |
| default: |
| OSL_ENSURE( 0, "### unexpected checkbox state!" ); |
| break; |
| } |
| } |
| readEvents(); |
| } |
| //__________________________________________________________________________________________________ |
| void ElementDescriptor::readComboBoxModel( StyleBag * all_styles ) |
| SAL_THROW( (Exception) ) |
| { |
| // collect styles |
| Style aStyle( 0x1 | 0x2 | 0x4 | 0x8 | 0x20 ); |
| if (readProp( OUString( RTL_CONSTASCII_USTRINGPARAM("BackgroundColor") ) ) >>= aStyle._backgroundColor) |
| aStyle._set |= 0x1; |
| if (readProp( OUString( RTL_CONSTASCII_USTRINGPARAM("TextColor") ) ) >>= aStyle._textColor) |
| aStyle._set |= 0x2; |
| if (readProp( OUString( RTL_CONSTASCII_USTRINGPARAM("TextLineColor") ) ) >>= aStyle._textLineColor) |
| aStyle._set |= 0x20; |
| if (readBorderProps( this, aStyle )) |
| aStyle._set |= 0x4; |
| if (readFontProps( this, aStyle )) |
| aStyle._set |= 0x8; |
| if (aStyle._set) |
| { |
| addAttribute( OUString( RTL_CONSTASCII_USTRINGPARAM(XMLNS_DIALOGS_PREFIX ":style-id") ), |
| all_styles->getStyleId( aStyle ) ); |
| } |
| |
| // collect elements |
| readDefaults(); |
| readBoolAttr( OUString( RTL_CONSTASCII_USTRINGPARAM("Tabstop") ), |
| OUString( RTL_CONSTASCII_USTRINGPARAM(XMLNS_DIALOGS_PREFIX ":tabstop") ) ); |
| readStringAttr( OUString( RTL_CONSTASCII_USTRINGPARAM("Text") ), |
| OUString( RTL_CONSTASCII_USTRINGPARAM(XMLNS_DIALOGS_PREFIX ":value") ) ); |
| readAlignAttr( OUString( RTL_CONSTASCII_USTRINGPARAM("Align") ), |
| OUString( RTL_CONSTASCII_USTRINGPARAM(XMLNS_DIALOGS_PREFIX ":align") ) ); |
| readBoolAttr( OUString( RTL_CONSTASCII_USTRINGPARAM("Autocomplete") ), |
| OUString( RTL_CONSTASCII_USTRINGPARAM(XMLNS_DIALOGS_PREFIX ":autocomplete") ) ); |
| readBoolAttr( OUString( RTL_CONSTASCII_USTRINGPARAM("ReadOnly") ), |
| OUString( RTL_CONSTASCII_USTRINGPARAM(XMLNS_DIALOGS_PREFIX ":readonly") ) ); |
| readBoolAttr( OUSTR("HideInactiveSelection"), |
| OUSTR(XMLNS_DIALOGS_PREFIX ":hide-inactive-selection") ); |
| readBoolAttr( OUString( RTL_CONSTASCII_USTRINGPARAM("Dropdown") ), |
| OUString( RTL_CONSTASCII_USTRINGPARAM(XMLNS_DIALOGS_PREFIX ":spin") ) ); |
| readShortAttr( OUString( RTL_CONSTASCII_USTRINGPARAM("MaxTextLen") ), |
| OUString( RTL_CONSTASCII_USTRINGPARAM(XMLNS_DIALOGS_PREFIX ":maxlength") ) ); |
| readShortAttr( OUString( RTL_CONSTASCII_USTRINGPARAM("LineCount") ), |
| OUString( RTL_CONSTASCII_USTRINGPARAM(XMLNS_DIALOGS_PREFIX ":linecount") ) ); |
| |
| // string item list |
| Sequence< OUString > itemValues; |
| if ((readProp( OUString( RTL_CONSTASCII_USTRINGPARAM("StringItemList") ) ) >>= itemValues) && |
| itemValues.getLength() > 0) |
| { |
| ElementDescriptor * popup = new ElementDescriptor( |
| _xProps, _xPropState, |
| OUString( RTL_CONSTASCII_USTRINGPARAM(XMLNS_DIALOGS_PREFIX ":menupopup") ) ); |
| |
| OUString const * pItemValues = itemValues.getConstArray(); |
| for ( sal_Int32 nPos = 0; nPos < itemValues.getLength(); ++nPos ) |
| { |
| ElementDescriptor * item = new ElementDescriptor( |
| _xProps, _xPropState, |
| OUString( RTL_CONSTASCII_USTRINGPARAM(XMLNS_DIALOGS_PREFIX ":menuitem") ) ); |
| item->addAttribute( OUString( RTL_CONSTASCII_USTRINGPARAM(XMLNS_DIALOGS_PREFIX ":value") ), |
| pItemValues[ nPos ] ); |
| popup->addSubElement( item ); |
| } |
| |
| addSubElement( popup ); |
| } |
| readEvents(); |
| } |
| //__________________________________________________________________________________________________ |
| void ElementDescriptor::readListBoxModel( StyleBag * all_styles ) |
| SAL_THROW( (Exception) ) |
| { |
| // collect styles |
| Style aStyle( 0x1 | 0x2 | 0x4 | 0x8 | 0x20 ); |
| if (readProp( OUString( RTL_CONSTASCII_USTRINGPARAM("BackgroundColor") ) ) >>= aStyle._backgroundColor) |
| aStyle._set |= 0x1; |
| if (readProp( OUString( RTL_CONSTASCII_USTRINGPARAM("TextColor") ) ) >>= aStyle._textColor) |
| aStyle._set |= 0x2; |
| if (readProp( OUString( RTL_CONSTASCII_USTRINGPARAM("TextLineColor") ) ) >>= aStyle._textLineColor) |
| aStyle._set |= 0x20; |
| if (readBorderProps( this, aStyle )) |
| aStyle._set |= 0x4; |
| if (readFontProps( this, aStyle )) |
| aStyle._set |= 0x8; |
| if (aStyle._set) |
| { |
| addAttribute( OUString( RTL_CONSTASCII_USTRINGPARAM(XMLNS_DIALOGS_PREFIX ":style-id") ), |
| all_styles->getStyleId( aStyle ) ); |
| } |
| |
| // collect elements |
| readDefaults(); |
| readBoolAttr( OUString( RTL_CONSTASCII_USTRINGPARAM("Tabstop") ), |
| OUString( RTL_CONSTASCII_USTRINGPARAM(XMLNS_DIALOGS_PREFIX ":tabstop") ) ); |
| readBoolAttr( OUString( RTL_CONSTASCII_USTRINGPARAM("MultiSelection") ), |
| OUString( RTL_CONSTASCII_USTRINGPARAM(XMLNS_DIALOGS_PREFIX ":multiselection") ) ); |
| readBoolAttr( OUString( RTL_CONSTASCII_USTRINGPARAM("ReadOnly") ), |
| OUString( RTL_CONSTASCII_USTRINGPARAM(XMLNS_DIALOGS_PREFIX ":readonly") ) ); |
| readBoolAttr( OUString( RTL_CONSTASCII_USTRINGPARAM("Dropdown") ), |
| OUString( RTL_CONSTASCII_USTRINGPARAM(XMLNS_DIALOGS_PREFIX ":spin") ) ); |
| readShortAttr( OUString( RTL_CONSTASCII_USTRINGPARAM("LineCount") ), |
| OUString( RTL_CONSTASCII_USTRINGPARAM(XMLNS_DIALOGS_PREFIX ":linecount") ) ); |
| readAlignAttr( OUString( RTL_CONSTASCII_USTRINGPARAM("Align") ), |
| OUString( RTL_CONSTASCII_USTRINGPARAM(XMLNS_DIALOGS_PREFIX ":align") ) ); |
| |
| // string item list |
| Sequence< OUString > itemValues; |
| if ((readProp( OUString( RTL_CONSTASCII_USTRINGPARAM("StringItemList") ) ) >>= itemValues) && |
| itemValues.getLength() > 0) |
| { |
| ElementDescriptor * popup = new ElementDescriptor( |
| _xProps, _xPropState, |
| OUString( RTL_CONSTASCII_USTRINGPARAM(XMLNS_DIALOGS_PREFIX ":menupopup") ) ); |
| |
| OUString const * pItemValues = itemValues.getConstArray(); |
| sal_Int32 nPos; |
| for ( nPos = 0; nPos < itemValues.getLength(); ++nPos ) |
| { |
| ElementDescriptor * item = new ElementDescriptor( |
| _xProps, _xPropState, |
| OUString( RTL_CONSTASCII_USTRINGPARAM(XMLNS_DIALOGS_PREFIX ":menuitem") ) ); |
| item->addAttribute( OUString( RTL_CONSTASCII_USTRINGPARAM(XMLNS_DIALOGS_PREFIX ":value") ), |
| pItemValues[ nPos ] ); |
| popup->addSubElement( item ); |
| } |
| |
| Sequence< sal_Int16 > selected; |
| if (readProp( OUString( RTL_CONSTASCII_USTRINGPARAM("SelectedItems") ) ) >>= selected) |
| { |
| sal_Int16 const * pSelected = selected.getConstArray(); |
| for ( nPos = selected.getLength(); nPos--; ) |
| { |
| ElementDescriptor * item = static_cast< ElementDescriptor * >( |
| popup->getSubElement( pSelected[ nPos ] ).get() ); |
| item->addAttribute( OUString( RTL_CONSTASCII_USTRINGPARAM(XMLNS_DIALOGS_PREFIX ":selected") ), |
| OUString( RTL_CONSTASCII_USTRINGPARAM("true") ) ); |
| } |
| } |
| |
| addSubElement( popup ); |
| } |
| readEvents(); |
| } |
| //__________________________________________________________________________________________________ |
| void ElementDescriptor::readRadioButtonModel( StyleBag * all_styles ) |
| SAL_THROW( (Exception) ) |
| { |
| // collect styles |
| Style aStyle( 0x1 | 0x2 | 0x8 | 0x20 | 0x40 ); |
| if (readProp( OUString( RTL_CONSTASCII_USTRINGPARAM("BackgroundColor") ) ) >>= aStyle._backgroundColor) |
| aStyle._set |= 0x1; |
| if (readProp( OUString( RTL_CONSTASCII_USTRINGPARAM("TextColor") ) ) >>= aStyle._textColor) |
| aStyle._set |= 0x2; |
| if (readProp( OUString( RTL_CONSTASCII_USTRINGPARAM("TextLineColor") ) ) >>= aStyle._textLineColor) |
| aStyle._set |= 0x20; |
| if (readFontProps( this, aStyle )) |
| aStyle._set |= 0x8; |
| if (readProp( OUSTR("VisualEffect") ) >>= aStyle._visualEffect) |
| aStyle._set |= 0x40; |
| if (aStyle._set) |
| { |
| addAttribute( OUString( RTL_CONSTASCII_USTRINGPARAM(XMLNS_DIALOGS_PREFIX ":style-id") ), |
| all_styles->getStyleId( aStyle ) ); |
| } |
| |
| // collect elements |
| readDefaults(); |
| readBoolAttr( OUString( RTL_CONSTASCII_USTRINGPARAM("Tabstop") ), |
| OUString( RTL_CONSTASCII_USTRINGPARAM(XMLNS_DIALOGS_PREFIX ":tabstop") ) ); |
| readStringAttr( OUString( RTL_CONSTASCII_USTRINGPARAM("Label") ), |
| OUString( RTL_CONSTASCII_USTRINGPARAM(XMLNS_DIALOGS_PREFIX ":value") ) ); |
| readAlignAttr( OUString( RTL_CONSTASCII_USTRINGPARAM("Align") ), |
| OUString( RTL_CONSTASCII_USTRINGPARAM(XMLNS_DIALOGS_PREFIX ":align") ) ); |
| readVerticalAlignAttr( OUString( RTL_CONSTASCII_USTRINGPARAM("VerticalAlign") ), |
| OUString( RTL_CONSTASCII_USTRINGPARAM(XMLNS_DIALOGS_PREFIX ":valign") ) ); |
| readStringAttr( OUString( RTL_CONSTASCII_USTRINGPARAM("ImageURL") ), |
| OUString( RTL_CONSTASCII_USTRINGPARAM(XMLNS_DIALOGS_PREFIX ":image-src") ) ); |
| readImagePositionAttr( OUString( RTL_CONSTASCII_USTRINGPARAM("ImagePosition") ), |
| OUString( RTL_CONSTASCII_USTRINGPARAM(XMLNS_DIALOGS_PREFIX ":image-position") ) ); |
| readBoolAttr( OUString( RTL_CONSTASCII_USTRINGPARAM("MultiLine") ), |
| OUString( RTL_CONSTASCII_USTRINGPARAM(XMLNS_DIALOGS_PREFIX ":multiline") ) ); |
| |
| sal_Int16 nState = 0; |
| if (readProp( OUString( RTL_CONSTASCII_USTRINGPARAM("State") ) ) >>= nState) |
| { |
| switch (nState) |
| { |
| case 0: |
| addAttribute( OUString( RTL_CONSTASCII_USTRINGPARAM(XMLNS_DIALOGS_PREFIX ":checked") ), |
| OUString( RTL_CONSTASCII_USTRINGPARAM("false") ) ); |
| break; |
| case 1: |
| addAttribute( OUString( RTL_CONSTASCII_USTRINGPARAM(XMLNS_DIALOGS_PREFIX ":checked") ), |
| OUString( RTL_CONSTASCII_USTRINGPARAM("true") ) ); |
| break; |
| default: |
| OSL_ENSURE( 0, "### unexpected radio state!" ); |
| break; |
| } |
| } |
| readEvents(); |
| } |
| //__________________________________________________________________________________________________ |
| void ElementDescriptor::readGroupBoxModel( StyleBag * all_styles ) |
| SAL_THROW( (Exception) ) |
| { |
| // collect styles |
| Style aStyle( 0x2 | 0x8 | 0x20 ); |
| if (readProp( OUString( RTL_CONSTASCII_USTRINGPARAM("TextColor") ) ) >>= aStyle._textColor) |
| aStyle._set |= 0x2; |
| if (readProp( OUString( RTL_CONSTASCII_USTRINGPARAM("TextLineColor") ) ) >>= aStyle._textLineColor) |
| aStyle._set |= 0x20; |
| if (readFontProps( this, aStyle )) |
| aStyle._set |= 0x8; |
| if (aStyle._set) |
| { |
| addAttribute( OUString( RTL_CONSTASCII_USTRINGPARAM(XMLNS_DIALOGS_PREFIX ":style-id") ), |
| all_styles->getStyleId( aStyle ) ); |
| } |
| |
| // collect elements |
| readDefaults(); |
| |
| OUString aTitle; |
| if (readProp( OUString( RTL_CONSTASCII_USTRINGPARAM("Label") ) ) >>= aTitle) |
| { |
| ElementDescriptor * title = new ElementDescriptor( |
| _xProps, _xPropState, |
| OUString( RTL_CONSTASCII_USTRINGPARAM(XMLNS_DIALOGS_PREFIX ":title") ) ); |
| title->addAttribute( OUString( RTL_CONSTASCII_USTRINGPARAM(XMLNS_DIALOGS_PREFIX ":value") ), |
| aTitle ); |
| addSubElement( title ); |
| } |
| |
| readEvents(); |
| } |
| //__________________________________________________________________________________________________ |
| void ElementDescriptor::readFixedTextModel( StyleBag * all_styles ) |
| SAL_THROW( (Exception) ) |
| { |
| // collect styles |
| Style aStyle( 0x1 | 0x2 | 0x4 | 0x8 | 0x20 ); |
| if (readProp( OUString( RTL_CONSTASCII_USTRINGPARAM("BackgroundColor") ) ) >>= aStyle._backgroundColor) |
| aStyle._set |= 0x1; |
| if (readProp( OUString( RTL_CONSTASCII_USTRINGPARAM("TextColor") ) ) >>= aStyle._textColor) |
| aStyle._set |= 0x2; |
| if (readProp( OUString( RTL_CONSTASCII_USTRINGPARAM("TextLineColor") ) ) >>= aStyle._textLineColor) |
| aStyle._set |= 0x20; |
| if (readBorderProps( this, aStyle )) |
| aStyle._set |= 0x4; |
| if (readFontProps( this, aStyle )) |
| aStyle._set |= 0x8; |
| if (aStyle._set) |
| { |
| addAttribute( OUString( RTL_CONSTASCII_USTRINGPARAM(XMLNS_DIALOGS_PREFIX ":style-id") ), |
| all_styles->getStyleId( aStyle ) ); |
| } |
| |
| // collect elements |
| readDefaults(); |
| readStringAttr( OUString( RTL_CONSTASCII_USTRINGPARAM("Label") ), |
| OUString( RTL_CONSTASCII_USTRINGPARAM(XMLNS_DIALOGS_PREFIX ":value") ) ); |
| readAlignAttr( OUString( RTL_CONSTASCII_USTRINGPARAM("Align") ), |
| OUString( RTL_CONSTASCII_USTRINGPARAM(XMLNS_DIALOGS_PREFIX ":align") ) ); |
| readVerticalAlignAttr( OUString( RTL_CONSTASCII_USTRINGPARAM("VerticalAlign") ), |
| OUString( RTL_CONSTASCII_USTRINGPARAM(XMLNS_DIALOGS_PREFIX ":valign") ) ); |
| readBoolAttr( OUString( RTL_CONSTASCII_USTRINGPARAM("MultiLine") ), |
| OUString( RTL_CONSTASCII_USTRINGPARAM(XMLNS_DIALOGS_PREFIX ":multiline") ) ); |
| readBoolAttr( OUString( RTL_CONSTASCII_USTRINGPARAM("Tabstop") ), |
| OUString( RTL_CONSTASCII_USTRINGPARAM(XMLNS_DIALOGS_PREFIX ":tabstop") ) ); |
| readBoolAttr( OUString( RTL_CONSTASCII_USTRINGPARAM("NoLabel") ), |
| OUString( RTL_CONSTASCII_USTRINGPARAM(XMLNS_DIALOGS_PREFIX ":nolabel") ) ); |
| readEvents(); |
| } |
| //__________________________________________________________________________________________________ |
| void ElementDescriptor::readFixedHyperLinkModel( StyleBag * all_styles ) |
| SAL_THROW( (Exception) ) |
| { |
| // collect styles |
| Style aStyle( 0x1 | 0x2 | 0x4 | 0x8 | 0x20 ); |
| if (readProp( OUString( RTL_CONSTASCII_USTRINGPARAM("BackgroundColor") ) ) >>= aStyle._backgroundColor) |
| aStyle._set |= 0x1; |
| if (readProp( OUString( RTL_CONSTASCII_USTRINGPARAM("TextColor") ) ) >>= aStyle._textColor) |
| aStyle._set |= 0x2; |
| if (readProp( OUString( RTL_CONSTASCII_USTRINGPARAM("TextLineColor") ) ) >>= aStyle._textLineColor) |
| aStyle._set |= 0x20; |
| if (readBorderProps( this, aStyle )) |
| aStyle._set |= 0x4; |
| if (readFontProps( this, aStyle )) |
| aStyle._set |= 0x8; |
| if (aStyle._set) |
| { |
| addAttribute( OUString( RTL_CONSTASCII_USTRINGPARAM(XMLNS_DIALOGS_PREFIX ":style-id") ), |
| all_styles->getStyleId( aStyle ) ); |
| } |
| |
| // collect elements |
| readDefaults(); |
| readStringAttr( OUString( RTL_CONSTASCII_USTRINGPARAM("Label") ), |
| OUString( RTL_CONSTASCII_USTRINGPARAM(XMLNS_DIALOGS_PREFIX ":value") ) ); |
| readStringAttr( OUString( RTL_CONSTASCII_USTRINGPARAM("URL") ), |
| OUString( RTL_CONSTASCII_USTRINGPARAM(XMLNS_DIALOGS_PREFIX ":url") ) ); |
| readStringAttr( OUString( RTL_CONSTASCII_USTRINGPARAM("Description") ), |
| OUString( RTL_CONSTASCII_USTRINGPARAM(XMLNS_DIALOGS_PREFIX ":description") ) ); |
| readAlignAttr( OUString( RTL_CONSTASCII_USTRINGPARAM("Align") ), |
| OUString( RTL_CONSTASCII_USTRINGPARAM(XMLNS_DIALOGS_PREFIX ":align") ) ); |
| readVerticalAlignAttr( OUString( RTL_CONSTASCII_USTRINGPARAM("VerticalAlign") ), |
| OUString( RTL_CONSTASCII_USTRINGPARAM(XMLNS_DIALOGS_PREFIX ":valign") ) ); |
| readBoolAttr( OUString( RTL_CONSTASCII_USTRINGPARAM("MultiLine") ), |
| OUString( RTL_CONSTASCII_USTRINGPARAM(XMLNS_DIALOGS_PREFIX ":multiline") ) ); |
| readBoolAttr( OUString( RTL_CONSTASCII_USTRINGPARAM("Tabstop") ), |
| OUString( RTL_CONSTASCII_USTRINGPARAM(XMLNS_DIALOGS_PREFIX ":tabstop") ) ); |
| readBoolAttr( OUString( RTL_CONSTASCII_USTRINGPARAM("NoLabel") ), |
| OUString( RTL_CONSTASCII_USTRINGPARAM(XMLNS_DIALOGS_PREFIX ":nolabel") ) ); |
| readEvents(); |
| } |
| //__________________________________________________________________________________________________ |
| void ElementDescriptor::readEditModel( StyleBag * all_styles ) |
| SAL_THROW( (Exception) ) |
| { |
| // collect styles |
| Style aStyle( 0x1 | 0x2 | 0x4 | 0x8 | 0x20 ); |
| if (readProp( OUString( RTL_CONSTASCII_USTRINGPARAM("BackgroundColor") ) ) >>= aStyle._backgroundColor) |
| aStyle._set |= 0x1; |
| if (readProp( OUString( RTL_CONSTASCII_USTRINGPARAM("TextColor") ) ) >>= aStyle._textColor) |
| aStyle._set |= 0x2; |
| if (readProp( OUString( RTL_CONSTASCII_USTRINGPARAM("TextLineColor") ) ) >>= aStyle._textLineColor) |
| aStyle._set |= 0x20; |
| if (readBorderProps( this, aStyle )) |
| aStyle._set |= 0x4; |
| if (readFontProps( this, aStyle )) |
| aStyle._set |= 0x8; |
| if (aStyle._set) |
| { |
| addAttribute( OUString( RTL_CONSTASCII_USTRINGPARAM(XMLNS_DIALOGS_PREFIX ":style-id") ), |
| all_styles->getStyleId( aStyle ) ); |
| } |
| |
| // collect elements |
| readDefaults(); |
| readBoolAttr( OUString( RTL_CONSTASCII_USTRINGPARAM("Tabstop") ), |
| OUString( RTL_CONSTASCII_USTRINGPARAM(XMLNS_DIALOGS_PREFIX ":tabstop") ) ); |
| readBoolAttr( OUSTR("HideInactiveSelection"), |
| OUSTR(XMLNS_DIALOGS_PREFIX ":hide-inactive-selection") ); |
| readAlignAttr( OUString( RTL_CONSTASCII_USTRINGPARAM("Align") ), |
| OUString( RTL_CONSTASCII_USTRINGPARAM(XMLNS_DIALOGS_PREFIX ":align") ) ); |
| readBoolAttr( OUString( RTL_CONSTASCII_USTRINGPARAM("HardLineBreaks") ), |
| OUString( RTL_CONSTASCII_USTRINGPARAM(XMLNS_DIALOGS_PREFIX ":hard-linebreaks") ) ); |
| readBoolAttr( OUString( RTL_CONSTASCII_USTRINGPARAM("HScroll") ), |
| OUString( RTL_CONSTASCII_USTRINGPARAM(XMLNS_DIALOGS_PREFIX ":hscroll") ) ); |
| readBoolAttr( OUString( RTL_CONSTASCII_USTRINGPARAM("VScroll") ), |
| OUString( RTL_CONSTASCII_USTRINGPARAM(XMLNS_DIALOGS_PREFIX ":vscroll") ) ); |
| readShortAttr( OUString( RTL_CONSTASCII_USTRINGPARAM("MaxTextLen") ), |
| OUString( RTL_CONSTASCII_USTRINGPARAM(XMLNS_DIALOGS_PREFIX ":maxlength") ) ); |
| readBoolAttr( OUString( RTL_CONSTASCII_USTRINGPARAM("MultiLine") ), |
| OUString( RTL_CONSTASCII_USTRINGPARAM(XMLNS_DIALOGS_PREFIX ":multiline") ) ); |
| readBoolAttr( OUString( RTL_CONSTASCII_USTRINGPARAM("ReadOnly") ), |
| OUString( RTL_CONSTASCII_USTRINGPARAM(XMLNS_DIALOGS_PREFIX ":readonly") ) ); |
| readStringAttr( OUString( RTL_CONSTASCII_USTRINGPARAM("Text") ), |
| OUString( RTL_CONSTASCII_USTRINGPARAM(XMLNS_DIALOGS_PREFIX ":value") ) ); |
| readLineEndFormatAttr( OUString( RTL_CONSTASCII_USTRINGPARAM("LineEndFormat") ), |
| OUString( RTL_CONSTASCII_USTRINGPARAM(XMLNS_DIALOGS_PREFIX ":lineend-format") ) ); |
| sal_Int16 nEcho = 0; |
| if (readProp( OUString( RTL_CONSTASCII_USTRINGPARAM("EchoChar") ) ) >>= nEcho) |
| { |
| sal_Unicode cEcho = (sal_Unicode)nEcho; |
| addAttribute( OUString( RTL_CONSTASCII_USTRINGPARAM(XMLNS_DIALOGS_PREFIX ":echochar") ), |
| OUString( &cEcho, 1 ) ); |
| } |
| readEvents(); |
| } |
| //__________________________________________________________________________________________________ |
| void ElementDescriptor::readImageControlModel( StyleBag * all_styles ) |
| SAL_THROW( (Exception) ) |
| { |
| // collect styles |
| Style aStyle( 0x1 | 0x4 ); |
| if (readProp( OUString( RTL_CONSTASCII_USTRINGPARAM("BackgroundColor") ) ) >>= aStyle._backgroundColor) |
| aStyle._set |= 0x1; |
| if (readBorderProps( this, aStyle )) |
| aStyle._set |= 0x4; |
| if (aStyle._set) |
| { |
| addAttribute( OUString( RTL_CONSTASCII_USTRINGPARAM(XMLNS_DIALOGS_PREFIX ":style-id") ), |
| all_styles->getStyleId( aStyle ) ); |
| } |
| |
| // collect elements |
| readDefaults(); |
| readBoolAttr( OUString( RTL_CONSTASCII_USTRINGPARAM("ScaleImage") ), |
| OUString( RTL_CONSTASCII_USTRINGPARAM(XMLNS_DIALOGS_PREFIX ":scale-image") ) ); |
| readStringAttr( OUString( RTL_CONSTASCII_USTRINGPARAM("ImageURL") ), |
| OUString( RTL_CONSTASCII_USTRINGPARAM(XMLNS_DIALOGS_PREFIX ":src") ) ); |
| readBoolAttr( OUString( RTL_CONSTASCII_USTRINGPARAM("Tabstop") ), |
| OUString( RTL_CONSTASCII_USTRINGPARAM(XMLNS_DIALOGS_PREFIX ":tabstop") ) ); |
| readEvents(); |
| } |
| //__________________________________________________________________________________________________ |
| void ElementDescriptor::readFileControlModel( StyleBag * all_styles ) |
| SAL_THROW( (Exception) ) |
| { |
| // collect styles |
| Style aStyle( 0x1 | 0x2 | 0x4 | 0x8 | 0x20 ); |
| if (readProp( OUString( RTL_CONSTASCII_USTRINGPARAM("BackgroundColor") ) ) >>= aStyle._backgroundColor) |
| aStyle._set |= 0x1; |
| if (readProp( OUString( RTL_CONSTASCII_USTRINGPARAM("TextColor") ) ) >>= aStyle._textColor) |
| aStyle._set |= 0x2; |
| if (readProp( OUString( RTL_CONSTASCII_USTRINGPARAM("TextLineColor") ) ) >>= aStyle._textLineColor) |
| aStyle._set |= 0x20; |
| if (readBorderProps( this, aStyle )) |
| aStyle._set |= 0x4; |
| if (readFontProps( this, aStyle )) |
| aStyle._set |= 0x8; |
| if (aStyle._set) |
| { |
| addAttribute( OUString( RTL_CONSTASCII_USTRINGPARAM(XMLNS_DIALOGS_PREFIX ":style-id") ), |
| all_styles->getStyleId( aStyle ) ); |
| } |
| |
| // collect elements |
| readDefaults(); |
| readBoolAttr( OUString( RTL_CONSTASCII_USTRINGPARAM("Tabstop") ), |
| OUString( RTL_CONSTASCII_USTRINGPARAM(XMLNS_DIALOGS_PREFIX ":tabstop") ) ); |
| readBoolAttr( OUSTR("HideInactiveSelection"), |
| OUSTR(XMLNS_DIALOGS_PREFIX ":hide-inactive-selection") ); |
| readStringAttr( OUString( RTL_CONSTASCII_USTRINGPARAM("Text") ), |
| OUString( RTL_CONSTASCII_USTRINGPARAM(XMLNS_DIALOGS_PREFIX ":value") ) ); |
| readBoolAttr( OUString( RTL_CONSTASCII_USTRINGPARAM("ReadOnly") ), |
| OUString( RTL_CONSTASCII_USTRINGPARAM(XMLNS_DIALOGS_PREFIX ":readonly") ) ); |
| readEvents(); |
| } |
| //__________________________________________________________________________________________________ |
| void ElementDescriptor::readTreeControlModel( StyleBag * all_styles ) |
| SAL_THROW( (Exception) ) |
| { |
| // collect styles |
| Style aStyle( 0x1 | 0x2 | 0x4 | 0x8 | 0x20 ); |
| if (readProp( OUString( RTL_CONSTASCII_USTRINGPARAM("BackgroundColor") ) ) >>= aStyle._backgroundColor) |
| aStyle._set |= 0x1; |
| if (readBorderProps( this, aStyle )) |
| aStyle._set |= 0x4; |
| if (aStyle._set) |
| { |
| addAttribute( OUString( RTL_CONSTASCII_USTRINGPARAM(XMLNS_DIALOGS_PREFIX ":style-id") ), |
| all_styles->getStyleId( aStyle ) ); |
| } |
| |
| // collect elements |
| readDefaults(); |
| readBoolAttr( OUString( RTL_CONSTASCII_USTRINGPARAM("Tabstop") ), |
| OUString( RTL_CONSTASCII_USTRINGPARAM(XMLNS_DIALOGS_PREFIX ":tabstop") ) ); |
| readSelectionTypeAttr( OUString( RTL_CONSTASCII_USTRINGPARAM("SelectionType") ), |
| OUString( RTL_CONSTASCII_USTRINGPARAM(XMLNS_DIALOGS_PREFIX ":selectiontype") ) ); |
| |
| readBoolAttr( OUString( RTL_CONSTASCII_USTRINGPARAM("RootDisplayed") ), |
| OUString( RTL_CONSTASCII_USTRINGPARAM(XMLNS_DIALOGS_PREFIX ":rootdisplayed") ) ); |
| readBoolAttr( OUString( RTL_CONSTASCII_USTRINGPARAM("ShowsHandles") ), |
| OUString( RTL_CONSTASCII_USTRINGPARAM(XMLNS_DIALOGS_PREFIX ":showshandles") ) ); |
| readBoolAttr( OUString( RTL_CONSTASCII_USTRINGPARAM("ShowsRootHandles") ), |
| OUString( RTL_CONSTASCII_USTRINGPARAM(XMLNS_DIALOGS_PREFIX ":showsroothandles") ) ); |
| readBoolAttr( OUString( RTL_CONSTASCII_USTRINGPARAM("Editable") ), |
| OUString( RTL_CONSTASCII_USTRINGPARAM(XMLNS_DIALOGS_PREFIX ":editable") ) ); |
| readBoolAttr( OUString( RTL_CONSTASCII_USTRINGPARAM("InvokesStopNodeEditing") ), |
| OUString( RTL_CONSTASCII_USTRINGPARAM(XMLNS_DIALOGS_PREFIX ":invokesstopnodeediting") ) ); |
| readLongAttr( OUString( RTL_CONSTASCII_USTRINGPARAM("RowHeight") ), |
| OUString( RTL_CONSTASCII_USTRINGPARAM(XMLNS_DIALOGS_PREFIX ":rowheight") ) ); |
| readEvents(); |
| } |
| //__________________________________________________________________________________________________ |
| void ElementDescriptor::readCurrencyFieldModel( StyleBag * all_styles ) |
| SAL_THROW( (Exception) ) |
| { |
| // collect styles |
| Style aStyle( 0x1 | 0x2 | 0x4 | 0x8 | 0x20 ); |
| if (readProp( OUString( RTL_CONSTASCII_USTRINGPARAM("BackgroundColor") ) ) >>= aStyle._backgroundColor) |
| aStyle._set |= 0x1; |
| if (readProp( OUString( RTL_CONSTASCII_USTRINGPARAM("TextColor") ) ) >>= aStyle._textColor) |
| aStyle._set |= 0x2; |
| if (readProp( OUString( RTL_CONSTASCII_USTRINGPARAM("TextLineColor") ) ) >>= aStyle._textLineColor) |
| aStyle._set |= 0x20; |
| if (readBorderProps( this, aStyle )) |
| aStyle._set |= 0x4; |
| if (readFontProps( this, aStyle )) |
| aStyle._set |= 0x8; |
| if (aStyle._set) |
| { |
| addAttribute( OUString( RTL_CONSTASCII_USTRINGPARAM(XMLNS_DIALOGS_PREFIX ":style-id") ), |
| all_styles->getStyleId( aStyle ) ); |
| } |
| |
| // collect elements |
| readDefaults(); |
| readBoolAttr( OUString( RTL_CONSTASCII_USTRINGPARAM("Tabstop") ), |
| OUString( RTL_CONSTASCII_USTRINGPARAM(XMLNS_DIALOGS_PREFIX ":tabstop") ) ); |
| readBoolAttr( OUString( RTL_CONSTASCII_USTRINGPARAM("ReadOnly") ), |
| OUString( RTL_CONSTASCII_USTRINGPARAM(XMLNS_DIALOGS_PREFIX ":readonly") ) ); |
| readBoolAttr( OUSTR("HideInactiveSelection"), |
| OUSTR(XMLNS_DIALOGS_PREFIX ":hide-inactive-selection") ); |
| readBoolAttr( OUString( RTL_CONSTASCII_USTRINGPARAM("StrictFormat") ), |
| OUString( RTL_CONSTASCII_USTRINGPARAM(XMLNS_DIALOGS_PREFIX ":strict-format") ) ); |
| readStringAttr( OUString( RTL_CONSTASCII_USTRINGPARAM("CurrencySymbol") ), |
| OUString( RTL_CONSTASCII_USTRINGPARAM(XMLNS_DIALOGS_PREFIX ":currency-symbol") ) ); |
| readShortAttr( OUString( RTL_CONSTASCII_USTRINGPARAM("DecimalAccuracy") ), |
| OUString( RTL_CONSTASCII_USTRINGPARAM(XMLNS_DIALOGS_PREFIX ":decimal-accuracy") ) ); |
| readBoolAttr( OUString( RTL_CONSTASCII_USTRINGPARAM("ShowThousandsSeparator") ), |
| OUString( RTL_CONSTASCII_USTRINGPARAM(XMLNS_DIALOGS_PREFIX ":thousands-separator") ) ); |
| readDoubleAttr( OUString( RTL_CONSTASCII_USTRINGPARAM("Value") ), |
| OUString( RTL_CONSTASCII_USTRINGPARAM(XMLNS_DIALOGS_PREFIX ":value") ) ); |
| readDoubleAttr( OUString( RTL_CONSTASCII_USTRINGPARAM("ValueMin") ), |
| OUString( RTL_CONSTASCII_USTRINGPARAM(XMLNS_DIALOGS_PREFIX ":value-min") ) ); |
| readDoubleAttr( OUString( RTL_CONSTASCII_USTRINGPARAM("ValueMax") ), |
| OUString( RTL_CONSTASCII_USTRINGPARAM(XMLNS_DIALOGS_PREFIX ":value-max") ) ); |
| readDoubleAttr( OUString( RTL_CONSTASCII_USTRINGPARAM("ValueStep") ), |
| OUString( RTL_CONSTASCII_USTRINGPARAM(XMLNS_DIALOGS_PREFIX ":value-step") ) ); |
| readBoolAttr( OUString( RTL_CONSTASCII_USTRINGPARAM("Spin") ), |
| OUString( RTL_CONSTASCII_USTRINGPARAM(XMLNS_DIALOGS_PREFIX ":spin") ) ); |
| if (extract_throw<bool>( _xProps->getPropertyValue( OUSTR("Repeat") ) )) |
| readLongAttr( OUSTR("RepeatDelay"), |
| OUSTR(XMLNS_DIALOGS_PREFIX ":repeat"), true /* force */ ); |
| readBoolAttr( |
| OUString( RTL_CONSTASCII_USTRINGPARAM("PrependCurrencySymbol") ), |
| OUString( RTL_CONSTASCII_USTRINGPARAM(XMLNS_DIALOGS_PREFIX ":prepend-symbol") ) ); |
| readBoolAttr( OUString( RTL_CONSTASCII_USTRINGPARAM("EnforceFormat") ), |
| OUString( RTL_CONSTASCII_USTRINGPARAM(XMLNS_DIALOGS_PREFIX ":enforce-format") ) ); |
| readEvents(); |
| } |
| //__________________________________________________________________________________________________ |
| void ElementDescriptor::readDateFieldModel( StyleBag * all_styles ) |
| SAL_THROW( (Exception) ) |
| { |
| // collect styles |
| Style aStyle( 0x1 | 0x2 | 0x4 | 0x8 | 0x20 ); |
| if (readProp( OUString( RTL_CONSTASCII_USTRINGPARAM("BackgroundColor") ) ) >>= aStyle._backgroundColor) |
| aStyle._set |= 0x1; |
| if (readProp( OUString( RTL_CONSTASCII_USTRINGPARAM("TextColor") ) ) >>= aStyle._textColor) |
| aStyle._set |= 0x2; |
| if (readProp( OUString( RTL_CONSTASCII_USTRINGPARAM("TextLineColor") ) ) >>= aStyle._textLineColor) |
| aStyle._set |= 0x20; |
| if (readBorderProps( this, aStyle )) |
| aStyle._set |= 0x4; |
| if (readFontProps( this, aStyle )) |
| aStyle._set |= 0x8; |
| if (aStyle._set) |
| { |
| addAttribute( OUString( RTL_CONSTASCII_USTRINGPARAM(XMLNS_DIALOGS_PREFIX ":style-id") ), |
| all_styles->getStyleId( aStyle ) ); |
| } |
| |
| // collect elements |
| readDefaults(); |
| readBoolAttr( OUString( RTL_CONSTASCII_USTRINGPARAM("Tabstop") ), |
| OUString( RTL_CONSTASCII_USTRINGPARAM(XMLNS_DIALOGS_PREFIX ":tabstop") ) ); |
| readBoolAttr( OUString( RTL_CONSTASCII_USTRINGPARAM("ReadOnly") ), |
| OUString( RTL_CONSTASCII_USTRINGPARAM(XMLNS_DIALOGS_PREFIX ":readonly") ) ); |
| readBoolAttr( OUSTR("HideInactiveSelection"), |
| OUSTR(XMLNS_DIALOGS_PREFIX ":hide-inactive-selection") ); |
| readBoolAttr( OUString( RTL_CONSTASCII_USTRINGPARAM("StrictFormat") ), |
| OUString( RTL_CONSTASCII_USTRINGPARAM(XMLNS_DIALOGS_PREFIX ":strict-format") ) ); |
| readDateFormatAttr( OUString( RTL_CONSTASCII_USTRINGPARAM("DateFormat") ), |
| OUString( RTL_CONSTASCII_USTRINGPARAM(XMLNS_DIALOGS_PREFIX ":date-format") ) ); |
| readBoolAttr( OUString( RTL_CONSTASCII_USTRINGPARAM("DateShowCentury") ), |
| OUString( RTL_CONSTASCII_USTRINGPARAM(XMLNS_DIALOGS_PREFIX ":show-century") ) ); |
| readLongAttr( OUString( RTL_CONSTASCII_USTRINGPARAM("Date") ), |
| OUString( RTL_CONSTASCII_USTRINGPARAM(XMLNS_DIALOGS_PREFIX ":value") ) ); |
| readLongAttr( OUString( RTL_CONSTASCII_USTRINGPARAM("DateMin") ), |
| OUString( RTL_CONSTASCII_USTRINGPARAM(XMLNS_DIALOGS_PREFIX ":value-min") ) ); |
| readLongAttr( OUString( RTL_CONSTASCII_USTRINGPARAM("DateMax") ), |
| OUString( RTL_CONSTASCII_USTRINGPARAM(XMLNS_DIALOGS_PREFIX ":value-max") ) ); |
| readBoolAttr( OUString( RTL_CONSTASCII_USTRINGPARAM("Spin") ), |
| OUString( RTL_CONSTASCII_USTRINGPARAM(XMLNS_DIALOGS_PREFIX ":spin") ) ); |
| if (extract_throw<bool>( _xProps->getPropertyValue( OUSTR("Repeat") ) )) |
| readLongAttr( OUSTR("RepeatDelay"), |
| OUSTR(XMLNS_DIALOGS_PREFIX ":repeat"), true /* force */ ); |
| readBoolAttr( OUString( RTL_CONSTASCII_USTRINGPARAM("Dropdown") ), |
| OUString( RTL_CONSTASCII_USTRINGPARAM(XMLNS_DIALOGS_PREFIX ":dropdown") ) ); |
| readStringAttr( OUString( RTL_CONSTASCII_USTRINGPARAM("Text") ), |
| OUString( RTL_CONSTASCII_USTRINGPARAM(XMLNS_DIALOGS_PREFIX ":text") ) ); |
| readBoolAttr( OUString( RTL_CONSTASCII_USTRINGPARAM("EnforceFormat") ), |
| OUString( RTL_CONSTASCII_USTRINGPARAM(XMLNS_DIALOGS_PREFIX ":enforce-format") ) ); |
| readEvents(); |
| } |
| //__________________________________________________________________________________________________ |
| void ElementDescriptor::readNumericFieldModel( StyleBag * all_styles ) |
| SAL_THROW( (Exception) ) |
| { |
| // collect styles |
| Style aStyle( 0x1 | 0x2 | 0x4 | 0x8 | 0x20 ); |
| if (readProp( OUString( RTL_CONSTASCII_USTRINGPARAM("BackgroundColor") ) ) >>= aStyle._backgroundColor) |
| aStyle._set |= 0x1; |
| if (readProp( OUString( RTL_CONSTASCII_USTRINGPARAM("TextColor") ) ) >>= aStyle._textColor) |
| aStyle._set |= 0x2; |
| if (readProp( OUString( RTL_CONSTASCII_USTRINGPARAM("TextLineColor") ) ) >>= aStyle._textLineColor) |
| aStyle._set |= 0x20; |
| if (readBorderProps( this, aStyle )) |
| aStyle._set |= 0x4; |
| if (readFontProps( this, aStyle )) |
| aStyle._set |= 0x8; |
| if (aStyle._set) |
| { |
| addAttribute( OUString( RTL_CONSTASCII_USTRINGPARAM(XMLNS_DIALOGS_PREFIX ":style-id") ), |
| all_styles->getStyleId( aStyle ) ); |
| } |
| |
| // collect elements |
| readDefaults(); |
| readBoolAttr( OUString( RTL_CONSTASCII_USTRINGPARAM("Tabstop") ), |
| OUString( RTL_CONSTASCII_USTRINGPARAM(XMLNS_DIALOGS_PREFIX ":tabstop") ) ); |
| readBoolAttr( OUString( RTL_CONSTASCII_USTRINGPARAM("ReadOnly") ), |
| OUString( RTL_CONSTASCII_USTRINGPARAM(XMLNS_DIALOGS_PREFIX ":readonly") ) ); |
| readBoolAttr( OUSTR("HideInactiveSelection"), |
| OUSTR(XMLNS_DIALOGS_PREFIX ":hide-inactive-selection") ); |
| readBoolAttr( OUString( RTL_CONSTASCII_USTRINGPARAM("StrictFormat") ), |
| OUString( RTL_CONSTASCII_USTRINGPARAM(XMLNS_DIALOGS_PREFIX ":strict-format") ) ); |
| readShortAttr( OUString( RTL_CONSTASCII_USTRINGPARAM("DecimalAccuracy") ), |
| OUString( RTL_CONSTASCII_USTRINGPARAM(XMLNS_DIALOGS_PREFIX ":decimal-accuracy") ) ); |
| readBoolAttr( OUString( RTL_CONSTASCII_USTRINGPARAM("ShowThousandsSeparator") ), |
| OUString( RTL_CONSTASCII_USTRINGPARAM(XMLNS_DIALOGS_PREFIX ":thousands-separator") ) ); |
| readDoubleAttr( OUString( RTL_CONSTASCII_USTRINGPARAM("Value") ), |
| OUString( RTL_CONSTASCII_USTRINGPARAM(XMLNS_DIALOGS_PREFIX ":value") ) ); |
| readDoubleAttr( OUString( RTL_CONSTASCII_USTRINGPARAM("ValueMin") ), |
| OUString( RTL_CONSTASCII_USTRINGPARAM(XMLNS_DIALOGS_PREFIX ":value-min") ) ); |
| readDoubleAttr( OUString( RTL_CONSTASCII_USTRINGPARAM("ValueMax") ), |
| OUString( RTL_CONSTASCII_USTRINGPARAM(XMLNS_DIALOGS_PREFIX ":value-max") ) ); |
| readDoubleAttr( OUString( RTL_CONSTASCII_USTRINGPARAM("ValueStep") ), |
| OUString( RTL_CONSTASCII_USTRINGPARAM(XMLNS_DIALOGS_PREFIX ":value-step") ) ); |
| readBoolAttr( OUString( RTL_CONSTASCII_USTRINGPARAM("Spin") ), |
| OUString( RTL_CONSTASCII_USTRINGPARAM(XMLNS_DIALOGS_PREFIX ":spin") ) ); |
| if (extract_throw<bool>( _xProps->getPropertyValue( OUSTR("Repeat") ) )) |
| readLongAttr( OUSTR("RepeatDelay"), |
| OUSTR(XMLNS_DIALOGS_PREFIX ":repeat"), true /* force */ ); |
| readBoolAttr( OUString( RTL_CONSTASCII_USTRINGPARAM("EnforceFormat") ), |
| OUString( RTL_CONSTASCII_USTRINGPARAM(XMLNS_DIALOGS_PREFIX ":enforce-format") ) ); |
| readEvents(); |
| } |
| //__________________________________________________________________________________________________ |
| void ElementDescriptor::readTimeFieldModel( StyleBag * all_styles ) |
| SAL_THROW( (Exception) ) |
| { |
| // collect styles |
| Style aStyle( 0x1 | 0x2 | 0x4 | 0x8 | 0x20 ); |
| if (readProp( OUString( RTL_CONSTASCII_USTRINGPARAM("BackgroundColor") ) ) >>= aStyle._backgroundColor) |
| aStyle._set |= 0x1; |
| if (readProp( OUString( RTL_CONSTASCII_USTRINGPARAM("TextColor") ) ) >>= aStyle._textColor) |
| aStyle._set |= 0x2; |
| if (readProp( OUString( RTL_CONSTASCII_USTRINGPARAM("TextLineColor") ) ) >>= aStyle._textLineColor) |
| aStyle._set |= 0x20; |
| if (readBorderProps( this, aStyle )) |
| aStyle._set |= 0x4; |
| if (readFontProps( this, aStyle )) |
| aStyle._set |= 0x8; |
| if (aStyle._set) |
| { |
| addAttribute( OUString( RTL_CONSTASCII_USTRINGPARAM(XMLNS_DIALOGS_PREFIX ":style-id") ), |
| all_styles->getStyleId( aStyle ) ); |
| } |
| |
| // collect elements |
| readDefaults(); |
| readBoolAttr( OUString( RTL_CONSTASCII_USTRINGPARAM("Tabstop") ), |
| OUString( RTL_CONSTASCII_USTRINGPARAM(XMLNS_DIALOGS_PREFIX ":tabstop") ) ); |
| readBoolAttr( OUString( RTL_CONSTASCII_USTRINGPARAM("ReadOnly") ), |
| OUString( RTL_CONSTASCII_USTRINGPARAM(XMLNS_DIALOGS_PREFIX ":readonly") ) ); |
| readBoolAttr( OUSTR("HideInactiveSelection"), |
| OUSTR(XMLNS_DIALOGS_PREFIX ":hide-inactive-selection") ); |
| readBoolAttr( OUString( RTL_CONSTASCII_USTRINGPARAM("StrictFormat") ), |
| OUString( RTL_CONSTASCII_USTRINGPARAM(XMLNS_DIALOGS_PREFIX ":strict-format") ) ); |
| readTimeFormatAttr( OUString( RTL_CONSTASCII_USTRINGPARAM("TimeFormat") ), |
| OUString( RTL_CONSTASCII_USTRINGPARAM(XMLNS_DIALOGS_PREFIX ":time-format") ) ); |
| readLongAttr( OUString( RTL_CONSTASCII_USTRINGPARAM("Time") ), |
| OUString( RTL_CONSTASCII_USTRINGPARAM(XMLNS_DIALOGS_PREFIX ":value") ) ); |
| readLongAttr( OUString( RTL_CONSTASCII_USTRINGPARAM("TimeMin") ), |
| OUString( RTL_CONSTASCII_USTRINGPARAM(XMLNS_DIALOGS_PREFIX ":value-min") ) ); |
| readLongAttr( OUString( RTL_CONSTASCII_USTRINGPARAM("TimeMax") ), |
| OUString( RTL_CONSTASCII_USTRINGPARAM(XMLNS_DIALOGS_PREFIX ":value-max") ) ); |
| readBoolAttr( OUString( RTL_CONSTASCII_USTRINGPARAM("Spin") ), |
| OUString( RTL_CONSTASCII_USTRINGPARAM(XMLNS_DIALOGS_PREFIX ":spin") ) ); |
| if (extract_throw<bool>( _xProps->getPropertyValue( OUSTR("Repeat") ) )) |
| readLongAttr( OUSTR("RepeatDelay"), |
| OUSTR(XMLNS_DIALOGS_PREFIX ":repeat"), true /* force */ ); |
| readStringAttr( OUString( RTL_CONSTASCII_USTRINGPARAM("Text") ), |
| OUString( RTL_CONSTASCII_USTRINGPARAM(XMLNS_DIALOGS_PREFIX ":text") ) ); |
| readBoolAttr( OUString( RTL_CONSTASCII_USTRINGPARAM("EnforceFormat") ), |
| OUString( RTL_CONSTASCII_USTRINGPARAM(XMLNS_DIALOGS_PREFIX ":enforce-format") ) ); |
| readEvents(); |
| } |
| //__________________________________________________________________________________________________ |
| void ElementDescriptor::readPatternFieldModel( StyleBag * all_styles ) |
| SAL_THROW( (Exception) ) |
| { |
| // collect styles |
| Style aStyle( 0x1 | 0x2 | 0x4 | 0x8 | 0x20 ); |
| if (readProp( OUString( RTL_CONSTASCII_USTRINGPARAM("BackgroundColor") ) ) >>= aStyle._backgroundColor) |
| aStyle._set |= 0x1; |
| if (readProp( OUString( RTL_CONSTASCII_USTRINGPARAM("TextColor") ) ) >>= aStyle._textColor) |
| aStyle._set |= 0x2; |
| if (readProp( OUString( RTL_CONSTASCII_USTRINGPARAM("TextLineColor") ) ) >>= aStyle._textLineColor) |
| aStyle._set |= 0x20; |
| if (readBorderProps( this, aStyle )) |
| aStyle._set |= 0x4; |
| if (readFontProps( this, aStyle )) |
| aStyle._set |= 0x8; |
| if (aStyle._set) |
| { |
| addAttribute( OUString( RTL_CONSTASCII_USTRINGPARAM(XMLNS_DIALOGS_PREFIX ":style-id") ), |
| all_styles->getStyleId( aStyle ) ); |
| } |
| |
| // collect elements |
| readDefaults(); |
| readBoolAttr( OUString( RTL_CONSTASCII_USTRINGPARAM("Tabstop") ), |
| OUString( RTL_CONSTASCII_USTRINGPARAM(XMLNS_DIALOGS_PREFIX ":tabstop") ) ); |
| readBoolAttr( OUString( RTL_CONSTASCII_USTRINGPARAM("ReadOnly") ), |
| OUString( RTL_CONSTASCII_USTRINGPARAM(XMLNS_DIALOGS_PREFIX ":readonly") ) ); |
| readBoolAttr( OUSTR("HideInactiveSelection"), |
| OUSTR(XMLNS_DIALOGS_PREFIX ":hide-inactive-selection") ); |
| readBoolAttr( OUString( RTL_CONSTASCII_USTRINGPARAM("StrictFormat") ), |
| OUString( RTL_CONSTASCII_USTRINGPARAM(XMLNS_DIALOGS_PREFIX ":strict-format") ) ); |
| readStringAttr( OUString( RTL_CONSTASCII_USTRINGPARAM("Text") ), |
| OUString( RTL_CONSTASCII_USTRINGPARAM(XMLNS_DIALOGS_PREFIX ":value") ) ); |
| readShortAttr( OUString( RTL_CONSTASCII_USTRINGPARAM("MaxTextLen") ), |
| OUString( RTL_CONSTASCII_USTRINGPARAM(XMLNS_DIALOGS_PREFIX ":maxlength") ) ); |
| readStringAttr( OUString( RTL_CONSTASCII_USTRINGPARAM("EditMask") ), |
| OUString( RTL_CONSTASCII_USTRINGPARAM(XMLNS_DIALOGS_PREFIX ":edit-mask") ) ); |
| readStringAttr( OUString( RTL_CONSTASCII_USTRINGPARAM("LiteralMask") ), |
| OUString( RTL_CONSTASCII_USTRINGPARAM(XMLNS_DIALOGS_PREFIX ":literal-mask") ) ); |
| readEvents(); |
| } |
| //__________________________________________________________________________________________________ |
| void ElementDescriptor::readFormattedFieldModel( StyleBag * all_styles ) |
| SAL_THROW( (Exception) ) |
| { |
| // collect styles |
| Style aStyle( 0x1 | 0x2 | 0x4 | 0x8 | 0x20 ); |
| if (readProp( OUString( RTL_CONSTASCII_USTRINGPARAM("BackgroundColor") ) ) >>= aStyle._backgroundColor) |
| aStyle._set |= 0x1; |
| if (readProp( OUString( RTL_CONSTASCII_USTRINGPARAM("TextColor") ) ) >>= aStyle._textColor) |
| aStyle._set |= 0x2; |
| if (readProp( OUString( RTL_CONSTASCII_USTRINGPARAM("TextLineColor") ) ) >>= aStyle._textLineColor) |
| aStyle._set |= 0x20; |
| if (readBorderProps( this, aStyle )) |
| aStyle._set |= 0x4; |
| if (readFontProps( this, aStyle )) |
| aStyle._set |= 0x8; |
| if (aStyle._set) |
| { |
| addAttribute( OUString( RTL_CONSTASCII_USTRINGPARAM(XMLNS_DIALOGS_PREFIX ":style-id") ), |
| all_styles->getStyleId( aStyle ) ); |
| } |
| |
| // collect elements |
| readDefaults(); |
| readBoolAttr( OUString( RTL_CONSTASCII_USTRINGPARAM("Tabstop") ), |
| OUString( RTL_CONSTASCII_USTRINGPARAM(XMLNS_DIALOGS_PREFIX ":tabstop") ) ); |
| readBoolAttr( OUString( RTL_CONSTASCII_USTRINGPARAM("ReadOnly") ), |
| OUString( RTL_CONSTASCII_USTRINGPARAM(XMLNS_DIALOGS_PREFIX ":readonly") ) ); |
| readBoolAttr( OUSTR("HideInactiveSelection"), |
| OUSTR(XMLNS_DIALOGS_PREFIX ":hide-inactive-selection") ); |
| readBoolAttr( OUString( RTL_CONSTASCII_USTRINGPARAM("StrictFormat") ), |
| OUString( RTL_CONSTASCII_USTRINGPARAM(XMLNS_DIALOGS_PREFIX ":strict-format") ) ); |
| readStringAttr( OUString( RTL_CONSTASCII_USTRINGPARAM("Text") ), |
| OUString( RTL_CONSTASCII_USTRINGPARAM(XMLNS_DIALOGS_PREFIX ":text") ) ); |
| readAlignAttr( OUString( RTL_CONSTASCII_USTRINGPARAM("Align") ), |
| OUString( RTL_CONSTASCII_USTRINGPARAM(XMLNS_DIALOGS_PREFIX ":align") ) ); |
| readShortAttr( OUString( RTL_CONSTASCII_USTRINGPARAM("MaxTextLen") ), |
| OUString( RTL_CONSTASCII_USTRINGPARAM(XMLNS_DIALOGS_PREFIX ":maxlength") ) ); |
| readBoolAttr( OUString( RTL_CONSTASCII_USTRINGPARAM("Spin") ), |
| OUString( RTL_CONSTASCII_USTRINGPARAM(XMLNS_DIALOGS_PREFIX ":spin") ) ); |
| if (extract_throw<bool>( _xProps->getPropertyValue( OUSTR("Repeat") ) )) |
| readLongAttr( OUSTR("RepeatDelay"), |
| OUSTR(XMLNS_DIALOGS_PREFIX ":repeat"), true /* force */ ); |
| |
| Any a( readProp( OUString( RTL_CONSTASCII_USTRINGPARAM("EffectiveDefault") ) ) ); |
| switch (a.getValueTypeClass()) |
| { |
| case TypeClass_DOUBLE: |
| addAttribute( |
| OUString( RTL_CONSTASCII_USTRINGPARAM(XMLNS_DIALOGS_PREFIX ":value-default") ), |
| OUString::valueOf( *(double const *)a.getValue() ) ); |
| break; |
| case TypeClass_STRING: |
| addAttribute( |
| OUString( RTL_CONSTASCII_USTRINGPARAM(XMLNS_DIALOGS_PREFIX ":value-default") ), |
| *(OUString const *)a.getValue() ); |
| break; |
| default: |
| break; |
| } |
| readDoubleAttr( OUString( RTL_CONSTASCII_USTRINGPARAM("EffectiveMin") ), |
| OUString( RTL_CONSTASCII_USTRINGPARAM(XMLNS_DIALOGS_PREFIX ":value-min") ) ); |
| readDoubleAttr( OUString( RTL_CONSTASCII_USTRINGPARAM("EffectiveMax") ), |
| OUString( RTL_CONSTASCII_USTRINGPARAM(XMLNS_DIALOGS_PREFIX ":value-max") ) ); |
| readDoubleAttr( OUString( RTL_CONSTASCII_USTRINGPARAM("EffectiveValue") ), |
| OUString( RTL_CONSTASCII_USTRINGPARAM(XMLNS_DIALOGS_PREFIX ":value") ) ); |
| |
| // format spec |
| sal_Int32 nKey = 0; |
| if (readProp( OUString( RTL_CONSTASCII_USTRINGPARAM("FormatKey") ) ) >>= nKey) |
| { |
| Reference< util::XNumberFormatsSupplier > xSupplier; |
| if (readProp( OUString( RTL_CONSTASCII_USTRINGPARAM("FormatsSupplier") ) ) >>= xSupplier) |
| { |
| addNumberFormatAttr( |
| xSupplier->getNumberFormats()->getByKey( nKey ), |
| OUString( RTL_CONSTASCII_USTRINGPARAM(XMLNS_DIALOGS_PREFIX ":value-min") ) ); |
| } |
| } |
| readBoolAttr( |
| OUString( RTL_CONSTASCII_USTRINGPARAM("TreatAsNumber") ), |
| OUString( RTL_CONSTASCII_USTRINGPARAM(XMLNS_DIALOGS_PREFIX ":treat-as-number") ) ); |
| readBoolAttr( OUString( RTL_CONSTASCII_USTRINGPARAM("EnforceFormat") ), |
| OUString( RTL_CONSTASCII_USTRINGPARAM(XMLNS_DIALOGS_PREFIX ":enforce-format") ) ); |
| |
| readEvents(); |
| } |
| //__________________________________________________________________________________________________ |
| void ElementDescriptor::readFixedLineModel( StyleBag * all_styles ) |
| SAL_THROW( (Exception) ) |
| { |
| // collect styles |
| Style aStyle( 0x2 | 0x8 | 0x20 ); |
| if (readProp( OUString( RTL_CONSTASCII_USTRINGPARAM("TextColor") ) ) >>= aStyle._textColor) |
| aStyle._set |= 0x2; |
| if (readProp( OUString( RTL_CONSTASCII_USTRINGPARAM("TextLineColor") ) ) >>= aStyle._textLineColor) |
| aStyle._set |= 0x20; |
| if (readFontProps( this, aStyle )) |
| aStyle._set |= 0x8; |
| if (aStyle._set) |
| { |
| addAttribute( OUString( RTL_CONSTASCII_USTRINGPARAM(XMLNS_DIALOGS_PREFIX ":style-id") ), |
| all_styles->getStyleId( aStyle ) ); |
| } |
| |
| // collect elements |
| readDefaults(); |
| readStringAttr( OUString( RTL_CONSTASCII_USTRINGPARAM("Label") ), |
| OUString( RTL_CONSTASCII_USTRINGPARAM(XMLNS_DIALOGS_PREFIX ":value") ) ); |
| readOrientationAttr( OUString( RTL_CONSTASCII_USTRINGPARAM("Orientation") ), |
| OUString( RTL_CONSTASCII_USTRINGPARAM(XMLNS_DIALOGS_PREFIX ":align") ) ); |
| readEvents(); |
| } |
| //__________________________________________________________________________________________________ |
| void ElementDescriptor::readProgressBarModel( StyleBag * all_styles ) |
| SAL_THROW( (Exception) ) |
| { |
| // collect styles |
| Style aStyle( 0x1 | 0x4 | 0x10 ); |
| if (readProp( OUString( RTL_CONSTASCII_USTRINGPARAM("BackgroundColor") ) ) >>= aStyle._backgroundColor) |
| aStyle._set |= 0x1; |
| if (readBorderProps( this, aStyle )) |
| aStyle._set |= 0x4; |
| if (readProp( OUString( RTL_CONSTASCII_USTRINGPARAM("FillColor") ) ) >>= aStyle._descr) |
| aStyle._set |= 0x10; |
| if (aStyle._set) |
| { |
| addAttribute( OUString( RTL_CONSTASCII_USTRINGPARAM(XMLNS_DIALOGS_PREFIX ":style-id") ), |
| all_styles->getStyleId( aStyle ) ); |
| } |
| |
| // collect elements |
| readDefaults(); |
| readLongAttr( OUString( RTL_CONSTASCII_USTRINGPARAM("ProgressValue") ), |
| OUString( RTL_CONSTASCII_USTRINGPARAM(XMLNS_DIALOGS_PREFIX ":value") ) ); |
| readLongAttr( OUString( RTL_CONSTASCII_USTRINGPARAM("ProgressValueMin") ), |
| OUString( RTL_CONSTASCII_USTRINGPARAM(XMLNS_DIALOGS_PREFIX ":value-min") ) ); |
| readLongAttr( OUString( RTL_CONSTASCII_USTRINGPARAM("ProgressValueMax") ), |
| OUString( RTL_CONSTASCII_USTRINGPARAM(XMLNS_DIALOGS_PREFIX ":value-max") ) ); |
| readEvents(); |
| } |
| //__________________________________________________________________________________________________ |
| void ElementDescriptor::readScrollBarModel( StyleBag * all_styles ) |
| SAL_THROW( (Exception) ) |
| { |
| // collect styles |
| Style aStyle( 0x1 | 0x4 ); |
| if (readProp( OUString( RTL_CONSTASCII_USTRINGPARAM("BackgroundColor") ) ) >>= aStyle._backgroundColor) |
| aStyle._set |= 0x1; |
| if (readBorderProps( this, aStyle )) |
| aStyle._set |= 0x4; |
| if (aStyle._set) |
| { |
| addAttribute( OUString( RTL_CONSTASCII_USTRINGPARAM(XMLNS_DIALOGS_PREFIX ":style-id") ), |
| all_styles->getStyleId( aStyle ) ); |
| } |
| |
| // collect elements |
| readDefaults(); |
| readOrientationAttr( OUString( RTL_CONSTASCII_USTRINGPARAM("Orientation") ), |
| OUString( RTL_CONSTASCII_USTRINGPARAM(XMLNS_DIALOGS_PREFIX ":align") ) ); |
| readLongAttr( OUString( RTL_CONSTASCII_USTRINGPARAM("BlockIncrement") ), |
| OUString( RTL_CONSTASCII_USTRINGPARAM(XMLNS_DIALOGS_PREFIX ":pageincrement") ) ); |
| readLongAttr( OUString( RTL_CONSTASCII_USTRINGPARAM("LineIncrement") ), |
| OUString( RTL_CONSTASCII_USTRINGPARAM(XMLNS_DIALOGS_PREFIX ":increment") ) ); |
| readLongAttr( OUString( RTL_CONSTASCII_USTRINGPARAM("ScrollValue") ), |
| OUString( RTL_CONSTASCII_USTRINGPARAM(XMLNS_DIALOGS_PREFIX ":curpos") ) ); |
| readLongAttr( OUString( RTL_CONSTASCII_USTRINGPARAM("ScrollValueMax") ), |
| OUString( RTL_CONSTASCII_USTRINGPARAM(XMLNS_DIALOGS_PREFIX ":maxpos") ) ); |
| readLongAttr( OUSTR("ScrollValueMin"), |
| OUSTR(XMLNS_DIALOGS_PREFIX ":minpos") ); |
| readLongAttr( OUString( RTL_CONSTASCII_USTRINGPARAM("VisibleSize") ), |
| OUString( RTL_CONSTASCII_USTRINGPARAM(XMLNS_DIALOGS_PREFIX ":visible-size") ) ); |
| readLongAttr( OUSTR("RepeatDelay"), OUSTR(XMLNS_DIALOGS_PREFIX ":repeat") ); |
| readBoolAttr( OUString( RTL_CONSTASCII_USTRINGPARAM("Tabstop") ), |
| OUString( RTL_CONSTASCII_USTRINGPARAM(XMLNS_DIALOGS_PREFIX ":tabstop") ) ); |
| readBoolAttr( OUString( RTL_CONSTASCII_USTRINGPARAM("LiveScroll") ), |
| OUString( RTL_CONSTASCII_USTRINGPARAM(XMLNS_DIALOGS_PREFIX ":live-scroll") ) ); |
| readHexLongAttr( OUString( RTL_CONSTASCII_USTRINGPARAM("SymbolColor") ), |
| OUString( RTL_CONSTASCII_USTRINGPARAM(XMLNS_DIALOGS_PREFIX ":symbol-color") ) ); |
| readEvents(); |
| } |
| //__________________________________________________________________________________________________ |
| void ElementDescriptor::readDialogModel( StyleBag * all_styles ) |
| SAL_THROW( (Exception) ) |
| { |
| // collect elements |
| addAttribute( OUString( RTL_CONSTASCII_USTRINGPARAM("xmlns:" XMLNS_DIALOGS_PREFIX) ), |
| OUString( RTL_CONSTASCII_USTRINGPARAM(XMLNS_DIALOGS_URI) ) ); |
| addAttribute( OUString( RTL_CONSTASCII_USTRINGPARAM("xmlns:" XMLNS_SCRIPT_PREFIX) ), |
| OUString( RTL_CONSTASCII_USTRINGPARAM(XMLNS_SCRIPT_URI) ) ); |
| |
| // collect styles |
| Style aStyle( 0x1 | 0x2 | 0x8 | 0x20 ); |
| if (readProp( OUString( RTL_CONSTASCII_USTRINGPARAM("BackgroundColor") ) ) >>= aStyle._backgroundColor) |
| aStyle._set |= 0x1; |
| if (readProp( OUString( RTL_CONSTASCII_USTRINGPARAM("TextColor") ) ) >>= aStyle._textColor) |
| aStyle._set |= 0x2; |
| if (readProp( OUString( RTL_CONSTASCII_USTRINGPARAM("TextLineColor") ) ) >>= aStyle._textLineColor) |
| aStyle._set |= 0x20; |
| if (readFontProps( this, aStyle )) |
| aStyle._set |= 0x8; |
| if (aStyle._set) |
| { |
| addAttribute( OUString( RTL_CONSTASCII_USTRINGPARAM(XMLNS_DIALOGS_PREFIX ":style-id") ), |
| all_styles->getStyleId( aStyle ) ); |
| } |
| |
| // collect elements |
| readDefaults( false, false ); |
| readBoolAttr( |
| OUString( RTL_CONSTASCII_USTRINGPARAM("Closeable") ), |
| OUString( RTL_CONSTASCII_USTRINGPARAM(XMLNS_DIALOGS_PREFIX ":closeable") ) ); |
| readBoolAttr( |
| OUString( RTL_CONSTASCII_USTRINGPARAM("Moveable") ), |
| OUString( RTL_CONSTASCII_USTRINGPARAM(XMLNS_DIALOGS_PREFIX ":moveable") ) ); |
| readBoolAttr( |
| OUString( RTL_CONSTASCII_USTRINGPARAM("Sizeable") ), |
| OUString( RTL_CONSTASCII_USTRINGPARAM(XMLNS_DIALOGS_PREFIX ":resizeable") ) ); |
| readStringAttr( |
| OUString( RTL_CONSTASCII_USTRINGPARAM("Title") ), |
| OUString( RTL_CONSTASCII_USTRINGPARAM(XMLNS_DIALOGS_PREFIX ":title") ) ); |
| |
| Any aDecorationAny( _xProps->getPropertyValue( OUString( RTL_CONSTASCII_USTRINGPARAM("Decoration") ) ) ); |
| bool bDecoration = sal_False; |
| if ( (aDecorationAny >>= bDecoration) && !bDecoration ) |
| addAttribute( OUString( RTL_CONSTASCII_USTRINGPARAM(XMLNS_DIALOGS_PREFIX ":withtitlebar") ), |
| OUString( RTL_CONSTASCII_USTRINGPARAM("false") ) ); |
| |
| readStringAttr( OUString( RTL_CONSTASCII_USTRINGPARAM("ImageURL") ), |
| OUString( RTL_CONSTASCII_USTRINGPARAM(XMLNS_DIALOGS_PREFIX ":image-src") ) ); |
| |
| readEvents(); |
| } |
| |
| } |