20 #include <com/sun/star/form/FormSubmitEncoding.hpp>
21 #include <com/sun/star/form/FormSubmitMethod.hpp>
22 #include <com/sun/star/form/FormButtonType.hpp>
23 #include <com/sun/star/frame/XModel.hpp>
24 #include <com/sun/star/script/XEventAttacherManager.hpp>
25 #include <com/sun/star/drawing/XDrawPageSupplier.hpp>
26 #include <com/sun/star/form/XFormsSupplier.hpp>
27 #include <com/sun/star/form/XForm.hpp>
28 #include <com/sun/star/form/FormComponentType.hpp>
29 #include <com/sun/star/awt/XTextLayoutConstrains.hpp>
30 #include <com/sun/star/beans/XPropertySet.hpp>
33 #include <rtl/math.hxx>
49 #include <osl/diagnose.h>
81 const uno::Reference< form::XFormComponent >& rFormComp,
84 uno::Reference< uno::XInterface > xParentIfc = rFormComp->getParent();
85 OSL_ENSURE( xParentIfc.is(),
"lcl_html_outEvents: no parent interface" );
86 if( !xParentIfc.is() )
88 uno::Reference< container::XIndexAccess > xIndexAcc( xParentIfc, uno::UNO_QUERY );
89 uno::Reference< script::XEventAttacherManager > xEventManager( xParentIfc,
91 if( !xIndexAcc.is() || !xEventManager.is() )
95 sal_Int32
nCount = xIndexAcc->getCount(),
nPos;
99 if(
auto x1 =
o3tl::tryAccess<uno::Reference<form::XFormComponent>>(aTmp) )
102 if( rFormComp == *x1 )
105 else if(
auto x2 =
o3tl::tryAccess<uno::Reference<form::XForm>>(aTmp) )
107 if( rFormComp == *x2 )
112 OSL_ENSURE(
false,
"lcl_html_outEvents: wrong reflection" );
119 const uno::Sequence< script::ScriptEventDescriptor > aDescs =
120 xEventManager->getScriptEvents(
nPos );
121 if( !aDescs.hasElements() )
124 for(
const script::ScriptEventDescriptor& rDesc : aDescs )
128 if( aScriptType.equalsIgnoreAsciiCase(SVX_MACRO_LANGUAGE_JAVASCRIPT) )
130 else if( aScriptType.equalsIgnoreAsciiCase(SVX_MACRO_LANGUAGE_STARBASIC ) )
132 if(
JAVASCRIPT != eScriptType && !bCfgStarBasic )
135 OUString sListener( rDesc.ListenerType );
136 if (!sListener.isEmpty())
138 const sal_Int32 nIdx { sListener.lastIndexOf(
'.')+1 };
141 if (nIdx<sListener.getLength())
143 sListener = sListener.copy(nIdx);
151 OUString sMethod( rDesc.EventMethod );
153 const char *pOpt =
nullptr;
167 rDesc.AddListenerParam.isEmpty()) )
180 !rDesc.AddListenerParam.isEmpty() )
198 case form::FormComponentType::TEXTFIELD:
199 case form::FormComponentType::COMMANDBUTTON:
200 case form::FormComponentType::RADIOBUTTON:
201 case form::FormComponentType::CHECKBOX:
202 case form::FormComponentType::LISTBOX:
203 case form::FormComponentType::IMAGEBUTTON:
204 case form::FormComponentType::FILECONTROL:
241 uno::Reference< container::XIndexContainer > xNewFormComps;
264 uno::Reference< container::XIndexContainer > xCurrentFormComps;
266 sal_Int32 nCurrentCtrls = 0;
274 if( xCurrentFormComps.is() )
280 if( pCurrentStNd!=pCntrlStNd )
284 xNewFormComps = xCurrentFormComps;
294 pCurrentStNd = pCntrlStNd;
303 pCurrentStNd = pCntrlStNd;
307 if( !xNewFormComps.is() && xCurrentFormComps.is() &&
308 nCurrentCtrls != xCurrentFormComps->getCount() )
312 xNewFormComps = xCurrentFormComps;
316 if( !(xNewFormComps.is() &&
333 uno::Reference< beans::XPropertySet > xTmp;
348 uno::Reference< drawing::XDrawPageSupplier > xDPSupp( pDocSh->
GetBaseModel(),
350 OSL_ENSURE( xDPSupp.is(),
"XTextDocument not received from XModel" );
351 uno::Reference< drawing::XDrawPage > xDrawPage = xDPSupp->getDrawPage();
353 OSL_ENSURE( xDrawPage.is(),
"XDrawPage not received" );
354 if( !xDrawPage.is() )
357 uno::Reference< form::XFormsSupplier > xFormsSupplier( xDrawPage, uno::UNO_QUERY );
358 OSL_ENSURE( xFormsSupplier.is(),
359 "XFormsSupplier not received from XDrawPage" );
361 uno::Reference< container::XNameContainer > xTmp = xFormsSupplier->getForms();
362 OSL_ENSURE( xTmp.is(),
"XForms not received" );
363 uno::Reference< container::XIndexContainer > xForms( xTmp, uno::UNO_QUERY );
364 OSL_ENSURE( xForms.is(),
"XForms without container::XIndexContainer?" );
366 sal_Int32
nCount = xForms->getCount();
367 for( sal_Int32
i=0;
i<nCount;
i++)
374 OSL_ENSURE(
false,
"OutHiddenForms: wrong reflection" );
381 uno::Reference< container::XIndexContainer > xFormComps( rForm, uno::UNO_QUERY );
382 if( !xFormComps.is() )
385 sal_Int32
nCount = xFormComps->getCount();
386 bool bHiddenOnly = nCount > 0, bHidden =
false;
387 for( sal_Int32
i=0;
i<nCount;
i++ )
389 uno::Any aTmp = xFormComps->getByIndex(
i );
390 auto xFormComp = o3tl::tryAccess<uno::Reference<form::XFormComponent>>(
392 OSL_ENSURE( xFormComp,
"OutHiddenForm: wrong reflection" );
396 uno::Reference< form::XForm > xForm( *xFormComp, uno::UNO_QUERY );
402 uno::Reference< beans::XPropertySet > xPropSet( *xFormComp, uno::UNO_QUERY );
403 OUString sPropName(
"ClassId");
404 if( xPropSet->getPropertySetInfo()->hasPropertyByName( sPropName ) )
406 uno::Any aAny2 = xPropSet->getPropertyValue( sPropName );
409 if( form::FormComponentType::HIDDENCONTROL == *
n )
418 if( bHidden && bHiddenOnly )
421 uno::Reference< beans::XPropertySet > xTmp;
428 const uno::Reference< container::XIndexContainer > & rFormComps )
448 uno::Reference< beans::XPropertySet > xFormPropSet( rFormComps, uno::UNO_QUERY );
450 uno::Any aTmp = xFormPropSet->getPropertyValue(
"Name" );
451 if(
auto s = o3tl::tryAccess<OUString>(aTmp) )
462 aTmp = xFormPropSet->getPropertyValue(
"TargetURL" );
463 if(
auto s = o3tl::tryAccess<OUString>(aTmp) )
476 aTmp = xFormPropSet->getPropertyValue(
"SubmitMethod" );
477 if(
auto eMethod = o3tl::tryAccess<form::FormSubmitMethod>(aTmp) )
479 if( form::FormSubmitMethod_POST==*eMethod )
485 aTmp = xFormPropSet->getPropertyValue(
"SubmitEncoding" );
486 if(
auto eEncType = o3tl::tryAccess<form::FormSubmitEncoding>(aTmp) )
488 const char *pStr =
nullptr;
491 case form::FormSubmitEncoding_MULTIPART:
494 case form::FormSubmitEncoding_TEXT:
503 sOut += OString::Concat(
" " OOO_STRING_SVTOOLS_HTML_O_enctype
"=\"") +
508 aTmp = xFormPropSet->getPropertyValue(
"TargetFrame" );
509 if(
auto s = o3tl::tryAccess<OUString>(aTmp) )
521 uno::Reference< form::XFormComponent > xFormComp( rFormComps, uno::UNO_QUERY );
530 const uno::Reference< container::XIndexContainer > & rFormComps,
531 const uno::Reference< beans::XPropertySet > & rPropSet )
533 sal_Int32
nCount = rFormComps->getCount();
539 uno::Reference< form::XFormComponent > xFC( rPropSet, uno::UNO_QUERY );
540 for( nPos=0; !bDone && nPos < nCount; nPos++ )
542 uno::Any aTmp = rFormComps->getByIndex( nPos );
543 auto x = o3tl::tryAccess<uno::Reference<form::XFormComponent>>(aTmp);
545 "OutHiddenControls: wrong reflection" );
546 bDone =
x && *
x == xFC;
550 for( ; nPos < nCount; nPos++ )
552 uno::Any aTmp = rFormComps->getByIndex( nPos );
553 auto xFC = o3tl::tryAccess<uno::Reference<form::XFormComponent>>(aTmp);
555 "OutHiddenControls: wrong reflection" );
558 uno::Reference< beans::XPropertySet > xPropSet( *xFC, uno::UNO_QUERY );
560 OUString sPropName =
"ClassId";
561 if( !xPropSet->getPropertySetInfo()->hasPropertyByName( sPropName ) )
564 aTmp = xPropSet->getPropertyValue( sPropName );
569 if( form::FormComponentType::HIDDENCONTROL == *
n )
577 aTmp = xPropSet->getPropertyValue(
"Name" );
578 if(
auto s = o3tl::tryAccess<OUString>(aTmp) )
588 aTmp = xPropSet->getPropertyValue(
"HiddenValue" );
589 if(
auto s = o3tl::tryAccess<OUString>(aTmp) )
617 "GetHTMLControl only allow for Draw-Formats" );
621 if( !pObj || SdrInventor::FmForm != pObj->GetObjInventor() )
625 const uno::Reference< awt::XControlModel >& xControlModel =
628 OSL_ENSURE( xControlModel.is(),
"UNO-Control without model" );
629 if( !xControlModel.is() )
632 uno::Reference< beans::XPropertySet > xPropSet( xControlModel, uno::UNO_QUERY );
634 OUString sPropName(
"ClassId");
635 if( !xPropSet->getPropertySetInfo()->hasPropertyByName( sPropName ) )
638 uno::Any aTmp = xPropSet->getPropertyValue( sPropName );
656 uno::Reference< awt::XControl > xControl;
658 OSL_ENSURE( pDrawView && pVSh->
GetWin(),
"no DrawView or window!" );
659 if ( pDrawView && pVSh->
GetWin() )
661 uno::Reference< awt::XTextLayoutConstrains > xLC( xControl, uno::UNO_QUERY );
662 OSL_ENSURE( xLC.is(),
"no XTextLayoutConstrains" );
666 sal_Int16 nCols=0, nLines=0;
667 xLC->getColumnsAndLines( nCols, nLines );
677 const uno::Reference< awt::XControlModel >& xControlModel =
680 OSL_ENSURE( xControlModel.is(),
"UNO-Control without model" );
681 if( !xControlModel.is() )
684 uno::Reference< beans::XPropertySet > xPropSet( xControlModel, uno::UNO_QUERY );
685 uno::Reference< beans::XPropertySetInfo > xPropSetInfo =
686 xPropSet->getPropertySetInfo();
691 enum Tag { TAG_INPUT, TAG_SELECT, TAG_TEXTAREA, TAG_NONE };
692 static char const *
const TagNames[] = {
695 Tag eTag = TAG_INPUT;
699 static char const *
const TypeNames[] = {
708 bool bEmptyValue =
false;
709 uno::Any aTmp = xPropSet->getPropertyValue(
"ClassId" );
710 sal_Int16 nClassId = *o3tl::doAccess<sal_Int16>(aTmp);
714 case form::FormComponentType::CHECKBOX:
715 case form::FormComponentType::RADIOBUTTON:
716 eType = (form::FormComponentType::CHECKBOX == nClassId
718 aTmp = xPropSet->getPropertyValue(
"DefaultState" );
729 aTmp = xPropSet->getPropertyValue(
"RefValue" );
730 if(
auto rVal = o3tl::tryAccess<OUString>(aTmp) )
733 if( rVal->isEmpty() )
740 case form::FormComponentType::COMMANDBUTTON:
742 form::FormButtonType eButtonType = form::FormButtonType_PUSH;
743 aTmp = xPropSet->getPropertyValue(
"ButtonType" );
744 if(
auto t = o3tl::tryAccess<form::FormButtonType>(aTmp) )
747 switch( eButtonType )
749 case form::FormButtonType_RESET:
752 case form::FormButtonType_SUBMIT:
755 case form::FormButtonType_PUSH:
760 aTmp = xPropSet->getPropertyValue(
"Label" );
761 if(
auto s = o3tl::tryAccess<OUString>(aTmp) )
771 case form::FormComponentType::LISTBOX:
775 aTmp = xPropSet->getPropertyValue(
"Dropdown" );
787 OString::number(static_cast<sal_Int32>(aSz.
Height())) +
"\"";
790 auto aTmp2 = xPropSet->getPropertyValue(
"MultiSelection" );
802 case form::FormComponentType::TEXTFIELD:
807 bool bMultiLine =
false;
808 OUString sMultiLine(
"MultiLine");
809 if( xPropSetInfo->hasPropertyByName( sMultiLine ) )
811 aTmp = xPropSet->getPropertyValue( sMultiLine );
813 bMultiLine = b && *b;
825 OString::number(static_cast<sal_Int32>(aSz.
Height())) +
"\"";
830 OString::number(static_cast<sal_Int32>(aSz.
Width())) +
"\"";
833 aTmp = xPropSet->getPropertyValue(
"HScroll" );
836 !*o3tl::forceAccess<bool>(aTmp)) )
838 const char *pWrapStr =
nullptr;
839 auto aTmp2 = xPropSet->getPropertyValue(
"HardLineBreaks" );
850 OUString sEchoChar(
"EchoChar");
851 if( xPropSetInfo->hasPropertyByName( sEchoChar ) )
853 aTmp = xPropSet->getPropertyValue( sEchoChar );
857 eType = TYPE_PASSWORD;
864 OString::number(static_cast<sal_Int32>(aSz.
Width())) +
"\"";
867 aTmp = xPropSet->getPropertyValue(
"MaxTextLen" );
873 OString::number(static_cast<sal_Int32>(*
n)) +
"\"";
877 if( xPropSetInfo->hasPropertyByName(
"DefaultText" ) )
879 aTmp = xPropSet->getPropertyValue(
"DefaultText" );
880 if(
auto s = o3tl::tryAccess<OUString>(aTmp) )
892 case form::FormComponentType::FILECONTROL:
901 OString::number(static_cast<sal_Int32>(aSz.
Width())) +
"\"";
908 case form::FormComponentType::IMAGEBUTTON:
918 if( eTag == TAG_NONE )
921 OString sOut = OString::Concat(
"<") + TagNames[eTag];
925 TypeNames[eType] +
"\"";
928 aTmp = xPropSet->getPropertyValue(
"Name");
929 if(
auto s = o3tl::tryAccess<OUString>(aTmp) )
940 aTmp = xPropSet->getPropertyValue(
"Enabled");
949 if( !sValue.isEmpty() || bEmptyValue )
957 sOut +=
" " + sOptions;
961 aTmp = xPropSet->getPropertyValue(
"ImageURL" );
962 if(
auto s = o3tl::tryAccess<OUString>(aTmp) )
976 Size aPixelSz( 0, 0 );
977 if( (aTwipSz.Width() || aTwipSz.Height()) &&
983 if( !aPixelSz.Width() && aTwipSz.Width() )
984 aPixelSz.setWidth( 1 );
985 if( !aPixelSz.Height() && aTwipSz.Height() )
986 aPixelSz.setHeight( 1 );
989 if( aPixelSz.Width() )
992 OString::number(static_cast<sal_Int32>(aPixelSz.Width())) +
"\"";
995 if( aPixelSz.Height() )
998 OString::number(static_cast<sal_Int32>(aPixelSz.Height())) +
"\"";
1002 aTmp = xPropSet->getPropertyValue(
"TabIndex" );
1005 sal_Int16 nTabIndex = *
n;
1008 if( nTabIndex >= 32767 )
1012 OString::number(static_cast<sal_Int32>(nTabIndex)) +
"\"";
1016 if( !sOut.isEmpty() )
1019 OSL_ENSURE( !bInCntnr,
"Container is not supported for Controls" );
1034 bool bEdit = TAG_TEXTAREA == eTag || TYPE_FILE == eType ||
1038 if( xPropSetInfo->hasPropertyByName(
"BackgroundColor" ) )
1040 aTmp = xPropSet->getPropertyValue(
"BackgroundColor" );
1047 if( xPropSetInfo->hasPropertyByName(
"TextColor" ) )
1049 aTmp = xPropSet->getPropertyValue(
"TextColor" );
1056 if( xPropSetInfo->hasPropertyByName(
"FontHeight" ) )
1058 aTmp = xPropSet->getPropertyValue(
"FontHeight" );
1062 if( *nHeight > 0 && (!bEdit || !rtl::math::approxEqual(*nHeight, 10.0)) )
1066 if( xPropSetInfo->hasPropertyByName(
"FontName" ) )
1068 aTmp = xPropSet->getPropertyValue(
"FontName" );
1069 if(
auto aFName = o3tl::tryAccess<OUString>(aTmp) )
1071 if( !aFName->isEmpty() )
1075 GetDefaultFontFlags::OnlyOne ) );
1079 if( xPropSetInfo->hasPropertyByName(
"FontFamily" ) )
1081 auto aTmp2 = xPropSet->getPropertyValue(
"FontFamily" );
1086 aItemSet.Put( aItem );
1091 if( xPropSetInfo->hasPropertyByName(
"FontWeight" ) )
1093 aTmp = xPropSet->getPropertyValue(
"FontWeight" );
1102 if( xPropSetInfo->hasPropertyByName(
"FontSlant" ) )
1104 aTmp = xPropSet->getPropertyValue(
"FontSlant" );
1112 if( xPropSetInfo->hasPropertyByName(
"FontLineStyle" ) )
1114 aTmp = xPropSet->getPropertyValue(
"FontLineStyle" );
1123 if( xPropSetInfo->hasPropertyByName(
"FontStrikeout" ) )
1125 aTmp = xPropSet->getPropertyValue(
"FontStrikeout" );
1139 uno::Reference< form::XFormComponent > xFormComp( xControlModel, uno::UNO_QUERY );
1144 if( TAG_SELECT == eTag )
1146 aTmp = xPropSet->getPropertyValue(
"StringItemList" );
1150 sal_Int32 nCnt = aList->getLength();
1151 const OUString *pStrings = aList->getConstArray();
1153 const OUString *
pValues =
nullptr;
1154 sal_Int32 nValCnt = 0;
1155 auto aTmp2 = xPropSet->getPropertyValue(
"ListSource" );
1156 uno::Sequence<OUString> aValList;
1160 nValCnt = aValList.getLength();
1161 pValues = aValList.getConstArray();
1164 uno::Any aSelTmp = xPropSet->getPropertyValue(
"DefaultSelection" );
1165 const sal_Int16 *pSels =
nullptr;
1167 sal_Int32 nSelCnt = 0;
1168 uno::Sequence<sal_Int16> aSelList;
1172 nSelCnt = aSelList.getLength();
1173 pSels = aSelList.getConstArray();
1176 for( sal_Int32
i = 0;
i < nCnt;
i++ )
1179 bool bSelected =
false, bEmptyVal =
false;
1182 const OUString& rVal = pValues[
i];
1183 if( rVal ==
"$$$empty$$$" )
1189 bSelected = (nSel < nSelCnt) && pSels[nSel] ==
i;
1195 if( !sVal.isEmpty() || bEmptyVal )
1217 else if( TAG_TEXTAREA == eTag )
1221 aTmp = xPropSet->getPropertyValue(
"DefaultText" );
1222 if(
auto s = o3tl::tryAccess<OUString>(aTmp) )
1229 if( !sVal.isEmpty() )
1233 while ( nPos != -1 )
1237 OUString aLine = sVal.getToken( 0, 0x0A, nPos );
1245 aTmp = xPropSet->getPropertyValue(
"Label");
1246 if(
auto s = o3tl::tryAccess<OUString>(aTmp) )
1255 if( !aEndTags.isEmpty() )
1273 const uno::Reference< awt::XControlModel >& xControlModel =
1275 if( !xControlModel.is() )
1278 uno::Reference< form::XFormComponent > xFormComp( xControlModel, uno::UNO_QUERY );
1279 uno::Reference< uno::XInterface > xIfc = xFormComp->getParent();
1280 uno::Reference< form::XForm > xForm(xIfc, uno::UNO_QUERY);
1282 OSL_ENSURE( xForm.is(),
"Where is the form?" );
1285 uno::Reference< container::XIndexContainer > xFormComps( xForm, uno::UNO_QUERY );
1286 std::unique_ptr<HTMLControl> pHCntrl(
new HTMLControl( xFormComps, nNodeIdx ));
1287 auto itPair = rControls.
insert( std::move(pHCntrl) );
1288 if (!itPair.second )
1290 if( (*itPair.first)->xFormComps==xFormComps )
1291 (*itPair.first)->
nCount++;
1314 OSL_ENSURE( pSdrObj,
"Where is the SdrObject?" );
1325 for(
size_t i=0;
i<pSpzFrameFormats->
size();
i++ )
1333 if ((RndStdIds::FLY_AS_CHAR != rAnchor.
GetAnchorId()) || !pPos)
1346 const uno::Reference< container::XIndexContainer > & rFormComps,
1348 xFormComps( rFormComps ), nNdIdx( nIdx ),
nCount( 1 )
#define OOO_STRING_SVTOOLS_HTML_O_src
static void lcl_html_outEvents(SvStream &rStrm, const uno::Reference< form::XFormComponent > &rFormComp, bool bCfgStarBasic)
Starts a section of nodes in the document model.
std::unique_ptr< SwHTMLPosFlyFrames > m_pHTMLPosFlyFrames
constexpr TypedWhichId< SvxCrossedOutItem > RES_CHRATR_CROSSEDOUT(5)
const HtmlFrmOpts HTML_FRMOPTS_CONTROL
static vcl::Font GetDefaultFont(DefaultFontType nType, LanguageType eLang, GetDefaultFontFlags nFlags, const OutputDevice *pOutDev=nullptr)
const OUString & GetBaseURL() const
SwNodeOffset EndOfSectionIndex() const
static void AddControl(HTMLControls &rControls, const SdrUnoObj &rFormObj, SwNodeOffset nNodeIdx)
Find out if a format belongs to a control and if yes return its form.
TOOLS_DLLPUBLIC OString convertLineEnd(const OString &rIn, LineEnd eLineEnd)
Marks a position in the document model.
HTMLControls m_aHTMLControls
const OUString & GetFamilyName() const
#define OOO_STRING_SVTOOLS_HTML_IT_image
#define OOO_STRING_SVTOOLS_HTML_IT_text
void setWidth(tools::Long nWidth)
#define LANGUAGE_ENGLISH_US
#define OOO_STRING_SVTOOLS_HTML_O_disabled
#define OOO_STRING_SVTOOLS_HTML_IT_checkbox
SwDocShell * GetDocShell()
#define OOO_STRING_SVTOOLS_HTML_O_sdaddparam
static const SdrObject * GetHTMLControl(const SwDrawFrameFormat &rFormat)
#define OOO_STRING_SVTOOLS_HTML_IT_button
#define OOO_STRING_SVTOOLS_HTML_textarea
#define OOO_STRING_SVTOOLS_HTML_O_multiple
detail::Optional< sal_Int32 >::type tryAccess< sal_Int32 >(css::uno::Any const &any)
constexpr TypedWhichId< SvxFontHeightItem > RES_CHRATR_FONTSIZE(8)
#define OOO_STRING_SVTOOLS_HTML_IT_file
detail::Optional< float >::type tryAccess< float >(css::uno::Any const &any)
constexpr TypedWhichId< SvxUnderlineItem > RES_CHRATR_UNDERLINE(14)
void OutHiddenControls(const css::uno::Reference< css::container::XIndexContainer > &rFormComps, const css::uno::Reference< css::beans::XPropertySet > &rPropSet)
const sal_uInt16 TYPE_TEXT
#define OOO_STRING_SVTOOLS_HTML_form
static SVT_DLLPUBLIC SvStream & Out_AsciiTag(SvStream &, std::string_view rStr, bool bOn=true)
#define OOO_STRING_SVTOOLS_HTML_IT_hidden
SVL_DLLPUBLIC OUString simpleNormalizedMakeRelative(OUString const &baseUriReference, OUString const &uriReference)
SvStream & WriteCharPtr(const char *pBuf)
constexpr TypedWhichId< SvxFontItem > RES_CHRATR_FONT(7)
const SwNodeIndex & GetNdIndex() const
const SwFrameFormats * GetSpzFrameFormats() const
const HtmlFrmOpts HTML_FRMOPTS_IMG_CONTROL_CSS1
IDocumentDrawModelAccess const & getIDocumentDrawModelAccess() const
static OutputDevice * GetDefaultDevice()
constexpr tools::Long Width() const
void OutNewLine(bool bCheck=false)
#define OOO_STRING_SVTOOLS_HTML_O_size
#define OOO_STRING_SVTOOLS_HTML_O_height
constexpr TypedWhichId< SwDrawFrameFormat > RES_DRAWFRMFMT(159)
#define OOO_STRING_SVTOOLS_HTML_IT_reset
static bool lcl_html_isHTMLControl(sal_Int16 nClassId)
std::enable_if< !(detail::IsDerivedReference< T >::value||detail::IsUnoSequenceType< T >::value||std::is_base_of< css::uno::XInterface, T >::value), typename detail::Optional< T >::type >::type tryAccess(css::uno::Any const &any)
#define OOO_STRING_SVTOOLS_HTML_METHOD_post
#define OOO_STRING_SVTOOLS_HTML_IT_radio
SwNodeOffset GetIndex() const
OString OUStringToOString(std::u16string_view str, ConnectionSettings const *settings)
#define OOO_STRING_SVTOOLS_HTML_O_sdevent
#define OOO_STRING_SVTOOLS_HTML_O_maxlength
sal_uInt16 m_nFormCntrlCnt
#define OOO_STRING_SVTOOLS_HTML_WW_soft
bool IsHTMLMode(sal_uInt32 nMode) const
constexpr TypedWhichId< SvxWeightItem > RES_CHRATR_WEIGHT(15)
static void GetControlSize(const SdrUnoObj &rFormObj, Size &rSz, SwDoc *pDoc)
#define OOO_STRING_SVTOOLS_HTML_O_tabindex
css::uno::Reference< css::container::XIndexContainer > mxFormComps
#define OOO_STRING_SVTOOLS_HTML_O_rows
SwNodeOffset GetIndex() const
virtual const SwDrawModel * GetDrawModel() const =0
Draw Model and id accessors.
#define OOO_STRING_SVTOOLS_HTML_O_selected
#define OOO_STRING_SVTOOLS_HTML_O_method
#define OOO_STRING_SVTOOLS_HTML_O_name
css::uno::Reference< css::frame::XModel3 > GetBaseModel() const
css::uno::Type const & get()
#define OOO_STRING_SVTOOLS_HTML_option
HTMLControl(const css::uno::Reference< css::container::XIndexContainer > &rForm, SwNodeOffset nIdx)
#define OOO_STRING_SVTOOLS_HTML_IT_password
IDocumentLayoutAccess const & getIDocumentLayoutAccess() const
#define OOO_STRING_SVTOOLS_HTML_ET_multipart
const HtmlFrmOpts HTML_FRMOPTS_CONTROL_CSS1
SAL_WARN_UNUSED_RESULT Point LogicToPixel(const Point &rLogicPt) const
constexpr TypedWhichId< SvxColorItem > RES_CHRATR_COLOR(3)
const PropertyValue * pValues
constexpr TypedWhichId< SvxBrushItem > RES_CHRATR_BACKGROUND(21)
OUString const aScriptType
Writer & OutHTML_DrawFrameFormatAsControl(Writer &rWrt, const SwDrawFrameFormat &rFormat, const SdrUnoObj &rFormObj, bool bInCntnr)
static SVT_DLLPUBLIC SvStream & Out_String(SvStream &, const OUString &, OUString *pNonConvertableChars=nullptr)
detail::Optional< sal_Int16 >::type tryAccess< sal_Int16 >(css::uno::Any const &any)
#define OOO_STRING_SVTOOLS_HTML_select
SvStream & WriteOString(std::string_view rStr)
constexpr tools::Long Height() const
virtual const SwViewShell * GetCurrentViewShell() const =0
Returns the layout set at the document.
vcl::Window * GetWin() const
const sal_uInt16 TYPE_IMAGE
void OutForm(bool bTagOn=true, const SwStartNode *pStNd=nullptr)
const SdrObject * GetSdrObject() const
#define OOO_STRING_SVTOOLS_HTML_O_cols
#define OOO_STRING_SVTOOLS_HTML_O_target
VCL_DLLPUBLIC float ConvertFontWeight(FontWeight eWeight)
#define OOO_STRING_SVTOOLS_HTML_WW_hard
::OutputDevice const * GetOutDev() const
#define OOO_STRING_SVTOOLS_HTML_O_wrap
OString GetNamespace() const
Determines the prefix string needed to respect the requested namespace alias.
SvStream & WriteChar(char nChar)
css::uno::Reference< css::awt::XControl > GetUnoControl(const SdrView &_rView, const OutputDevice &_rOut) const
#define OOO_STRING_SVTOOLS_HTML_ET_text
#define OOO_STRING_SVTOOLS_HTML_IT_submit
std::shared_ptr< SwUnoCursor > m_pCurrentPam
#define OOO_STRING_SVTOOLS_HTML_O_value
#define OOO_STRING_SVTOOLS_HTML_input
const css::uno::Reference< css::awt::XControlModel > & GetUnoControlModel() const
void OutHiddenForm(const css::uno::Reference< css::form::XForm > &rForm)
void setHeight(tools::Long nHeight)
#define OOO_STRING_SVTOOLS_HTML_O_type
#define OOO_STRING_SVTOOLS_HTML_O_checked
detail::Optional< bool >::type tryAccess< bool >(css::uno::Any const &any)
std::pair< const_iterator, bool > insert(Value &&x)
#define OOO_STRING_SVTOOLS_HTML_on
const HtmlFrmOpts HTML_FRMOPTS_IMG_CONTROL
#define OOO_STRING_SVTOOLS_HTML_O_action
#define HTMLMODE_ABS_POS_DRAW
constexpr TypedWhichId< SvxPostureItem > RES_CHRATR_POSTURE(11)
#define OOO_STRING_SVTOOLS_HTML_O_width
#define SAL_NEWLINE_STRING
OString OutFrameFormatOptions(const SwFrameFormat &rFrameFormat, const OUString &rAltText, HtmlFrmOpts nFrameOpts)
const SwAttrPool & GetAttrPool() const
virtual const tools::Rectangle & GetLogicRect() const override
void OutCSS1_FrameFormatOptions(const SwFrameFormat &rFrameFormat, HtmlFrmOpts nFrameOpts, const SdrObject *pSdrObj=nullptr, const SfxItemSet *pItemSet=nullptr)