Kaydet (Commit) 5431f53b authored tarafından Daniel Boelzle's avatar Daniel Boelzle

#98144# added missing attributes

üst ccb8eb33
<?xml version="1.0" encoding="UTF-8"?>
<!--
$Id: dialog.dtd,v 1.22 2002-03-06 15:23:47 dbo Exp $
$Id: dialog.dtd,v 1.23 2002-03-25 12:03:20 dbo Exp $
The Contents of this file are made available subject to the terms of
either of the following licenses
......@@ -100,17 +100,11 @@
)">
<!ELEMENT dlg:window (dlg:styles*, (%event;)*, dlg:bulletinboard*)>
<!ATTLIST dlg:window dlg:id CDATA #REQUIRED
dlg:left %numeric; #IMPLIED
dlg:top %numeric; #IMPLIED
dlg:width %numeric; #IMPLIED
dlg:height %numeric; #IMPLIED
dlg:style-id CDATA #IMPLIED
<!ATTLIST dlg:window %default-attributes;
dlg:closeable %boolean; #IMPLIED
dlg:moveable %boolean; #IMPLIED
dlg:resizeable %boolean; #IMPLIED
dlg:title CDATA #IMPLIED
dlg:page %numeric; #IMPLIED
dlg:tag CDATA #IMPLIED
dlg:help-text CDATA #IMPLIED
dlg:help-url CDATA #IMPLIED
xmlns:dlg CDATA #FIXED "http://openoffice.org/2000/dialog"
xmlns:script CDATA #FIXED "http://openoffice.org/2000/script"
>
......@@ -121,6 +115,7 @@
<!ATTLIST dlg:style dlg:style-id CDATA #REQUIRED
dlg:background-color %numeric; #IMPLIED
dlg:text-color %numeric; #IMPLIED
dlg:textline-color %numeric; #IMPLIED
dlg:fill-color %numeric; #IMPLIED
dlg:border (none|3d|simple) #IMPLIED
dlg:font-name CDATA #IMPLIED
......@@ -139,6 +134,8 @@
dlg:font-kerning %boolean; #IMPLIED
dlg:font-wordlinemode %boolean; #IMPLIED
dlg:font-type (raster|device|scalable) #IMPLIED
dialog:font-relief (none|embossed|engraved) #IMPLIED
dialog:font-emphasismark (none|dot|circle|disc|accent|above|below) #IMPLIED
>
<!ELEMENT script:event EMPTY>
......@@ -204,6 +201,7 @@
dlg:tabstop %boolean; #IMPLIED
dlg:spin %boolean; #IMPLIED
dlg:multiselection %boolean; #IMPLIED
dlg:readonly %boolean; #IMPLIED
dlg:linecount %numeric; #IMPLIED
>
......@@ -218,7 +216,6 @@
<!ATTLIST dlg:radio %default-attributes;
dlg:value CDATA #IMPLIED
dlg:checked %boolean; #IMPLIED
dlg:tristate %boolean; #IMPLIED
dlg:tabstop %boolean; #IMPLIED
>
......@@ -233,6 +230,7 @@
<!ATTLIST dlg:text %default-attributes;
dlg:align (left|center|right) #IMPLIED
dlg:multiline %boolean; #IMPLIED
dlg:tabstop %boolean; #IMPLIED
dlg:value CDATA #IMPLIED
>
......@@ -284,6 +282,7 @@
dlg:readonly %boolean; #IMPLIED
dlg:strict-format %boolean; #IMPLIED
dlg:date-format (system_short|system_short_YY|system_short_YYYY|system_long|short_DDMMYY|short_MMDDYY|short_YYMMDD|short_DDMMYYYY|short_MMDDYYYY|short_YYYYMMDD|short_YYMMDD_DIN5008|short_YYYYMMDD_DIN5008) #IMPLIED
dlg:show-century %boolean; #IMPLIED
dlg:value CDATA #IMPLIED
dlg:value-min CDATA #IMPLIED
dlg:value-max CDATA #IMPLIED
......@@ -323,6 +322,7 @@
dlg:readonly %boolean; #IMPLIED
dlg:strict-format %boolean; #IMPLIED
dlg:value CDATA #IMPLIED
dlg:maxlength %numeric; #IMPLIED
dlg:edit-mask CDATA #IMPLIED
dlg:literal-mask CDATA #IMPLIED
>
......@@ -334,6 +334,7 @@
dlg:align (left|center|right) #IMPLIED
dlg:format-code CDATA #IMPLIED
dlg:format-locale CDATA #IMPLIED
dlg:treat-as-number %boolean; #IMPLIED
dlg:strict-format %boolean; #IMPLIED
dlg:value-default CDATA #IMPLIED
dlg:value-max %numeric; #IMPLIED
......
......@@ -2,9 +2,9 @@
*
* $RCSfile: exp_share.hxx,v $
*
* $Revision: 1.13 $
* $Revision: 1.14 $
*
* last change: $Author: dbo $ $Date: 2002-03-06 14:01:22 $
* last change: $Author: dbo $ $Date: 2002-03-25 12:03:20 $
*
* The Contents of this file are made available subject to the terms of
* either of the following licenses
......@@ -69,6 +69,8 @@
#include <com/sun/star/beans/XPropertySet.hpp>
#include <com/sun/star/beans/XPropertyState.hpp>
#include <com/sun/star/awt/FontDescriptor.hpp>
#include <com/sun/star/awt/FontEmphasisMark.hpp>
#include <com/sun/star/awt/FontRelief.hpp>
using namespace ::rtl;
......@@ -83,8 +85,11 @@ struct Style
{
sal_uInt32 _backgroundColor;
sal_uInt32 _textColor;
sal_uInt32 _textLineColor;
sal_Int16 _border;
awt::FontDescriptor _descr;
sal_uInt16 _fontRelief;
sal_uInt16 _fontEmphasisMark;
sal_uInt32 _fillColor;
short _all;
......@@ -93,7 +98,9 @@ struct Style
OUString _id;
inline Style( short all_ ) SAL_THROW( () )
: _all( all_ )
: _fontRelief( awt::FontRelief::NONE )
, _fontEmphasisMark( awt::FontEmphasisMark::NONE )
, _all( all_ )
, _set( 0 )
{}
......@@ -136,7 +143,7 @@ public:
//
Any readProp( OUString const & rPropName );
//
void readDefaults();
void readDefaults( bool supportPrintable = true );
//
void readStringAttr( OUString const & rPropName, OUString const & rAttrName );
void readDoubleAttr( OUString const & rPropName, OUString const & rAttrName );
......
......@@ -2,9 +2,9 @@
*
* $RCSfile: imp_share.hxx,v $
*
* $Revision: 1.19 $
* $Revision: 1.20 $
*
* last change: $Author: dbo $ $Date: 2002-03-06 14:01:22 $
* last change: $Author: dbo $ $Date: 2002-03-25 12:03:20 $
*
* The Contents of this file are made available subject to the terms of
* either of the following licenses
......@@ -77,6 +77,8 @@
#include <com/sun/star/awt/XControlModel.hpp>
#include <com/sun/star/awt/FontDescriptor.hpp>
#include <com/sun/star/awt/FontEmphasisMark.hpp>
#include <com/sun/star/awt/FontRelief.hpp>
#include <com/sun/star/xml/sax2/XExtendedAttributes.hpp>
#include <com/sun/star/xml/XImportContext.hpp>
......@@ -279,12 +281,17 @@ class StyleElement
{
sal_Int32 _backgroundColor;
sal_Int32 _textColor;
sal_Int32 _textLineColor;
sal_Int16 _border;
awt::FontDescriptor _descr;
sal_Int16 _fontRelief;
sal_Int16 _fontEmphasisMark;
sal_Int32 _fillColor;
short _inited, _hasValue;
void setFontProperties( Reference< beans::XPropertySet > const & xProps );
public:
virtual Reference< xml::XImportContext > SAL_CALL createChildContext(
sal_Int32 nUid, OUString const & rLocalName,
......@@ -295,6 +302,8 @@ public:
bool importTextColorStyle(
Reference< beans::XPropertySet > const & xProps );
bool importTextLineColorStyle(
Reference< beans::XPropertySet > const & xProps );
bool importFillColorStyle(
Reference< beans::XPropertySet > const & xProps );
bool importBackgroundColorStyle(
......@@ -310,6 +319,8 @@ public:
ElementBase * pParent, DialogImport * pImport )
SAL_THROW( () )
: ElementBase( XMLNS_DIALOGS_UID, rLocalName, xAttributes, pParent, pImport )
, _fontRelief( awt::FontRelief::NONE )
, _fontEmphasisMark( awt::FontEmphasisMark::NONE )
, _inited( 0 )
, _hasValue( 0 )
{}
......@@ -368,17 +379,25 @@ class ImportContext
{
protected:
Reference< beans::XPropertySet > _xControlModel;
OUString _aId;
public:
inline ImportContext( Reference< beans::XPropertySet > const & xControlModel_ )
inline ImportContext(
Reference< beans::XPropertySet > const & xControlModel_, OUString const & id )
: _xControlModel( xControlModel_ )
, _aId( id )
{ OSL_ASSERT( _xControlModel.is() ); }
inline Reference< beans::XPropertySet > getControlModel()
{ return _xControlModel; }
void importDefaults(
sal_Int32 nBaseX, sal_Int32 nBaseY,
Reference< xml::sax2::XExtendedAttributes > const & xAttributes,
bool supportPrintable = true );
void importEvents(
vector< Reference< xml::XImportContext > > const & rEvents );
bool importStringProperty(
OUString const & rPropName, OUString const & rAttrName,
Reference< xml::sax2::XExtendedAttributes > const & xAttributes );
......@@ -421,21 +440,15 @@ public:
class ControlImportContext : public ImportContext
{
DialogImport * _pImport;
OUString _aId;
public:
inline ControlImportContext( DialogImport * pImport,
OUString const & rId, OUString const & rControlName )
inline ControlImportContext(
DialogImport * pImport, OUString const & rId, OUString const & rControlName )
: ImportContext( Reference< beans::XPropertySet >(
pImport->_xDialogModelFactory->createInstance( rControlName ), UNO_QUERY ) )
pImport->_xDialogModelFactory->createInstance( rControlName ), UNO_QUERY ), rId )
, _pImport( pImport )
, _aId( rId )
{}
inline ~ControlImportContext()
{ _pImport->_xDialogModel->insertByName( _aId, makeAny( Reference< awt::XControlModel >::query( _xControlModel ) ) ); }
void importDefaults(
sal_Int32 nBaseX, sal_Int32 nBaseY,
Reference< xml::sax2::XExtendedAttributes > const & xAttributes );
};
//==================================================================================================
......
......@@ -2,9 +2,9 @@
*
* $RCSfile: xmldlg_import.cxx,v $
*
* $Revision: 1.22 $
* $Revision: 1.23 $
*
* last change: $Author: dbo $ $Date: 2002-03-06 14:01:22 $
* last change: $Author: dbo $ $Date: 2002-03-25 12:03:20 $
*
* The Contents of this file are made available subject to the terms of
* either of the following licenses
......@@ -169,6 +169,32 @@ bool StyleElement::importTextColorStyle(
return false;
}
//__________________________________________________________________________________________________
bool StyleElement::importTextLineColorStyle(
Reference< beans::XPropertySet > const & xProps )
{
if ((_inited & 0x20) != 0)
{
if ((_hasValue & 0x20) != 0)
{
xProps->setPropertyValue(
OUString( RTL_CONSTASCII_USTRINGPARAM("TextLineColor") ), makeAny( _textLineColor ) );
return true;
}
return false;
}
_inited |= 0x20;
if (getLongAttr( &_textLineColor,
OUString( RTL_CONSTASCII_USTRINGPARAM("textline-color") ), _xAttributes ))
{
_hasValue |= 0x20;
xProps->setPropertyValue(
OUString( RTL_CONSTASCII_USTRINGPARAM("TextLineColor") ), makeAny( _textLineColor ) );
return true;
}
return false;
}
//__________________________________________________________________________________________________
bool StyleElement::importFillColorStyle(
Reference< beans::XPropertySet > const & xProps )
{
......@@ -265,6 +291,17 @@ bool StyleElement::importBorderStyle(
return false;
}
//__________________________________________________________________________________________________
void StyleElement::setFontProperties(
Reference< beans::XPropertySet > const & xProps )
{
xProps->setPropertyValue(
OUString( RTL_CONSTASCII_USTRINGPARAM("FontDescriptor") ), makeAny( _descr ) );
xProps->setPropertyValue(
OUString( RTL_CONSTASCII_USTRINGPARAM("FontEmphasisMark") ), makeAny( _fontEmphasisMark ) );
xProps->setPropertyValue(
OUString( RTL_CONSTASCII_USTRINGPARAM("FontRelief") ), makeAny( _fontRelief ) );
}
//__________________________________________________________________________________________________
bool StyleElement::importFontStyle(
Reference< beans::XPropertySet > const & xProps )
{
......@@ -272,8 +309,7 @@ bool StyleElement::importFontStyle(
{
if ((_hasValue & 0x8) != 0)
{
xProps->setPropertyValue(
OUString( RTL_CONSTASCII_USTRINGPARAM("FontDescriptor") ), makeAny( _descr ) );
setFontProperties( xProps );
return true;
}
return false;
......@@ -597,11 +633,75 @@ bool StyleElement::importFontStyle(
bFontImport = true;
}
// additional properties which are not part of the FontDescriptor struct
// dialog:font-relief (none|embossed|engraved) #IMPLIED
if (getStringAttr( &aValue, OUString( RTL_CONSTASCII_USTRINGPARAM("font-relief") ), _xAttributes ))
{
if (aValue.equalsAsciiL( RTL_CONSTASCII_STRINGPARAM("none") ))
{
_fontRelief = awt::FontRelief::NONE;
}
else if (aValue.equalsAsciiL( RTL_CONSTASCII_STRINGPARAM("embossed") ))
{
_fontRelief = awt::FontRelief::EMBOSSED;
}
else if (aValue.equalsAsciiL( RTL_CONSTASCII_STRINGPARAM("engraved") ))
{
_fontRelief = awt::FontRelief::ENGRAVED;
}
else
{
throw xml::sax::SAXException(
OUString( RTL_CONSTASCII_USTRINGPARAM("invalid font-relief style!") ),
Reference< XInterface >(), Any() );
}
bFontImport = true;
}
// dialog:font-emphasismark (none|dot|circle|disc|accent|above|below) #IMPLIED
if (getStringAttr( &aValue, OUString( RTL_CONSTASCII_USTRINGPARAM("font-emphasismark") ), _xAttributes ))
{
if (aValue.equalsAsciiL( RTL_CONSTASCII_STRINGPARAM("none") ))
{
_fontEmphasisMark = awt::FontEmphasisMark::NONE;
}
else if (aValue.equalsAsciiL( RTL_CONSTASCII_STRINGPARAM("dot") ))
{
_fontEmphasisMark = awt::FontEmphasisMark::DOT;
}
else if (aValue.equalsAsciiL( RTL_CONSTASCII_STRINGPARAM("circle") ))
{
_fontEmphasisMark = awt::FontEmphasisMark::CIRCLE;
}
else if (aValue.equalsAsciiL( RTL_CONSTASCII_STRINGPARAM("disc") ))
{
_fontEmphasisMark = awt::FontEmphasisMark::DISC;
}
else if (aValue.equalsAsciiL( RTL_CONSTASCII_STRINGPARAM("accent") ))
{
_fontEmphasisMark = awt::FontEmphasisMark::ACCENT;
}
else if (aValue.equalsAsciiL( RTL_CONSTASCII_STRINGPARAM("above") ))
{
_fontEmphasisMark = awt::FontEmphasisMark::ABOVE;
}
else if (aValue.equalsAsciiL( RTL_CONSTASCII_STRINGPARAM("below") ))
{
_fontEmphasisMark = awt::FontEmphasisMark::BELOW;
}
else
{
throw xml::sax::SAXException(
OUString( RTL_CONSTASCII_USTRINGPARAM("invalid font-emphasismark style!") ),
Reference< XInterface >(), Any() );
}
bFontImport = true;
}
// ==================================================
if (bFontImport)
{
_hasValue |= 0x8;
xProps->setPropertyValue(
OUString( RTL_CONSTASCII_USTRINGPARAM("FontDescriptor") ), makeAny( _descr ) );
setFontProperties( xProps );
}
return bFontImport;
......@@ -1134,9 +1234,10 @@ void ImportContext::importEvents(
}
}
//__________________________________________________________________________________________________
void ControlImportContext::importDefaults(
void ImportContext::importDefaults(
sal_Int32 nBaseX, sal_Int32 nBaseY,
Reference< xml::sax2::XExtendedAttributes > const & xAttributes )
Reference< xml::sax2::XExtendedAttributes > const & xAttributes,
bool supportPrintable )
{
_xControlModel->setPropertyValue(
OUString( RTL_CONSTASCII_USTRINGPARAM("Name") ),
......@@ -1174,9 +1275,13 @@ void ControlImportContext::importDefaults(
Reference< XInterface >(), Any() );
}
importBooleanProperty( OUString( RTL_CONSTASCII_USTRINGPARAM("Printable") ),
OUString( RTL_CONSTASCII_USTRINGPARAM("printable") ),
xAttributes );
if (supportPrintable)
{
importBooleanProperty(
OUString( RTL_CONSTASCII_USTRINGPARAM("Printable") ),
OUString( RTL_CONSTASCII_USTRINGPARAM("printable") ),
xAttributes );
}
sal_Int32 nLong;
if (! getLongAttr( &nLong, OUString( RTL_CONSTASCII_USTRINGPARAM("page") ), xAttributes ))
......
......@@ -5,27 +5,29 @@
xmlns:dlg="http://openoffice.org/2000/dialog"
xmlns:script="http://openoffice.org/2000/script"
style-id="dialog"
id="window1" title="Test-Dialog" left="50" top="50" height="690" width="400">
id="window1" title="Test-Dialog" left="50" top="50" height="690" width="400"
closeable="true" moveable="true" resizeable="true" disabled="false"
>
<script:event script:event-name="on-rowchange" script:macro-name="ExecutingMacro" script:location="application" script:language="StarBasic"/>
<dlg:styles xmlns:dlg="http://openoffice.org/2000/dialog">
<dlg:style style-id="bla" background-color="0xffffff" dlg:text-color="255"/>
<dlg:style style-id="bla3" background-color="0" dlg:text-color="0xffffff" font-name="Arial" font-height="24"/>
<dlg:style style-id="bla" background-color="0xffffff" dlg:text-color="255" dlg:textline-color="0xff0000" dlg:font-underline="single"/>
<dlg:style style-id="bla3" background-color="888888" dlg:text-color="0xffffff" font-name="Arial" font-height="24" font-relief="embossed" font-emphasismark="dot"/>
<dlg:style style-id="no_border" border="none" fill-color="0xff"/>
<dlg:style style-id="dialog" border="3d"/>
<dlg:style style-id="dialog" border="3d" dlg:text-color="255" dlg:textline-color="0xff0000"/>
</dlg:styles>
<dlg:bulletinboard xmlns:ns="http://www.fake" xmlns:dlg="http://openoffice.org/2000/dialog">
<button dlg:id="button1" ns:value="hallo" dlg:left="50" ns:top="50" width="50" height="50" style-id="bla3" xmlns:ns="http://openoffice.org/2000/dialog">
<button dlg:id="button1" ns:value="hallo" dlg:left="50" ns:top="50" ns:checked="true" width="50" height="50" style-id="bla3" xmlns:ns="http://openoffice.org/2000/dialog">
<dlg:event listener-type="com.sun.star.awt.XKeyListener" event-method="keyReleased" script-type="StarBasic" script-code="application:ExecutingMacro"/>
<script:event script:event-name="on-rowchange" script:macro-name="ExecutingMacro" script:location="application" script:language="StarBasic"/>
<script:listener-event script:macro-name="ExecutingMacro" script:location="application" script:language="StarBasic" script:listener-type="com.sun.star.awt.XMouseListener" script:listener-method="mouseEntered"/>
<script:listener-event script:macro-name="ExecutingMacro" script:location="application" script:language="StarBasic" script:listener-type="com.sun.star.awt.XMouseListener" script:listener-method="mousePressed" script:listener-param="parameter0, so this will never ever be a script:event, but always a script:listener-event element!"/>
</button>
<button dlg:id="button3" dlg:image-src="../../test/w3c.jpg" dlg:image-align="right" ns:value="help button" dlg:left="250" ns:top="50" width="50" height="50" style-id="bla" button-type="help" xmlns:ns="http://openoffice.org/2000/dialog"/>
<button dlg:id="button3" dlg:image-src="file:///f|src641/xmlscript/test/w3c.jpg" dlg:image-align="right" ns:value="help button" dlg:left="250" ns:top="50" width="50" height="50" style-id="bla" button-type="help" xmlns:ns="http://openoffice.org/2000/dialog"/>
<checkbox id="check1" help-text="helphelphelp!!!" help-url="http://www.xml.org" value="checked" left="50" top="150" width="100" height="20" checked="true"/>
<checkbox id="check2" value="dontknow" left="50" top="170" width="100" height="20" tristate="true"/>
......@@ -80,21 +82,21 @@
</text>
<textfield id="field1" left="250" top="520" width="50" height="40" value="edit no text here..." readonly="true" vscroll="true" multiline="true" align="right" style-id="no_border"/>
<textfield id="field2" left="320" top="520" width="50" height="40" value="hidden text" hscroll="true" echochar="*" align="left"/>
<img id="image1" scale-image="true" left="50" top="585" width="80" height="20" src="../../test/w3c.jpg">
<img id="image1" scale-image="true" left="50" top="585" width="80" height="20" src="file:///f|src641/xmlscript/test/w3c.jpg">
<script:listener-event script:macro-name="ExecutingMacro" script:location="application" script:language="StarBasic" script:listener-type="com.sun.star.awt.XMouseListener" script:listener-method="mouseEntered"/>
</img>
<filecontrol id="file1" left="150" top="585" width="100" height="20" value="../../test/w3c.jpg"/>
<datefield id="datefield1" left="20" top="610" width="100" height="20" date-format="short_DDMMYY" spin="true" value="20010301"/>
<datefield id="datefield1" left="20" top="610" width="100" height="20" show-century="false" date-format="short_DDMMYY" spin="true" value="20010301"/>
<timefield id="time1" left="20" top="635" width="100" height="20" time-format="24h_long" value-min="0" value-max="24000000" strict-format="true" value="12000000" spin="true"/>
<patternfield id="pattern1" left="20" top="0" width="100" height="20" value="pattern" strict-format="true" readonly="true"/>
<patternfield id="pattern1" maxlength="4" left="20" top="0" width="100" height="20" value="pattern" strict-format="true" readonly="true"/>
<currencyfield id="currency1" left="200" top="610" width="100" height="20" value="5.6075" value-min="0.5" value-max="10.0" value-step="0.1" spin="true" thousands-separator="true" currency-symbol="$" prepend-symbol="true"/>
<numericfield id="numeric1" left="200" top="635" width="100" height="20" value="5.6075" value-min="0.5" value-max="10.0" value-step="0.1" thousands-separator="true"/>
<fixedline style-id="bla3" id="fixedline1" left="20" top="660" width="150" height="20" value="FixedLineLabel" align="horizontal"/>
<progressmeter style-id="no_border" id="progress1" left="200" top="660" width="80" height="20" align="horizontal" value="50" value-min="0" value-max="80"/>
<scrollbar style-id="dialog" id="scrollbar1" left="300" top="660" width="80" height="20" align="horizontal" curpos="50" maxpos="200" increment="1" pageincrement="10"/>
<formattedfield style-id="dialog" id="ffield0" left="20" top="110" width="80" height="20" align="center" text="first ffield"
<formattedfield style-id="dialog" treat-as-number="true" id="ffield0" left="20" top="110" width="80" height="20" align="center" text="first ffield"
dlg:value-max="750" dlg:value-min="0" dlg:value="2" spin="true"/>
<formattedfield style-id="dialog" id="ffield1" left="250" top="110" width="80" height="20" align="center" text="second ffield"
dlg:format-code="[$$-409]#.##0,00;[ROT]-[$$-409]#.##0,00" dlg:format-locale="de;DE;WIN" dlg:value-max="750" dlg:value-min="0" dlg:value="4" spin="true"/>
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment