LibreOffice Module sw (master) 1
swhtml.hxx
Go to the documentation of this file.
1/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
2/*
3 * This file is part of the LibreOffice project.
4 *
5 * This Source Code Form is subject to the terms of the Mozilla Public
6 * License, v. 2.0. If a copy of the MPL was not distributed with this
7 * file, You can obtain one at http://mozilla.org/MPL/2.0/.
8 *
9 * This file incorporates work covered by the following license notice:
10 *
11 * Licensed to the Apache Software Foundation (ASF) under one or more
12 * contributor license agreements. See the NOTICE file distributed
13 * with this work for additional information regarding copyright
14 * ownership. The ASF licenses this file to you under the Apache
15 * License, Version 2.0 (the "License"); you may not use this file
16 * except in compliance with the License. You may obtain a copy of
17 * the License at http://www.apache.org/licenses/LICENSE-2.0 .
18 */
19#ifndef INCLUDED_SW_SOURCE_FILTER_HTML_SWHTML_HXX
20#define INCLUDED_SW_SOURCE_FILTER_HTML_SWHTML_HXX
21
22#include <config_java.h>
23
24#include <sfx2/sfxhtml.hxx>
25#include <svl/listener.hxx>
26#include <svl/macitem.hxx>
27#include <svtools/htmltokn.h>
28#include <editeng/svxenum.hxx>
29#include <rtl/ref.hxx>
30#include <rtl/ustrbuf.hxx>
31#include <fltshell.hxx>
32#include <swtypes.hxx>
33#include <com/sun/star/drawing/XShape.hpp>
34#include <com/sun/star/form/XFormComponent.hpp>
35#include <com/sun/star/beans/XPropertySet.hpp>
36
37#include <memory>
38#include <utility>
39#include <vector>
40#include <deque>
41#include <stack>
42#include <set>
43
44class SfxMedium;
45class SfxViewFrame;
46class SdrObject;
48class SwDoc;
49class SwPaM;
50class SwViewShell;
51class SwStartNode;
52class SwFormatColl;
53class SwField;
54class SwHTMLForm_Impl;
55class SwApplet_Impl;
57class HTMLTableCnts;
58struct SwPending;
60struct ImplSVEvent;
61
64
67
68// some things you often need
72
73// attribute stack:
74
75class HTMLAttr;
76typedef std::deque<HTMLAttr *> HTMLAttrs;
77
78// Table of attributes: The order here is important: The attributes in the
79// beginning of the table will set first in EndAllAttrs.
81{
82 HTMLAttr* pKeep; // frame attributes
87
88 HTMLAttr* pLRSpace; // paragraph attributes
97
98 HTMLAttr* pCharFormats; // text attributes
100
101 HTMLAttr* pBold; // character attributes
119 HTMLAttr* pKerning; // (only for SPACER)
120 HTMLAttr* pCharBrush; // character background
125};
126
128{
129 friend class SwHTMLParser;
130 friend class CellSaveStruct;
131
135 sal_Int32 m_nEndContent;
137 bool m_bLikePara : 1; // set attribute above the whole paragraph
138 bool m_bValid : 1; // is the attribute valid?
139
140 std::unique_ptr<SfxPoolItem> m_pItem;
141 std::shared_ptr<HTMLAttrTable> m_xAttrTab;
142 HTMLAttr *m_pNext; // still to close attributes with different values
143 HTMLAttr *m_pPrev; // already closed but not set attributes
144 HTMLAttr **m_ppHead; // list head
145
146 HTMLAttr( const SwPosition& rPos, const SfxPoolItem& rItem,
147 HTMLAttr **pHd, std::shared_ptr<HTMLAttrTable> xAttrTab );
148
149 HTMLAttr( const HTMLAttr &rAttr, const SwNode &rEndPara,
150 sal_Int32 nEndCnt, HTMLAttr **pHd, std::shared_ptr<HTMLAttrTable> xAttrTab );
151
152public:
153
154 ~HTMLAttr();
155
156 HTMLAttr *Clone( const SwNode& rEndPara, sal_Int32 nEndCnt ) const;
157 void Reset( const SwNode& rSttPara, sal_Int32 nSttCnt,
158 HTMLAttr **pHd, const std::shared_ptr<HTMLAttrTable>& rAttrTab );
159 inline void SetStart( const SwPosition& rPos );
160
163
164 const SwNodeIndex& GetStartParagraph() const { return m_nStartPara; }
165 const SwNodeIndex& GetEndParagraph() const { return m_nEndPara; }
166
167 sal_Int32 GetStartContent() const { return m_nStartContent; }
168 sal_Int32 GetEndContent() const { return m_nEndContent; }
169
170 bool IsLikePara() const { return m_bLikePara; }
171 void SetLikePara() { m_bLikePara = true; }
172
174 const SfxPoolItem& GetItem() const { return *m_pItem; }
175
176 HTMLAttr *GetNext() const { return m_pNext; }
177 void InsertNext( HTMLAttr *pNxt ) { m_pNext = pNxt; }
178
179 HTMLAttr *GetPrev() const { return m_pPrev; }
180 void InsertPrev( HTMLAttr *pPrv );
181 void ClearPrev() { m_pPrev = nullptr; }
182
183 void SetHead(HTMLAttr **ppHd, const std::shared_ptr<HTMLAttrTable>& rAttrTab)
184 {
185 m_ppHead = ppHd;
186 m_xAttrTab = rAttrTab;
187 }
188
189 // During setting attributes from styles it can happen that these
190 // shouldn't be set anymore. To delete them would be very expensive, because
191 // you don't know all the places where they are linked in. Therefore they're
192 // made invalid and deleted at the next call of SetAttr_().
193 void Invalidate() { m_bValid = false; }
194};
195
197
199 AM_NORMAL, // no paragraph spacing handling
200 AM_NOSPACE, // set spacing hard to 0cm
201 AM_SPACE, // set spacing hard to 0.5cm
202 AM_SOFTNOSPACE, // don't set spacing, but save 0cm
203 AM_NONE // no append
205
207{
208 HTMLAttrs m_aAttrs; // the attributes created in the context
209
210 OUString m_aClass; // context class
211
212 std::unique_ptr<HTMLAttrContext_SaveDoc> m_pSaveDocContext;
213 std::unique_ptr<SfxItemSet> m_pFrameItemSet;
214
215 HtmlTokenId m_nToken; // the token of the context
216
217 sal_uInt16 m_nTextFormatColl; // a style created in the context or zero
218
219 sal_uInt16 m_nLeftMargin; // a changed left border
220 sal_uInt16 m_nRightMargin; // a changed right border
221 sal_uInt16 m_nFirstLineIndent; // a changed first line indent
222
223 sal_uInt16 m_nUpperSpace;
224 sal_uInt16 m_nLowerSpace;
225
227
228 bool m_bLRSpaceChanged : 1; // left/right border, changed indent?
229 bool m_bULSpaceChanged : 1; // top/bottom border changed?
230 bool m_bDefaultTextFormatColl : 1;// nTextFormatColl is only default
231 bool m_bSpansSection : 1; // the context opens a SwSection
232 bool m_bPopStack : 1; // delete above stack elements
238
239 bool m_bVisible = true;
240
241public:
242 void ClearSaveDocContext();
243
244 HTMLAttrContext( HtmlTokenId nTokn, sal_uInt16 nPoolId, OUString aClass,
245 bool bDfltColl=false );
246 explicit HTMLAttrContext( HtmlTokenId nTokn );
248
249 HtmlTokenId GetToken() const { return m_nToken; }
250
253
254 const OUString& GetClass() const { return m_aClass; }
255
256 inline void SetMargins( sal_uInt16 nLeft, sal_uInt16 nRight, short nIndent );
257
258 bool IsLRSpaceChanged() const { return m_bLRSpaceChanged; }
259 inline void GetMargins( sal_uInt16& nLeft, sal_uInt16& nRight,
260 short &nIndent ) const;
261
262 inline void SetULSpace( sal_uInt16 nUpper, sal_uInt16 nLower );
263 bool IsULSpaceChanged() const { return m_bULSpaceChanged; }
264 inline void GetULSpace( sal_uInt16& rUpper, sal_uInt16& rLower ) const;
265
266 bool HasAttrs() const { return !m_aAttrs.empty(); }
267 const HTMLAttrs& GetAttrs() const { return m_aAttrs; }
269
270 void SetSpansSection( bool bSet ) { m_bSpansSection = bSet; }
271 bool GetSpansSection() const { return m_bSpansSection; }
272
273 void SetPopStack( bool bSet ) { m_bPopStack = bSet; }
274 bool GetPopStack() const { return m_bPopStack; }
275
276 bool HasSaveDocContext() const { return m_pSaveDocContext!=nullptr; }
277 HTMLAttrContext_SaveDoc *GetSaveDocContext( bool bCreate=false );
278
279 const SfxItemSet *GetFrameItemSet() const { return m_pFrameItemSet.get(); }
280 SfxItemSet *GetFrameItemSet( SwDoc *pCreateDoc );
281
282 void SetFinishPREListingXMP( bool bSet ) { m_bFinishPREListingXMP = bSet; }
284
285 void SetRestartPRE( bool bSet ) { m_bRestartPRE = bSet; }
286 bool IsRestartPRE() const { return m_bRestartPRE; }
287
288 void SetRestartXMP( bool bSet ) { m_bRestartXMP = bSet; }
289 bool IsRestartXMP() const { return m_bRestartXMP; }
290
291 void SetRestartListing( bool bSet ) { m_bRestartListing = bSet; }
292 bool IsRestartListing() const { return m_bRestartListing; }
293
294 void SetHeaderOrFooter( bool bSet ) { m_bHeaderOrFooter = bSet; }
295 bool IsHeaderOrFooter() const { return m_bHeaderOrFooter; }
296
299
300 void SetVisible(bool bVisible) { m_bVisible = bVisible; }
301 bool IsVisible() const { return m_bVisible; }
302};
303
304typedef std::vector<std::unique_ptr<HTMLAttrContext>> HTMLAttrContexts;
305
306class HTMLTable;
307class SwCSS1Parser;
309
310typedef std::vector<std::unique_ptr<ImageMap>> ImageMaps;
311
313 ProtectStack = 0x0001,
314 StripPara = 0x0002,
315 KeepNumrule = 0x0004,
316 HeaderDist = 0x0008,
317 FooterDist = 0x0010,
318 KeepAttrs = 0x0020,
319 MultiColMask = StripPara | KeepNumrule | KeepAttrs // for headers, footers or footnotes
320};
321namespace o3tl
322{
323 template<> struct typed_flags<HtmlContextFlags> : is_typed_flags<HtmlContextFlags, 0x03f> {};
324}
325
327 Box = 0x0001,
328 Background = 0x0002,
329 Padding = 0x0004,
330 Direction = 0x0008,
331};
332namespace o3tl
333{
334 template<> struct typed_flags<HtmlFrameFormatFlags> : is_typed_flags<HtmlFrameFormatFlags, 0x0f> {};
335}
336
338{
340public:
343 virtual void Notify(const SfxHint&) override;
344};
345
347{
348 friend class SectionSaveStruct;
349 friend class CellSaveStruct;
350 friend class CaptionSaveStruct;
351
352 /*
353 Progress bar
354 */
355 std::unique_ptr<ImportProgress> m_xProgress;
356
358 OUString m_sBaseURL;
359 OUString m_aBasicLib;
361 OUString m_aScriptSource; // content of the current script block
362 OUString m_aScriptType; // type of read script (StarBasic/VB/JAVA)
363 OUString m_aScriptURL; // script URL
364 OUString m_aStyleSource; // content of current style sheet
365 OUString m_aContents; // text of current marquee, field and so
366 OUStringBuffer m_sTitle;
367 OUString m_aUnknownToken; // a started unknown token
369 OUString m_sJmpMark;
370
371 std::vector<sal_uInt16> m_aBaseFontStack; // stack for <BASEFONT>
372 // Bit 0-2: font size (1-7)
373 std::vector<sal_uInt16> m_aFontStack; // stack for <FONT>, <BIG>, <SMALL>
374 // Bit 0-2: font size (1-7)
375 // Bit 15: font colour was set
376
377 HTMLAttrs m_aSetAttrTab;// "closed", not set attributes
378 HTMLAttrs m_aParaAttrs; // temporary paragraph attributes
379 std::shared_ptr<HTMLAttrTable> m_xAttrTab; // "open" attributes
380 HTMLAttrContexts m_aContexts;// the current context of attribute/token
381 std::vector<std::unique_ptr<SwHTMLFrameFormatListener>> m_aMoveFlyFrames;// Fly-Frames, the anchor is moved
382 std::deque<sal_Int32> m_aMoveFlyCnts;// and the Content-Positions
383 //stray SwTableBoxes which need to be deleted to avoid leaking, but hold
384 //onto them until parsing is done
385 std::vector<std::unique_ptr<SwTableBox>> m_aOrphanedTableBoxes;
386
387 std::unique_ptr<SwApplet_Impl> m_pAppletImpl; // current applet
388
389 std::unique_ptr<SwCSS1Parser> m_pCSS1Parser; // Style-Sheet-Parser
390 std::unique_ptr<SwHTMLNumRuleInfo> m_pNumRuleInfo;
391 std::vector<SwPending> m_vPendingStack;
392
394 SwPaM *m_pPam; // SwPosition should be enough, or ??
395 SwViewShell *m_pActionViewShell; // SwViewShell, where StartAction was called
397
398 std::vector<HTMLTable*> m_aTables;
399 std::shared_ptr<HTMLTable> m_xTable; // current "outermost" table
400 SwHTMLForm_Impl* m_pFormImpl; // current form
402 std::unique_ptr<SwField> m_xField; // current field
403 ImageMap *m_pImageMap; // current image map
404 std::unique_ptr<ImageMaps> m_pImageMaps;
405 std::unique_ptr<SwHTMLFootEndNote_Impl> m_pFootEndNoteImpl;
406
407 Size m_aHTMLPageSize; // page size of HTML template
408
409 sal_uInt32 m_aFontHeights[7]; // font heights 1-7
411
413 sal_uInt16 m_nFontStMin;
414 sal_uInt16 m_nDefListDeep;
415 sal_uInt16 m_nFontStHeadStart; // elements in font stack at <Hn>
416 sal_uInt16 m_nSBModuleCnt; // counter for basic modules
417 sal_uInt16 m_nMissingImgMaps; // How many image maps are still missing?
419 size_t m_nContextStMin; // lower limit of PopContext
420 size_t m_nContextStAttrMin; // lower limit of attributes
421 sal_uInt16 m_nSelectEntryCnt; // Number of entries in the actual listbox
422 HtmlTokenId m_nOpenParaToken; // opened paragraph element
423
424 enum class JumpToMarks { NONE, Mark, Table, Region, Graphic };
426
427#ifdef DBG_UTIL
428 sal_uInt16 m_nContinue; // depth of Continue calls
429#endif
430
431 SvxAdjust m_eParaAdjust; // adjustment of current paragraph
432 HTMLScriptLanguage m_eScriptLang; // current script language
433
434 bool m_bOldIsHTMLMode : 1; // Was it a HTML document?
435
436 bool m_bDocInitialized : 1; // document resp. shell was initialize
437 // flag to prevent double init via recursion
438 bool m_bViewCreated : 1; // the view was already created (asynchronous)
440
441 bool m_bInFloatingFrame : 1; // We are in a floating frame
442 bool m_bInField : 1;
443 bool m_bKeepUnknown : 1; // handle unknown/not supported tokens
444 // 8
445 bool m_bCallNextToken : 1; // In tables: call NextToken in any case
446 bool m_bIgnoreRawData : 1; // ignore content of script/style
447 bool m_bLBEntrySelected : 1; // Is the current option selected?
448 bool m_bTAIgnoreNewPara : 1; // ignore next LF in text area?
449 bool m_bFixMarqueeWidth : 1; // Change size of marquee?
450
451 bool m_bUpperSpace : 1; // top paragraph spacing is needed
453 // 16
454
455 bool m_bInNoEmbed : 1; // we are in a NOEMBED area
456
457 bool m_bInTitle : 1; // we are in title
458
459 bool m_bChkJumpMark : 1; // maybe jump to predetermined mark
461 bool m_bFixSelectWidth : 1; // Set new width of select?
462 bool m_bTextArea : 1;
463 // 24
464 bool m_bSelect : 1;
468 bool m_bRemoveHidden : 1; // the filter implementation might set the hidden flag
469
470 bool m_bBodySeen : 1;
475
479
481 OUString m_InfoNames[4];
482
484
485 bool m_bXHTML = false;
486 bool m_bReqIF = false;
487
492 std::stack<SwOLENode*> m_aEmbeds;
493
494 std::set<OUString> m_aAllowedRTFOLEMimeTypes;
495
497 OUString m_aEmbedURL;
498
499 void DeleteFormImpl();
500
501 void DocumentDetected();
502 void Show();
503 void ShowStatline();
504 SwViewShell *CallStartAction( SwViewShell *pVSh = nullptr, bool bChkPtr = true );
505 SwViewShell *CallEndAction( bool bChkAction = false, bool bChkPtr = true );
507
508 DECL_LINK( AsyncCallback, void*, void );
509
510 // set attribute on document
511 void SetAttr_( bool bChkEnd, bool bBeforeTable, std::deque<std::unique_ptr<HTMLAttr>> *pPostIts );
512 void SetAttr( bool bChkEnd = true, bool bBeforeTable = false,
513 std::deque<std::unique_ptr<HTMLAttr>> *pPostIts = nullptr )
514 {
515 if( !m_aSetAttrTab.empty() || !m_aMoveFlyFrames.empty() )
516 SetAttr_( bChkEnd, bBeforeTable, pPostIts );
517 }
518
519 HTMLAttr **GetAttrTabEntry( sal_uInt16 nWhich );
520
521 // create a new text node on PaM position
522 bool AppendTextNode( SwHTMLAppendMode eMode=AM_NORMAL, bool bUpdateNum=true );
523 void AddParSpace();
524
525 // start/end an attribute
526 // ppDepAttr indicated an attribute table entry, which attribute has to be
527 // set, before the attribute is closed
528 void NewAttr(const std::shared_ptr<HTMLAttrTable>& rAttrTab, HTMLAttr **ppAttr, const SfxPoolItem& rItem);
529 bool EndAttr( HTMLAttr *pAttr, bool bChkEmpty=true );
530 void DeleteAttr( HTMLAttr* pAttr );
531
532 void EndContextAttrs( HTMLAttrContext *pContext );
533 void SaveAttrTab(std::shared_ptr<HTMLAttrTable> const & rNewAttrTab);
534 void SplitAttrTab( const SwPosition& rNewPos );
535 void SplitAttrTab(std::shared_ptr<HTMLAttrTable> const & rNewAttrTab, bool bMoveEndBack);
536 void RestoreAttrTab(std::shared_ptr<HTMLAttrTable> const & rNewAttrTab);
537 void InsertAttr( const SfxPoolItem& rItem, bool bInsAtStart );
538 void InsertAttrs( std::deque<std::unique_ptr<HTMLAttr>> rAttrs );
539
540 bool DoPositioning( SfxItemSet &rItemSet,
541 SvxCSS1PropertyInfo &rPropInfo,
542 HTMLAttrContext *pContext );
543 bool CreateContainer( std::u16string_view rClass, SfxItemSet &rItemSet,
544 SvxCSS1PropertyInfo &rPropInfo,
545 HTMLAttrContext *pContext );
546 bool EndSection( bool bLFStripped=false );
547
548 void InsertAttrs( SfxItemSet &rItemSet, SvxCSS1PropertyInfo const &rPropInfo,
549 HTMLAttrContext *pContext, bool bCharLvl=false );
550 void InsertAttr( HTMLAttr **ppAttr, const SfxPoolItem & rItem,
551 HTMLAttrContext *pCntxt );
552 void SplitPREListingXMP( HTMLAttrContext *pCntxt );
553 void FixHeaderFooterDistance( bool bHeader, const SwPosition *pOldPos );
554
555 void EndContext( HTMLAttrContext *pContext );
556 void ClearContext( HTMLAttrContext *pContext );
557
558 const SwFormatColl *GetCurrFormatColl() const;
559
561
563 // add parameter <bCountedInList>
564 void SetNodeNum( sal_uInt8 nLevel );
565
566 // Manage paragraph styles
567
568 // set the style resp. its attributes on the stack
569 void SetTextCollAttrs( HTMLAttrContext *pContext = nullptr );
570
571 void InsertParaAttrs( const SfxItemSet& rItemSet );
572
573 // Manage attribute context
574
575 // save current context
576 void PushContext(std::unique_ptr<HTMLAttrContext>& rCntxt)
577 {
578 m_aContexts.push_back(std::move(rCntxt));
579 }
580
581 // Fetch top/specified context but not outside the context with token
582 // nLimit. If bRemove set then remove it.
583 std::unique_ptr<HTMLAttrContext> PopContext(HtmlTokenId nToken = HtmlTokenId::NONE);
584
585 void GetMarginsFromContext( sal_uInt16 &nLeft, sal_uInt16 &nRight, short& nIndent,
586 bool bIgnoreCurrent=false ) const;
587 void GetMarginsFromContextWithNumberBullet( sal_uInt16 &nLeft, sal_uInt16 &nRight,
588 short& nIndent ) const;
589 void GetULSpaceFromContext( sal_uInt16 &rUpper, sal_uInt16 &rLower ) const;
590
591 void MovePageDescAttrs( SwNode *pSrcNd, SwNodeOffset nDestIdx, bool bFormatBreak );
592
593 // Handling of tags at paragraph level
594
595 // <P> and <H1> to <H6>
596 void NewPara();
597 void EndPara( bool bReal = false );
598 void NewHeading( HtmlTokenId nToken );
599 void EndHeading();
600
601 // <ADDRESS>, <BLOCKQUOTE> and <PRE>
602 void NewTextFormatColl( HtmlTokenId nToken, sal_uInt16 nPoolId );
603 void EndTextFormatColl( HtmlTokenId nToken );
604
605 // <DIV> and <CENTER>
606 void NewDivision( HtmlTokenId nToken );
607 void EndDivision();
608
609 // insert/close Fly-Frames
610 void InsertFlyFrame( const SfxItemSet& rItemSet, HTMLAttrContext *pCntxt,
611 const OUString& rId );
612
613 void SaveDocContext( HTMLAttrContext *pCntxt, HtmlContextFlags nFlags,
614 const SwPosition *pNewPos );
615 void RestoreDocContext( HTMLAttrContext *pCntxt );
616
617 // end all opened <DIV> areas
618 bool EndSections( bool bLFStripped );
619
620 // <MULTICOL>
621 void NewMultiCol( sal_uInt16 columnsFromCss=0 );
622
623 // <MARQUEE>
624 void NewMarquee( HTMLTable *pCurTable=nullptr );
625 void EndMarquee();
626 void InsertMarqueeText();
627
628 // Handling of lists
629
630 // order list <OL> and unordered list <UL> with <LI>
631 void NewNumberBulletList( HtmlTokenId nToken );
632 void EndNumberBulletList( HtmlTokenId nToken = HtmlTokenId::NONE );
634 void EndNumberBulletListItem( HtmlTokenId nToken, bool bSetColl);
635
636 // definitions lists <DL> with <DD>, <DT>
637 void NewDefList();
638 void EndDefList();
639 void NewDefListItem( HtmlTokenId nToken );
640 void EndDefListItem( HtmlTokenId nToken = HtmlTokenId::NONE );
641
642 // Handling of tags on character level
643
644 // handle tags like <B>, <I> and so, which enable/disable a certain
645 // attribute or like <SPAN> get attributes from styles
646 void NewStdAttr( HtmlTokenId nToken );
647 void NewStdAttr( HtmlTokenId nToken,
648 HTMLAttr **ppAttr, const SfxPoolItem & rItem,
649 HTMLAttr **ppAttr2=nullptr, const SfxPoolItem *pItem2=nullptr,
650 HTMLAttr **ppAttr3=nullptr, const SfxPoolItem *pItem3=nullptr );
651 void EndTag( HtmlTokenId nToken );
652
653 // handle font attributes
654 void NewBasefontAttr(); // for <BASEFONT>
655 void EndBasefontAttr();
656 void NewFontAttr( HtmlTokenId nToken ); // for <FONT>, <BIG> and <SMALL>
657 void EndFontAttr( HtmlTokenId nToken );
658
659 // tags realized via character styles
660 void NewCharFormat( HtmlTokenId nToken );
661
662 void ClearFootnotesMarksInRange(const SwNodeIndex& rSttIdx, const SwNodeIndex& rEndIdx);
663
664 void DeleteSection(SwStartNode* pSttNd);
665
666 // <SDFIELD>
667public:
668 static SvxNumType GetNumType( const OUString& rStr, SvxNumType eDfltType );
669private:
670 void NewField();
671 void EndField();
672 void InsertFieldText();
673
674 // <SPACER>
675 void InsertSpacer();
676
677 // Inserting graphics, plug-ins and applets
678
679 // search image maps and link with graphic nodes
680 ImageMap *FindImageMap( std::u16string_view rURL ) const;
681 void ConnectImageMaps();
682
683 // find anchor of Fly-Frames and set corresponding attributes
684 // in Attrset (htmlgrin.cxx)
685 void SetAnchorAndAdjustment( sal_Int16 eVertOri,
686 sal_Int16 eHoriOri,
687 const SvxCSS1PropertyInfo &rPropInfo,
688 SfxItemSet& rFrameSet );
689 void SetAnchorAndAdjustment( sal_Int16 eVertOri,
690 sal_Int16 eHoriOri,
691 SfxItemSet& rFrameSet,
692 bool bDontAppend=false );
693 void SetAnchorAndAdjustment( const SvxCSS1PropertyInfo &rPropInfo,
694 SfxItemSet &rFrameItemSet );
695
696 static void SetFrameFormatAttrs( SfxItemSet &rItemSet,
697 HtmlFrameFormatFlags nFlags, SfxItemSet &rFrameItemSet );
698
699 // create frames and register auto bound frames
700 void RegisterFlyFrame( SwFrameFormat *pFlyFrame );
701
702 // Adjust the size of the Fly-Frames to requirements and conditions
703 // (not for graphics, therefore htmlplug.cxx)
704 static void SetFixSize( const Size& rPixSize, const Size& rTwipDfltSize,
705 bool bPercentWidth, bool bPercentHeight,
706 SvxCSS1PropertyInfo const &rPropInfo,
707 SfxItemSet& rFlyItemSet );
708 static void SetVarSize( SvxCSS1PropertyInfo const &rPropInfo,
709 SfxItemSet& rFlyItemSet, SwTwips nDfltWidth=MINLAY,
710 sal_uInt8 nDefaultPercentWidth=0 );
711 static void SetSpace( const Size& rPixSpace, SfxItemSet &rItemSet,
712 SvxCSS1PropertyInfo &rPropInfo, SfxItemSet& rFlyItemSet );
713
714 sal_uInt16 IncGrfsThatResizeTable();
715
716 void GetDefaultScriptType( ScriptType& rType,
717 OUString& rTypeStr ) const;
718
719 // the actual insert methods for <IMG>, <EMBED>, <APPLET> and <PARAM>
720 void InsertImage(); // htmlgrin.cxx
721 bool InsertEmbed(); // htmlplug.cxx
722
723#if HAVE_FEATURE_JAVA
724 void NewObject(); // htmlplug.cxx
725#endif
726 void EndObject(); // link CommandLine with applet (htmlplug.cxx)
727#if HAVE_FEATURE_JAVA
728 void InsertApplet(); // htmlplug.cxx
729#endif
730 void EndApplet(); // link CommandLine with applet (htmlplug.cxx)
731 void InsertParam(); // htmlplug.cxx
732
733 void InsertFloatingFrame();
734
735 // parse <BODY>-tag: set background graphic and background colour (htmlgrin.cxx)
736 void InsertBodyOptions();
737
738 // Inserting links and bookmarks (htmlgrin.cxx)
739
740 // parse <A>-tag: insert a link resp. bookmark
741 void NewAnchor();
742 void EndAnchor();
743
744 // insert bookmark
745 void InsertBookmark( const OUString& rName );
746
747 void InsertCommentText( const char *pTag );
748 void InsertComment( const OUString& rName, const char *pTag = nullptr );
749
750 // Has the current paragraph bookmarks?
751 bool HasCurrentParaBookmarks( bool bIgnoreStack=false ) const;
752
753 // Inserting script/basic elements
754
755 // parse the last read basic module (htmlbas.cxx)
756 void NewScript();
757 void EndScript();
758
759 void AddScriptSource();
760
761 // insert event in SFX configuration (htmlbas.cxx)
762 void InsertBasicDocEvent( const OUString& aEventName, const OUString& rName,
763 ScriptType eScrType, const OUString& rScrType );
764
765 // Inserting styles
766
767 // <STYLE>
768 void NewStyle();
769 void EndStyle();
770
771 static inline bool HasStyleOptions( std::u16string_view rStyle, std::u16string_view rId,
772 std::u16string_view rClass, const OUString *pLang=nullptr,
773 const OUString *pDir=nullptr );
774 bool ParseStyleOptions( const OUString &rStyle, const OUString &rId,
775 const OUString &rClass, SfxItemSet &rItemSet,
776 SvxCSS1PropertyInfo &rPropInfo,
777 const OUString *pLang=nullptr, const OUString *pDir=nullptr );
778
779 // Inserting Controls and Forms (htmlform.cxx)
780
781 // Insert draw object into document
782 void InsertDrawObject( SdrObject* pNewDrawObj, const Size& rSpace,
783 sal_Int16 eVertOri,
784 sal_Int16 eHoriOri,
785 SfxItemSet& rCSS1ItemSet,
786 SvxCSS1PropertyInfo& rCSS1PropInfo );
787 css::uno::Reference< css::drawing::XShape > InsertControl(
788 const css::uno::Reference< css::form::XFormComponent > & rFormComp,
789 const css::uno::Reference< css::beans::XPropertySet > & rFCompPropSet,
790 const Size& rSize,
791 sal_Int16 eVertOri,
792 sal_Int16 eHoriOri,
793 SfxItemSet& rCSS1ItemSet,
794 SvxCSS1PropertyInfo& rCSS1PropInfo,
795 const SvxMacroTableDtor& rMacroTable,
796 const std::vector<OUString>& rUnoMacroTable,
797 const std::vector<OUString>& rUnoMacroParamTable,
798 bool bSetPropSet = true,
799 bool bHidden = false );
800 void SetControlSize( const css::uno::Reference< css::drawing::XShape > & rShape, const Size& rTextSz,
801 bool bMinWidth, bool bMinHeight );
802
803public:
804 static void ResizeDrawObject( SdrObject* pObj, SwTwips nWidth );
805private:
806 static void RegisterDrawObjectToTable( HTMLTable *pCurTable, SdrObject* pObj,
807 sal_uInt8 nWidth );
808
809 void NewForm( bool bAppend=true );
810 void EndForm( bool bAppend=true );
811
812 // Insert methods for <INPUT>, <TEXTAREA> and <SELECT>
813 void InsertInput();
814
815 void NewTextArea();
816 void InsertTextAreaText( HtmlTokenId nToken );
817 void EndTextArea();
818
819 void NewSelect();
820 void InsertSelectOption();
821 void InsertSelectText();
822 void EndSelect();
823
824 // Inserting tables (htmltab.cxx)
825public:
826
827 // Insert box content after the given node
828 const SwStartNode *InsertTableSection( const SwStartNode *pPrevStNd );
829
830 // Insert box content at the end of the table containing the PaM
831 // and move the PaM into the cell
832 const SwStartNode *InsertTableSection( sal_uInt16 nPoolId );
833
834 // Insert methods for various table tags
835 std::unique_ptr<HTMLTableCnts> InsertTableContents( bool bHead );
836
837private:
838 // Create a section for the temporary storage of the table caption
840
841 void BuildTableCell( HTMLTable *pTable, bool bReadOptions, bool bHead );
842 void BuildTableRow( HTMLTable *pTable, bool bReadOptions,
843 SvxAdjust eGrpAdjust, sal_Int16 eVertOri );
844 void BuildTableSection( HTMLTable *pTable, bool bReadOptions, bool bHead );
845 void BuildTableColGroup( HTMLTable *pTable, bool bReadOptions );
846 void BuildTableCaption( HTMLTable *pTable );
847 std::shared_ptr<HTMLTable> BuildTable(SvxAdjust eCellAdjust,
848 bool bIsParentHead = false,
849 bool bHasParentSection=true,
850 bool bHasToFlow = false);
851
852 // misc ...
853
855
856 bool FileDownload( const OUString& rURL, OUString& rStr );
857 void InsertLink();
858
859 void InsertIDOption();
860 void InsertLineBreak();
861 void InsertHorzRule();
862
863 void FillEndNoteInfo( const OUString& rContent );
864 void FillFootNoteInfo( const OUString& rContent );
865 void InsertFootEndNote( const OUString& rName, bool bEndNote, bool bFixed );
866 void FinishFootEndNote();
868 SwNodeIndex *GetFootEndNoteSection( const OUString& rName );
869
870 sal_Int32 StripTrailingLF();
871
872 // Remove empty paragraph at the PaM position
873 void StripTrailingPara();
874 // If removing an empty node would corrupt the document
875 bool CanRemoveNode(SwNodeOffset nNodeIdx) const;
876
877 // Are there fly frames in the current paragraph?
878 bool HasCurrentParaFlys( bool bNoSurroundOnly = false,
879 bool bSurroundOnly = false ) const;
880
882 {
883 private:
885 public:
887 : m_rParser(rParser)
888 {
890 }
891 bool TooDeep() const { return m_rParser.m_nTableDepth > 1024; }
893 {
895 }
896 };
897
898public: // used in tables
899
900 // Create brush item (with new) or 0
901 SvxBrushItem* CreateBrushItem( const Color *pColor,
902 const OUString &rImageURL,
903 const OUString &rStyle,
904 const OUString &rId,
905 const OUString &rClass );
906
907protected:
908 // Executed for each token recognized by CallParser
909 virtual void NextToken( HtmlTokenId nToken ) override;
910 virtual ~SwHTMLParser() override;
911
912 // If the document is removed, remove the parser as well
913 virtual void Notify(const SfxHint&) override;
914
915 virtual void AddMetaUserDefined( OUString const & i_rMetaName ) override;
916
917public:
918
919 SwHTMLParser( SwDoc* pD, SwPaM & rCursor, SvStream& rIn,
920 OUString aFileName,
921 OUString aBaseURL,
922 bool bReadNewDoc,
923 SfxMedium* pMed, bool bReadUTF8,
924 bool bIgnoreHTMLComments,
925 const OUString& rNamespace);
926
927 virtual SvParserState CallParser() override;
928
929 static sal_uInt16 ToTwips( sal_uInt16 nPixel );
930
931 // for reading asynchronously from SvStream
932 virtual void Continue( HtmlTokenId nToken ) override;
933
934 virtual bool ParseMetaOptions( const css::uno::Reference<css::document::XDocumentProperties>&,
935 SvKeyValueIterator* ) override;
936
937
939 {
940 m_aTables.push_back(pNew);
941 }
942
943 void DeregisterHTMLTable(HTMLTable* pOld);
944
945 SwDoc* GetDoc() const;
946
947 bool IsReqIF() const;
948
950
952
954 static OUString StripQueryFromPath(const OUString& rBase, const OUString& rPath);
955};
956
958{
959 virtual ~SwPendingData() {}
960};
961
963{
965 std::unique_ptr<SwPendingData> pData;
966
968 : nToken( nTkn )
969 {}
970};
971
972inline void HTMLAttr::SetStart( const SwPosition& rPos )
973{
974 m_nStartPara = rPos.nNode;
978}
979
980inline void HTMLAttrContext::SetMargins( sal_uInt16 nLeft, sal_uInt16 nRight,
981 short nIndent )
982{
983 m_nLeftMargin = nLeft;
984 m_nRightMargin = nRight;
985 m_nFirstLineIndent = nIndent;
986 m_bLRSpaceChanged = true;
987}
988
989inline void HTMLAttrContext::GetMargins( sal_uInt16& nLeft,
990 sal_uInt16& nRight,
991 short& nIndent ) const
992{
994 {
995 nLeft = m_nLeftMargin;
996 nRight = m_nRightMargin;
997 nIndent = m_nFirstLineIndent;
998 }
999}
1000
1001inline void HTMLAttrContext::SetULSpace( sal_uInt16 nUpper, sal_uInt16 nLower )
1002{
1003 m_nUpperSpace = nUpper;
1004 m_nLowerSpace = nLower;
1005 m_bULSpaceChanged = true;
1006}
1007
1008inline void HTMLAttrContext::GetULSpace( sal_uInt16& rUpper,
1009 sal_uInt16& rLower ) const
1010{
1011 if( m_bULSpaceChanged )
1012 {
1013 rUpper = m_nUpperSpace;
1014 rLower = m_nLowerSpace;
1015 }
1016}
1017
1018inline bool SwHTMLParser::HasStyleOptions( std::u16string_view rStyle,
1019 std::u16string_view rId,
1020 std::u16string_view rClass,
1021 const OUString *pLang,
1022 const OUString *pDir )
1023{
1024 return !rStyle.empty() || !rId.empty() || !rClass.empty() ||
1025 (pLang && !pLang->isEmpty()) || (pDir && !pDir->isEmpty());
1026}
1027
1028class SwTextFootnote;
1029
1031{
1032 OUString sName;
1034 SwHTMLTextFootnote(OUString rName, SwTextFootnote* pInTextFootnote)
1035 : sName(std::move(rName))
1036 , pTextFootnote(pInTextFootnote)
1037 {
1038 }
1039};
1040
1042{
1043 std::vector<SwHTMLTextFootnote> aTextFootnotes;
1044
1045 OUString sName;
1046 OUString sContent; // information for the last footnote
1049};
1050
1051#endif
1052
1053/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
void ClearSaveDocContext()
Definition: htmlctxt.cxx:169
sal_uInt16 m_nFirstLineIndent
Definition: swhtml.hxx:221
bool IsHeaderOrFooter() const
Definition: swhtml.hxx:295
void SetULSpace(sal_uInt16 nUpper, sal_uInt16 nLower)
Definition: swhtml.hxx:1001
HTMLAttrContext_SaveDoc * GetSaveDocContext(bool bCreate=false)
Definition: htmlctxt.cxx:112
bool GetSpansSection() const
Definition: swhtml.hxx:271
void SetPopStack(bool bSet)
Definition: swhtml.hxx:273
const HTMLAttrs & GetAttrs() const
Definition: swhtml.hxx:267
sal_uInt16 GetDefaultTextFormatColl() const
Definition: swhtml.hxx:252
bool m_bFinishPREListingXMP
Definition: swhtml.hxx:233
HtmlTokenId m_nToken
Definition: swhtml.hxx:215
void SetVisible(bool bVisible)
Definition: swhtml.hxx:300
SwHTMLAppendMode GetAppendMode() const
Definition: swhtml.hxx:298
bool m_bSpansSection
Definition: swhtml.hxx:231
bool m_bRestartXMP
Definition: swhtml.hxx:235
bool IsVisible() const
Definition: swhtml.hxx:301
void SetHeaderOrFooter(bool bSet)
Definition: swhtml.hxx:294
sal_uInt16 GetTextFormatColl() const
Definition: swhtml.hxx:251
bool IsRestartXMP() const
Definition: swhtml.hxx:289
bool m_bHeaderOrFooter
Definition: swhtml.hxx:237
sal_uInt16 m_nUpperSpace
Definition: swhtml.hxx:223
void SetRestartXMP(bool bSet)
Definition: swhtml.hxx:288
void SetMargins(sal_uInt16 nLeft, sal_uInt16 nRight, short nIndent)
Definition: swhtml.hxx:980
OUString m_aClass
Definition: swhtml.hxx:210
void GetULSpace(sal_uInt16 &rUpper, sal_uInt16 &rLower) const
Definition: swhtml.hxx:1008
HTMLAttrs m_aAttrs
Definition: swhtml.hxx:208
void SetRestartPRE(bool bSet)
Definition: swhtml.hxx:285
bool GetPopStack() const
Definition: swhtml.hxx:274
HtmlTokenId GetToken() const
Definition: swhtml.hxx:249
bool m_bDefaultTextFormatColl
Definition: swhtml.hxx:230
std::unique_ptr< HTMLAttrContext_SaveDoc > m_pSaveDocContext
Definition: swhtml.hxx:212
bool IsFinishPREListingXMP() const
Definition: swhtml.hxx:283
bool IsRestartPRE() const
Definition: swhtml.hxx:286
void SetRestartListing(bool bSet)
Definition: swhtml.hxx:291
sal_uInt16 m_nLowerSpace
Definition: swhtml.hxx:224
sal_uInt16 m_nTextFormatColl
Definition: swhtml.hxx:217
const SfxItemSet * GetFrameItemSet() const
Definition: swhtml.hxx:279
bool m_bRestartListing
Definition: swhtml.hxx:236
bool IsULSpaceChanged() const
Definition: swhtml.hxx:263
SwHTMLAppendMode m_eAppend
Definition: swhtml.hxx:226
bool m_bRestartPRE
Definition: swhtml.hxx:234
bool m_bULSpaceChanged
Definition: swhtml.hxx:229
void SetSpansSection(bool bSet)
Definition: swhtml.hxx:270
bool IsLRSpaceChanged() const
Definition: swhtml.hxx:258
const OUString & GetClass() const
Definition: swhtml.hxx:254
void SetFinishPREListingXMP(bool bSet)
Definition: swhtml.hxx:282
sal_uInt16 m_nLeftMargin
Definition: swhtml.hxx:219
bool m_bPopStack
Definition: swhtml.hxx:232
bool IsRestartListing() const
Definition: swhtml.hxx:292
HTMLAttrContext(HtmlTokenId nTokn, sal_uInt16 nPoolId, OUString aClass, bool bDfltColl=false)
Definition: htmlctxt.cxx:120
bool HasAttrs() const
Definition: swhtml.hxx:266
bool m_bLRSpaceChanged
Definition: swhtml.hxx:228
bool HasSaveDocContext() const
Definition: swhtml.hxx:276
std::unique_ptr< SfxItemSet > m_pFrameItemSet
Definition: swhtml.hxx:213
sal_uInt16 m_nRightMargin
Definition: swhtml.hxx:220
void GetMargins(sal_uInt16 &nLeft, sal_uInt16 &nRight, short &nIndent) const
Definition: swhtml.hxx:989
void SetAppendMode(SwHTMLAppendMode eMode)
Definition: swhtml.hxx:297
HTMLAttrs & GetAttrs()
Definition: swhtml.hxx:268
sal_Int32 GetEndContent() const
Definition: swhtml.hxx:168
sal_Int32 m_nStartContent
Definition: swhtml.hxx:134
SwNodeOffset GetEndParagraphIdx() const
Definition: swhtml.hxx:162
HTMLAttr(const SwPosition &rPos, const SfxPoolItem &rItem, HTMLAttr **pHd, std::shared_ptr< HTMLAttrTable > xAttrTab)
Definition: swhtml.cxx:5446
void SetStart(const SwPosition &rPos)
Definition: swhtml.hxx:972
HTMLAttr * GetPrev() const
Definition: swhtml.hxx:179
sal_Int32 m_nEndContent
Definition: swhtml.hxx:135
void SetHead(HTMLAttr **ppHd, const std::shared_ptr< HTMLAttrTable > &rAttrTab)
Definition: swhtml.hxx:183
SwNodeIndex m_nEndPara
Definition: swhtml.hxx:133
void Reset(const SwNode &rSttPara, sal_Int32 nSttCnt, HTMLAttr **pHd, const std::shared_ptr< HTMLAttrTable > &rAttrTab)
Definition: swhtml.cxx:5495
HTMLAttr ** m_ppHead
Definition: swhtml.hxx:144
void ClearPrev()
Definition: swhtml.hxx:181
SfxPoolItem & GetItem()
Definition: swhtml.hxx:173
HTMLAttr * GetNext() const
Definition: swhtml.hxx:176
const SwNodeIndex & GetEndParagraph() const
Definition: swhtml.hxx:165
SwNodeOffset GetStartParagraphIdx() const
Definition: swhtml.hxx:161
HTMLAttr * m_pPrev
Definition: swhtml.hxx:143
void InsertNext(HTMLAttr *pNxt)
Definition: swhtml.hxx:177
bool m_bInsAtStart
Definition: swhtml.hxx:136
std::unique_ptr< SfxPoolItem > m_pItem
Definition: swhtml.hxx:140
const SfxPoolItem & GetItem() const
Definition: swhtml.hxx:174
~HTMLAttr()
Definition: swhtml.cxx:5480
HTMLAttr * m_pNext
Definition: swhtml.hxx:142
const SwNodeIndex & GetStartParagraph() const
Definition: swhtml.hxx:164
void InsertPrev(HTMLAttr *pPrv)
Definition: swhtml.cxx:5511
sal_Int32 GetStartContent() const
Definition: swhtml.hxx:167
bool m_bLikePara
Definition: swhtml.hxx:137
void SetLikePara()
Definition: swhtml.hxx:171
bool IsLikePara() const
Definition: swhtml.hxx:170
bool m_bValid
Definition: swhtml.hxx:138
SwNodeIndex m_nStartPara
Definition: swhtml.hxx:132
HTMLAttr * Clone(const SwNode &rEndPara, sal_Int32 nEndCnt) const
Definition: swhtml.cxx:5484
void Invalidate()
Definition: swhtml.hxx:193
std::shared_ptr< HTMLAttrTable > m_xAttrTab
Definition: swhtml.hxx:141
Definition: doc.hxx:192
Base class of all fields.
Definition: fldbas.hxx:292
Style of a layout element.
Definition: frmfmt.hxx:62
SwFrameFormat * GetFrameFormat()
Definition: swhtml.hxx:342
SwHTMLFrameFormatListener(SwFrameFormat *pFrameFormat)
Definition: swhtml.cxx:2730
SwFrameFormat * m_pFrameFormat
Definition: swhtml.hxx:339
virtual void Notify(const SfxHint &) override
Definition: swhtml.cxx:2736
SwHTMLParser & m_rParser
Definition: swhtml.hxx:884
TableDepthGuard(SwHTMLParser &rParser)
Definition: swhtml.hxx:886
virtual SvParserState CallParser() override
Definition: swhtml.cxx:556
std::shared_ptr< HTMLTable > m_xTable
Definition: swhtml.hxx:399
void InsertFootEndNote(const OUString &rName, bool bEndNote, bool bFixed)
Definition: htmlftn.cxx:178
void SetControlSize(const css::uno::Reference< css::drawing::XShape > &rShape, const Size &rTextSz, bool bMinWidth, bool bMinHeight)
Definition: htmlform.cxx:622
sal_uInt16 m_nSelectEntryCnt
Definition: swhtml.hxx:421
SwViewShell * CheckActionViewShell()
Definition: swhtml.cxx:2715
void ConnectImageMaps()
Definition: htmlgrin.cxx:113
std::vector< std::unique_ptr< SwTableBox > > m_aOrphanedTableBoxes
Definition: swhtml.hxx:385
void PushContext(std::unique_ptr< HTMLAttrContext > &rCntxt)
Definition: swhtml.hxx:576
const SwFormatColl * GetCurrFormatColl() const
Definition: swhtml.cxx:4608
bool CanRemoveNode(SwNodeOffset nNodeIdx) const
Definition: swhtml.cxx:612
void NewTextArea()
Definition: htmlform.cxx:1846
void NewBasefontAttr()
Definition: swhtml.cxx:3623
OUString m_aStyleSource
Definition: swhtml.hxx:364
DECL_LINK(AsyncCallback, void *, void)
void EndDefList()
Definition: swhtml.cxx:4426
HTMLAttrs m_aSetAttrTab
Definition: swhtml.hxx:377
bool m_bSelect
Definition: swhtml.hxx:464
sal_uInt16 m_nDefListDeep
Definition: swhtml.hxx:414
void InsertSpacer()
Definition: swhtml.cxx:4887
OUString m_sJmpMark
Definition: swhtml.hxx:369
int m_nTableDepth
Definition: swhtml.hxx:476
std::stack< SwOLENode * > m_aEmbeds
Non-owning pointers to already inserted OLE nodes, matching opened <object> XHTML elements.
Definition: swhtml.hxx:492
void NewDivision(HtmlTokenId nToken)
Definition: htmlsect.cxx:55
void NewDefListItem(HtmlTokenId nToken)
Definition: swhtml.cxx:4453
void NewFontAttr(HtmlTokenId nToken)
Definition: swhtml.cxx:3713
bool EndSection(bool bLFStripped=false)
Definition: htmlsect.cxx:502
void NewMarquee(HTMLTable *pCurTable=nullptr)
size_t m_nContextStAttrMin
Definition: swhtml.hxx:420
void RegisterHTMLTable(HTMLTable *pNew)
Definition: swhtml.hxx:938
bool m_bUpdateDocStat
Definition: swhtml.hxx:460
std::unique_ptr< HTMLAttrContext > PopContext(HtmlTokenId nToken=HtmlTokenId::NONE)
Definition: htmlcss1.cxx:2100
int m_nListItems
Definition: swhtml.hxx:478
bool m_bRemoveHidden
Definition: swhtml.hxx:468
void EndApplet()
Definition: htmlplug.cxx:987
static SvxNumType GetNumType(const OUString &rStr, SvxNumType eDfltType)
Definition: htmlfld.cxx:199
void InsertMarqueeText()
void DocumentDetected()
Definition: swhtml.cxx:967
SwHTMLForm_Impl * m_pFormImpl
Definition: swhtml.hxx:400
void SetAnchorAndAdjustment(sal_Int16 eVertOri, sal_Int16 eHoriOri, const SvxCSS1PropertyInfo &rPropInfo, SfxItemSet &rFrameSet)
Definition: htmlgrin.cxx:151
bool m_bViewCreated
Definition: swhtml.hxx:438
static sal_uInt16 ToTwips(sal_uInt16 nPixel)
Definition: swhtml.cxx:5055
void NewCharFormat(HtmlTokenId nToken)
Definition: swhtml.cxx:4826
void InsertIDOption()
Definition: swhtml.cxx:5092
void InsertAttrs(std::deque< std::unique_ptr< HTMLAttr > > rAttrs)
Definition: swhtml.cxx:3479
void InsertComment(const OUString &rName, const char *pTag=nullptr)
Definition: htmlfld.cxx:600
JumpToMarks m_eJumpTo
Definition: swhtml.hxx:425
void InsertBookmark(const OUString &rName)
Definition: htmlgrin.cxx:1393
bool CreateContainer(std::u16string_view rClass, SfxItemSet &rItemSet, SvxCSS1PropertyInfo &rPropInfo, HTMLAttrContext *pContext)
Definition: htmlctxt.cxx:505
HtmlTokenId m_nOpenParaToken
Definition: swhtml.hxx:422
void NewStyle()
Definition: htmlcss1.cxx:1650
std::unique_ptr< ImportProgress > m_xProgress
Definition: swhtml.hxx:355
void NewDefList()
Definition: swhtml.cxx:4323
bool m_bNotifyMacroEventRead
Definition: swhtml.hxx:472
bool m_bDocInitialized
Definition: swhtml.hxx:436
HTMLAttrContexts m_aContexts
Definition: swhtml.hxx:380
void FinishFootEndNote()
Definition: htmlftn.cxx:193
OUString m_aBasicModule
Definition: swhtml.hxx:360
std::unique_ptr< SwHTMLNumRuleInfo > m_pNumRuleInfo
Definition: swhtml.hxx:390
void InsertAttr(const SfxPoolItem &rItem, bool bInsAtStart)
Definition: swhtml.cxx:3470
void DeleteSection(SwStartNode *pSttNd)
Definition: htmltab.cxx:4941
css::uno::Reference< css::drawing::XShape > InsertControl(const css::uno::Reference< css::form::XFormComponent > &rFormComp, const css::uno::Reference< css::beans::XPropertySet > &rFCompPropSet, const Size &rSize, sal_Int16 eVertOri, sal_Int16 eHoriOri, SfxItemSet &rCSS1ItemSet, SvxCSS1PropertyInfo &rCSS1PropInfo, const SvxMacroTableDtor &rMacroTable, const std::vector< OUString > &rUnoMacroTable, const std::vector< OUString > &rUnoMacroParamTable, bool bSetPropSet=true, bool bHidden=false)
Definition: htmlform.cxx:845
static void SetSpace(const Size &rPixSpace, SfxItemSet &rItemSet, SvxCSS1PropertyInfo &rPropInfo, SfxItemSet &rFlyItemSet)
Definition: htmlplug.cxx:243
OUString m_aScriptSource
Definition: swhtml.hxx:361
virtual void NextToken(HtmlTokenId nToken) override
Definition: swhtml.cxx:986
SvxBrushItem * CreateBrushItem(const Color *pColor, const OUString &rImageURL, const OUString &rStyle, const OUString &rId, const OUString &rClass)
Definition: htmltab.cxx:2702
void ParseMoreMetaOptions()
Definition: swhtml.cxx:5373
void EndForm(bool bAppend=true)
Definition: htmlform.cxx:1358
sal_uInt16 m_nSBModuleCnt
Definition: swhtml.hxx:416
int m_nFloatingFrames
Definition: swhtml.hxx:477
void SaveAttrTab(std::shared_ptr< HTMLAttrTable > const &rNewAttrTab)
Definition: swhtml.cxx:3314
void NewMultiCol(sal_uInt16 columnsFromCss=0)
Definition: htmlsect.cxx:538
bool m_bFuzzing
Definition: swhtml.hxx:473
void InsertCommentText(const char *pTag)
Definition: htmlfld.cxx:587
void EndSelect()
Definition: htmlform.cxx:2342
size_t m_nParaCnt
Definition: swhtml.hxx:418
sal_uInt16 m_nMissingImgMaps
Definition: swhtml.hxx:417
std::shared_ptr< HTMLAttrTable > m_xAttrTab
Definition: swhtml.hxx:379
void SetAttr(bool bChkEnd=true, bool bBeforeTable=false, std::deque< std::unique_ptr< HTMLAttr > > *pPostIts=nullptr)
Definition: swhtml.hxx:512
sal_uInt32 m_aFontHeights[7]
Definition: swhtml.hxx:409
virtual void Notify(const SfxHint &) override
Definition: swhtml.cxx:958
void NewSelect()
Definition: htmlform.cxx:2128
void EndTag(HtmlTokenId nToken)
Definition: swhtml.cxx:3612
void ClearContext(HTMLAttrContext *pContext)
Definition: htmlctxt.cxx:421
void NewTextFormatColl(HtmlTokenId nToken, sal_uInt16 nPoolId)
Definition: swhtml.cxx:4194
void SaveDocContext(HTMLAttrContext *pCntxt, HtmlContextFlags nFlags, const SwPosition *pNewPos)
Definition: htmlctxt.cxx:273
bool InsertEmbed()
Definition: htmlplug.cxx:346
OUString m_aPathToFile
Definition: swhtml.hxx:357
bool m_bTAIgnoreNewPara
Definition: swhtml.hxx:448
bool m_bOldIsHTMLMode
Definition: swhtml.hxx:434
std::shared_ptr< HTMLTable > BuildTable(SvxAdjust eCellAdjust, bool bIsParentHead=false, bool bHasParentSection=true, bool bHasToFlow=false)
Definition: htmltab.cxx:4963
OUString m_aBulletGrfs[MAXLEVEL]
Definition: swhtml.hxx:368
OUString m_aScriptType
Definition: swhtml.hxx:362
void EndContextAttrs(HTMLAttrContext *pContext)
Definition: htmlcss1.cxx:2214
bool m_bIgnoreHTMLComments
Definition: swhtml.hxx:467
void EndNumberBulletListItem(HtmlTokenId nToken, bool bSetColl)
bool m_bUpperSpace
Definition: swhtml.hxx:451
void Show()
Definition: swhtml.cxx:2567
OUString m_aUnknownToken
Definition: swhtml.hxx:367
bool m_bInFloatingFrame
Definition: swhtml.hxx:441
void InsertFieldText()
Definition: htmlfld.cxx:578
std::set< OUString > m_aAllowedRTFOLEMimeTypes
Definition: swhtml.hxx:494
void StripTrailingPara()
Definition: htmlgrin.cxx:1448
bool DoPositioning(SfxItemSet &rItemSet, SvxCSS1PropertyInfo &rPropInfo, HTMLAttrContext *pContext)
Definition: htmlctxt.cxx:468
void EndStyle()
Definition: htmlcss1.cxx:1666
SwViewShell * CallStartAction(SwViewShell *pVSh=nullptr, bool bChkPtr=true)
Definition: swhtml.cxx:2631
void DeleteAttr(HTMLAttr *pAttr)
Definition: swhtml.cxx:3256
void NewPara()
Definition: swhtml.cxx:3942
void NewAnchor()
Definition: htmlgrin.cxx:1168
void InsertHorzRule()
Definition: swhtml.cxx:5213
static bool HasStyleOptions(std::u16string_view rStyle, std::u16string_view rId, std::u16string_view rClass, const OUString *pLang=nullptr, const OUString *pDir=nullptr)
Definition: swhtml.hxx:1018
sal_uInt16 m_nContinue
Definition: swhtml.hxx:428
void InsertParam()
Definition: htmlplug.cxx:1016
void InsertFlyFrame(const SfxItemSet &rItemSet, HTMLAttrContext *pCntxt, const OUString &rId)
Definition: htmlsect.cxx:755
HTMLAttrs m_aParaAttrs
Definition: swhtml.hxx:378
std::vector< sal_uInt16 > m_aFontStack
Definition: swhtml.hxx:373
ImplSVEvent * m_nEventId
Definition: swhtml.hxx:410
void InsertImage()
Definition: htmlgrin.cxx:318
void BuildTableSection(HTMLTable *pTable, bool bReadOptions, bool bHead)
Definition: htmltab.cxx:4092
bool m_bChkJumpMark
Definition: swhtml.hxx:459
virtual ~SwHTMLParser() override
Definition: swhtml.cxx:468
void GetDefaultScriptType(ScriptType &rType, OUString &rTypeStr) const
Definition: htmlgrin.cxx:292
void BuildTableRow(HTMLTable *pTable, bool bReadOptions, SvxAdjust eGrpAdjust, sal_Int16 eVertOri)
Definition: htmltab.cxx:3892
HTMLAttr ** GetAttrTabEntry(sal_uInt16 nWhich)
Definition: htmlcss1.cxx:1524
SwPaM * m_pPam
Definition: swhtml.hxx:394
virtual void Continue(HtmlTokenId nToken) override
Definition: swhtml.cxx:618
SwHTMLNumRuleInfo & GetNumInfo()
Definition: swhtml.hxx:562
bool m_bFixMarqueeWidth
Definition: swhtml.hxx:449
void SetTextCollAttrs(HTMLAttrContext *pContext=nullptr)
Definition: swhtml.cxx:4614
SvxAdjust m_eParaAdjust
Definition: swhtml.hxx:431
bool m_isInTableStructure
Definition: swhtml.hxx:474
void EndObject()
Definition: htmlplug.cxx:857
void EndDivision()
Definition: htmlsect.cxx:385
static void SetFixSize(const Size &rPixSize, const Size &rTwipDfltSize, bool bPercentWidth, bool bPercentHeight, SvxCSS1PropertyInfo const &rPropInfo, SfxItemSet &rFlyItemSet)
Definition: htmlplug.cxx:165
OUString m_aBasicLib
Definition: swhtml.hxx:359
void NewAttr(const std::shared_ptr< HTMLAttrTable > &rAttrTab, HTMLAttr **ppAttr, const SfxPoolItem &rItem)
Definition: swhtml.cxx:3078
SwNodeIndex * m_pSttNdIdx
Definition: swhtml.hxx:396
bool m_bInNoEmbed
Definition: swhtml.hxx:455
rtl::Reference< SwDoc > m_xDoc
Definition: swhtml.hxx:393
bool ParseStyleOptions(const OUString &rStyle, const OUString &rId, const OUString &rClass, SfxItemSet &rItemSet, SvxCSS1PropertyInfo &rPropInfo, const OUString *pLang=nullptr, const OUString *pDir=nullptr)
Definition: htmlcss1.cxx:1838
SwDoc * GetDoc() const
Definition: htmltab.cxx:1060
bool m_bInField
Definition: swhtml.hxx:442
bool m_bCallNextToken
Definition: swhtml.hxx:445
bool IsReadingHeaderOrFooter() const
Definition: swhtml.hxx:949
virtual void AddMetaUserDefined(OUString const &i_rMetaName) override
Definition: swhtml.cxx:5542
HTMLScriptLanguage m_eScriptLang
Definition: swhtml.hxx:432
void SetAttr_(bool bChkEnd, bool bBeforeTable, std::deque< std::unique_ptr< HTMLAttr > > *pPostIts)
Definition: swhtml.cxx:2742
void FillFootNoteInfo(const OUString &rContent)
Definition: htmlftn.cxx:126
std::unique_ptr< SwField > m_xField
Definition: swhtml.hxx:402
void RestoreDocContext(HTMLAttrContext *pCntxt)
Definition: htmlctxt.cxx:324
void EndHeading()
Definition: swhtml.cxx:4152
void InsertLink()
Definition: htmlcss1.cxx:1711
void InsertFootEndNoteText()
Definition: htmlftn.cxx:214
void EndBasefontAttr()
Definition: swhtml.cxx:3704
void EndDefListItem(HtmlTokenId nToken=HtmlTokenId::NONE)
Definition: swhtml.cxx:4489
bool EndSections(bool bLFStripped)
Definition: htmlsect.cxx:520
void InsertSelectOption()
Definition: htmlform.cxx:2418
sal_Int32 StripTrailingLF()
Definition: htmltab.cxx:2656
std::vector< sal_uInt16 > m_aBaseFontStack
Definition: swhtml.hxx:371
rtl::Reference< SdrObject > m_pMarquee
Definition: swhtml.hxx:401
std::unique_ptr< SwCSS1Parser > m_pCSS1Parser
Definition: swhtml.hxx:389
void AddParSpace()
Definition: swhtml.cxx:2489
bool m_bReadingHeaderOrFooter
Definition: swhtml.hxx:471
SwTwips GetCurrentBrowseWidth()
Definition: swhtml.cxx:5067
void InsertSelectText()
Definition: htmlform.cxx:2457
std::unique_ptr< SwApplet_Impl > m_pAppletImpl
Definition: swhtml.hxx:387
bool IsReqIF() const
Definition: htmltab.cxx:1065
void EndNumberBulletList(HtmlTokenId nToken=HtmlTokenId::NONE)
void SplitPREListingXMP(HTMLAttrContext *pCntxt)
Definition: htmlctxt.cxx:752
sal_uInt16 m_nFontStHeadStart
Definition: swhtml.hxx:415
void NotifyMacroEventRead()
Definition: htmlgrin.cxx:1562
void BuildTableCell(HTMLTable *pTable, bool bReadOptions, bool bHead)
Definition: htmltab.cxx:3192
std::vector< SwPending > m_vPendingStack
Definition: swhtml.hxx:391
ImageMap * m_pImageMap
Definition: swhtml.hxx:403
std::vector< HTMLTable * > m_aTables
Definition: swhtml.hxx:398
void EndScript()
Definition: htmlbas.cxx:70
std::unique_ptr< ImageMaps > m_pImageMaps
all Image-Maps that have been read
Definition: swhtml.hxx:404
void InsertParaAttrs(const SfxItemSet &rItemSet)
Definition: htmlcss1.cxx:2235
SfxViewFrame * m_pTempViewFrame
Definition: swhtml.hxx:483
SwStartNode * InsertTempTableCaptionSection()
Definition: htmltab.cxx:2645
void ShowStatline()
Definition: swhtml.cxx:2598
void DeregisterHTMLTable(HTMLTable *pOld)
Definition: htmltab.cxx:1053
bool AppendTextNode(SwHTMLAppendMode eMode=AM_NORMAL, bool bUpdateNum=true)
Definition: swhtml.cxx:2186
void InsertDrawObject(SdrObject *pNewDrawObj, const Size &rSpace, sal_Int16 eVertOri, sal_Int16 eHoriOri, SfxItemSet &rCSS1ItemSet, SvxCSS1PropertyInfo &rCSS1PropInfo)
const SwStartNode * InsertTableSection(const SwStartNode *pPrevStNd)
Definition: htmltab.cxx:2540
ImageMap * FindImageMap(std::u16string_view rURL) const
Definition: htmlgrin.cxx:96
void EndTextArea()
Definition: htmlform.cxx:2071
void NewStdAttr(HtmlTokenId nToken)
Definition: swhtml.cxx:3489
OUString m_aContents
Definition: swhtml.hxx:365
OUString m_InfoNames[4]
the names corresponding to the DOCINFO field subtypes INFO[1-4]
Definition: swhtml.hxx:481
void EndAnchor()
Definition: htmlgrin.cxx:1376
void InsertTextAreaText(HtmlTokenId nToken)
Definition: htmlform.cxx:2098
void NewNumberBulletList(HtmlTokenId nToken)
void AddScriptSource()
Definition: htmlbas.cxx:179
void RegisterFlyFrame(SwFrameFormat *pFlyFrame)
Definition: htmlgrin.cxx:278
void NewNumberBulletListItem(HtmlTokenId nToken)
sal_uInt16 m_nFontStMin
Definition: swhtml.hxx:413
void NewField()
Definition: htmlfld.cxx:211
bool m_bBodySeen
Definition: swhtml.hxx:470
void GetMarginsFromContext(sal_uInt16 &nLeft, sal_uInt16 &nRight, short &nIndent, bool bIgnoreCurrent=false) const
Definition: htmlcss1.cxx:2140
void InsertBodyOptions()
Definition: htmlgrin.cxx:939
void EndContext(HTMLAttrContext *pContext)
Definition: htmlctxt.cxx:372
static OUString StripQueryFromPath(const OUString &rBase, const OUString &rPath)
Strips query and fragment from a URL path if base URL is a file:// one.
Definition: htmlplug.cxx:333
void GetMarginsFromContextWithNumberBullet(sal_uInt16 &nLeft, sal_uInt16 &nRight, short &nIndent) const
Definition: htmlcss1.cxx:2165
void EndField()
Definition: htmlfld.cxx:538
void MovePageDescAttrs(SwNode *pSrcNd, SwNodeOffset nDestIdx, bool bFormatBreak)
Definition: htmlsect.cxx:778
void InsertLineBreak()
Definition: swhtml.cxx:5110
bool m_bTextArea
Definition: swhtml.hxx:462
void NewHeading(HtmlTokenId nToken)
Definition: swhtml.cxx:4066
void EndPara(bool bReal=false)
Definition: swhtml.cxx:4018
bool m_bInFootEndNoteAnchor
Definition: swhtml.hxx:465
void EndTextFormatColl(HtmlTokenId nToken)
Definition: swhtml.cxx:4282
void FixHeaderFooterDistance(bool bHeader, const SwPosition *pOldPos)
Definition: htmlsect.cxx:414
static void RegisterDrawObjectToTable(HTMLTable *pCurTable, SdrObject *pObj, sal_uInt8 nWidth)
Definition: htmltab.cxx:3186
static void ResizeDrawObject(SdrObject *pObj, SwTwips nWidth)
sal_uInt16 m_nBaseFontStMin
Definition: swhtml.hxx:412
void ClearFootnotesMarksInRange(const SwNodeIndex &rSttIdx, const SwNodeIndex &rEndIdx)
Definition: htmltab.cxx:4893
std::unique_ptr< HTMLTableCnts > InsertTableContents(bool bHead)
Definition: htmltab.cxx:3142
void EndFontAttr(HtmlTokenId nToken)
Definition: swhtml.cxx:3933
bool m_bXHTML
Definition: swhtml.hxx:485
bool m_bKeepUnknown
Definition: swhtml.hxx:443
sal_uInt16 IncGrfsThatResizeTable()
Definition: htmltab.cxx:3181
void SplitAttrTab(const SwPosition &rNewPos)
Definition: htmlctxt.cxx:174
bool HasCurrentParaBookmarks(bool bIgnoreStack=false) const
Definition: htmlgrin.cxx:1400
bool m_bInFootEndNoteSymbol
Definition: swhtml.hxx:466
void SetNodeNum(sal_uInt8 nLevel)
void NewScript()
Definition: htmlbas.cxx:58
static void SetFrameFormatAttrs(SfxItemSet &rItemSet, HtmlFrameFormatFlags nFlags, SfxItemSet &rFrameItemSet)
Definition: htmlcss1.cxx:2061
bool m_bInTitle
Definition: swhtml.hxx:457
bool m_bSetModEnabled
Definition: swhtml.hxx:439
SwHTMLParser(SwDoc *pD, SwPaM &rCursor, SvStream &rIn, OUString aFileName, OUString aBaseURL, bool bReadNewDoc, SfxMedium *pMed, bool bReadUTF8, bool bIgnoreHTMLComments, const OUString &rNamespace)
Definition: swhtml.cxx:255
void InsertInput()
Definition: htmlform.cxx:1374
bool m_bLBEntrySelected
Definition: swhtml.hxx:447
std::vector< std::unique_ptr< SwHTMLFrameFormatListener > > m_aMoveFlyFrames
Definition: swhtml.hxx:381
bool m_bReqIF
Definition: swhtml.hxx:486
void BuildTableColGroup(HTMLTable *pTable, bool bReadOptions)
Definition: htmltab.cxx:4280
bool m_bFixSelectWidth
Definition: swhtml.hxx:461
OUStringBuffer m_sTitle
Definition: swhtml.hxx:366
bool m_bNoParSpace
Definition: swhtml.hxx:452
void FillEndNoteInfo(const OUString &rContent)
Definition: htmlftn.cxx:119
bool m_bIgnoreRawData
Definition: swhtml.hxx:446
bool EndAttr(HTMLAttr *pAttr, bool bChkEmpty=true)
Definition: swhtml.cxx:3094
OUString m_sBaseURL
Definition: swhtml.hxx:358
size_t m_nContextStMin
Definition: swhtml.hxx:419
std::unique_ptr< SwHTMLFootEndNote_Impl > m_pFootEndNoteImpl
Definition: swhtml.hxx:405
SwNodeIndex * GetFootEndNoteSection(const OUString &rName)
Definition: htmlftn.cxx:220
bool FileDownload(const OUString &rURL, OUString &rStr)
Definition: htmlcss1.cxx:1677
virtual bool ParseMetaOptions(const css::uno::Reference< css::document::XDocumentProperties > &, SvKeyValueIterator *) override
Definition: swhtml.cxx:5528
void GetULSpaceFromContext(sal_uInt16 &rUpper, sal_uInt16 &rLower) const
Definition: htmlcss1.cxx:2181
static void SetVarSize(SvxCSS1PropertyInfo const &rPropInfo, SfxItemSet &rFlyItemSet, SwTwips nDfltWidth=MINLAY, sal_uInt8 nDefaultPercentWidth=0)
Definition: htmlcss1.cxx:2022
Size m_aHTMLPageSize
Definition: swhtml.hxx:407
OUString m_aScriptURL
Definition: swhtml.hxx:363
void RestoreAttrTab(std::shared_ptr< HTMLAttrTable > const &rNewAttrTab)
Definition: swhtml.cxx:3440
void InsertBasicDocEvent(const OUString &aEventName, const OUString &rName, ScriptType eScrType, const OUString &rScrType)
Definition: htmlbas.cxx:226
SwViewShell * CallEndAction(bool bChkAction=false, bool bChkPtr=true)
Definition: swhtml.cxx:2660
std::deque< sal_Int32 > m_aMoveFlyCnts
Definition: swhtml.hxx:382
void BuildTableCaption(HTMLTable *pTable)
Definition: htmltab.cxx:4507
bool HasCurrentParaFlys(bool bNoSurroundOnly=false, bool bSurroundOnly=false) const
Definition: swhtml.cxx:4542
void InsertFloatingFrame()
Definition: htmlplug.cxx:1049
void DeleteFormImpl()
Definition: htmlform.cxx:588
SwViewShell * m_pActionViewShell
Definition: swhtml.hxx:395
OUString m_aEmbedURL
This is the URL of the outer <object> data if it's not OLE2 or an image.
Definition: swhtml.hxx:497
void NewForm(bool bAppend=true)
Definition: htmlform.cxx:1193
Marks a node in the document model.
Definition: ndindex.hxx:31
SwNodeOffset GetIndex() const
Definition: ndindex.hxx:171
Base class of the Writer document model elements.
Definition: node.hxx:84
PaM is Point and Mark: a selection of the document model.
Definition: pam.hxx:187
Starts a section of nodes in the document model.
Definition: node.hxx:325
HtmlTokenId
Mode eMode
ScriptType
NONE
constexpr auto toTwips(N number, Length from)
long Long
HTMLScriptLanguage
HTMLAttr * pLanguageCTL
Definition: swhtml.hxx:123
HTMLAttr * pFontHeight
Definition: swhtml.hxx:113
HTMLAttr * pItalicCJK
Definition: swhtml.hxx:105
HTMLAttr * pItalic
Definition: swhtml.hxx:104
HTMLAttr * pKerning
Definition: swhtml.hxx:119
HTMLAttr * pFontCTL
Definition: swhtml.hxx:112
HTMLAttr * pCharBrush
Definition: swhtml.hxx:120
HTMLAttr * pKeep
Definition: swhtml.hxx:82
HTMLAttr * pBlink
Definition: swhtml.hxx:109
HTMLAttr * pPageDesc
Definition: swhtml.hxx:86
HTMLAttr * pLineSpacing
Definition: swhtml.hxx:90
HTMLAttr * pCharBox
Definition: swhtml.hxx:124
HTMLAttr * pUnderline
Definition: swhtml.hxx:108
HTMLAttr * pLRSpace
Definition: swhtml.hxx:88
HTMLAttr * pCaseMap
Definition: swhtml.hxx:118
HTMLAttr * pFontColor
Definition: swhtml.hxx:116
HTMLAttr * pFontHeightCTL
Definition: swhtml.hxx:115
HTMLAttr * pFont
Definition: swhtml.hxx:110
HTMLAttr * pBrush
Definition: swhtml.hxx:84
HTMLAttr * pStrike
Definition: swhtml.hxx:107
HTMLAttr * pINetFormat
Definition: swhtml.hxx:99
HTMLAttr * pAdjust
Definition: swhtml.hxx:91
HTMLAttr * pDirection
Definition: swhtml.hxx:96
HTMLAttr * pBoldCTL
Definition: swhtml.hxx:103
HTMLAttr * pBreak
Definition: swhtml.hxx:85
HTMLAttr * pDropCap
Definition: swhtml.hxx:92
HTMLAttr * pFontCJK
Definition: swhtml.hxx:111
HTMLAttr * pBoldCJK
Definition: swhtml.hxx:102
HTMLAttr * pULSpace
Definition: swhtml.hxx:89
HTMLAttr * pOrphans
Definition: swhtml.hxx:95
HTMLAttr * pWidows
Definition: swhtml.hxx:94
HTMLAttr * pBold
Definition: swhtml.hxx:101
HTMLAttr * pLanguageCJK
Definition: swhtml.hxx:122
HTMLAttr * pItalicCTL
Definition: swhtml.hxx:106
HTMLAttr * pEscapement
Definition: swhtml.hxx:117
HTMLAttr * pBox
Definition: swhtml.hxx:83
HTMLAttr * pSplit
Definition: swhtml.hxx:93
HTMLAttr * pFontHeightCJK
Definition: swhtml.hxx:114
HTMLAttr * pLanguage
Definition: swhtml.hxx:121
HTMLAttr * pCharFormats
Definition: swhtml.hxx:98
std::vector< SwHTMLTextFootnote > aTextFootnotes
Definition: swhtml.hxx:1043
SwHTMLTextFootnote(OUString rName, SwTextFootnote *pInTextFootnote)
Definition: swhtml.hxx:1034
SwTextFootnote * pTextFootnote
Definition: swhtml.hxx:1033
virtual ~SwPendingData()
Definition: swhtml.hxx:959
HtmlTokenId nToken
Definition: swhtml.hxx:964
SwPending(HtmlTokenId nTkn)
Definition: swhtml.hxx:967
std::unique_ptr< SwPendingData > pData
Definition: swhtml.hxx:965
Marks a position in the document model.
Definition: pam.hxx:37
SwNodeIndex nNode
Definition: pam.hxx:38
sal_Int32 GetContentIndex() const
Definition: pam.hxx:84
SvParserState
SvxNumType
SvxAdjust
HTMLOptionEnum< SvxAdjust > const aHTMLPAlignTable[]
Definition: swhtml.cxx:142
constexpr tools::Long HTML_DFLT_IMG_HEIGHT
Definition: swhtml.hxx:66
std::vector< std::unique_ptr< ImageMap > > ImageMaps
Definition: swhtml.hxx:308
HTMLOptionEnum< sal_Int16 > const aHTMLImgVAlignTable[]
Definition: htmlgrin.cxx:83
SwHTMLAppendMode
Definition: swhtml.hxx:198
@ AM_NONE
Definition: swhtml.hxx:203
@ AM_SOFTNOSPACE
Definition: swhtml.hxx:202
@ AM_SPACE
Definition: swhtml.hxx:201
@ AM_NORMAL
Definition: swhtml.hxx:199
@ AM_NOSPACE
Definition: swhtml.hxx:200
HtmlFrameFormatFlags
Definition: swhtml.hxx:326
std::vector< std::unique_ptr< HTMLAttrContext > > HTMLAttrContexts
Definition: swhtml.hxx:304
std::deque< HTMLAttr * > HTMLAttrs
Definition: swhtml.hxx:75
constexpr tools::Long HTML_CJK_PARSPACE
Definition: swhtml.hxx:62
constexpr tools::Long HTML_CTL_PARSPACE
Definition: swhtml.hxx:63
HtmlContextFlags
Definition: swhtml.hxx:312
HTMLOptionEnum< sal_Int16 > const aHTMLImgHAlignTable[]
Definition: htmlgrin.cxx:76
constexpr tools::Long HTML_DFLT_IMG_WIDTH
Definition: swhtml.hxx:65
#define MINLAY
Definition: swtypes.hxx:62
tools::Long SwTwips
Definition: swtypes.hxx:51
constexpr sal_uInt8 MAXLEVEL
Definition: swtypes.hxx:92
bool bVisible
unsigned char sal_uInt8