summaryrefslogtreecommitdiff
path: root/sw/source
AgeCommit message (Collapse)AuthorFilesLines
2015-12-08sw: redundant condition, was checked previouslyMichael Stahl1-1/+1
Change-Id: I7934bc993e049169a08b835f922da8ef50ea05ee
2015-12-08consolidate MSO format ClassID magic numbers in msfilter/classids.hxxMichael Stahl1-4/+2
Change-Id: I673eeaa4168f769cb002995c43d986ee5f2030b2
2015-12-08sw: un-break DOCX formula exportMichael Stahl1-0/+5
(regression from 1dac99e7ea45f90bf39eb95eb7bc01f7d79093ef) Change-Id: Iffe3ec6c28f62b78a2b223144bfaad383d272802
2015-12-08WW8SmartTagData::Read: check seek resultMiklos Vajna1-1/+2
Change-Id: I0492c5b3018f59e4b783bb33f8b75ce67847dcf0
2015-12-08DOC import: read SmartTagDataMiklos Vajna5-0/+182
This only reads all the interesting info, SwWW8ImplReader::Read_FactoidBook() still has to put it on the filter stack in a later commit. Change-Id: Ic2e8b441367448b5bdf940bf8871f25afe8362c4
2015-12-08DOC import: tokenize smart-tag dataMiklos Vajna2-1/+11
Change-Id: I43e52c2c982ed553a53be9839feff591c99fdfca
2015-12-08SwWW8ImplReader: unused membersMiklos Vajna1-3/+0
Leftover from commit 0ec0ec267986644084baaa5bda5ba917dc5744df (i#93570 DOC import: handle commented text ranges via RES_FLTR_ANNOTATIONMARK, 2014-12-30). Change-Id: Ifc2547ccb6bc91687ad61896b72367320210a837
2015-12-08DOC import: handle smart tags via RES_FLTR_RDFMARKMiklos Vajna3-1/+15
The idea is that a subset of the smart tags will be mapped to RDF statements, as done already in the DOCX importer. Change-Id: I46e0dad37a3905fe591cba0f710156f27be05ff4
2015-12-08DOC import: tokenize PlcfBkfFactoid and PlcfBklFactoidMiklos Vajna2-4/+176
So that later SwWW8ImplReader can read these smart tag position structures in a way similar to bookmarks. Change-Id: I0e1dc30d48bbb6641a82d777f6569f59dd922e16
2015-12-08sw: add RES_FLTR_RDFMARKMiklos Vajna1-2/+12
This is similar to RES_FLTR_ANNOTATIONMARK, except that it'll be used for WW8 import's smart tag bookmark needs. First just add code so that WW8 import can put this this attribute on the import stack, the actual handling of the attribute has to be implemented later. Change-Id: I92e3fac02496e3f5e7a6ea27f0da91dcd47769cc
2015-12-08Related: tdf#94377 RTF export: support multiple paragraphs in editeng textMiklos Vajna1-1/+2
Write a \par at the end of each paragraph instead of writing one at the end of the whole text only. Change-Id: I984b31d4ae3d2e728c993b25bfde761dcad063ae
2015-12-07Avoid -fsanitize=signed-integer-overflowStephan Bergmann1-1/+1
...later on during loading of (a local copy of) <https://wiki.documentfoundation.org/images/5/50/BH40-BaseHandbook.odt> at > sw/inc/swrect.hxx:249:48: runtime error: signed integer overflow: 1080100 + 9223372036853697509 cannot be represented in type 'long' > SwRect::Bottom() const sw/inc/swrect.hxx:249:48 > SwTextFly::CalcMinBottom() const sw/source/core/text/txtfly.cxx:996:31 > SwTextFly::GetMinBottom() const sw/source/core/inc/txtfly.hxx:339:45 > SwTextFormatter::CalcBottomLine() const sw/source/core/text/itrform2.cxx:1917:20 > SwTextFrame::FormatAdjust(SwTextFormatter&, WidowsAndOrphans&, int, bool) sw/source/core/text/frmform.cxx:1092:26 > SwTextFrame::_Format(SwTextFormatter&, SwTextFormatInfo&, bool) sw/source/core/text/frmform.cxx:1552:13 > SwTextFrame::_Format(OutputDevice*, SwParaPortion*) sw/source/core/text/frmform.cxx:1662:5 > SwTextFrame::Format(OutputDevice*, SwBorderAttrs const*) sw/source/core/text/frmform.cxx:1809:17 > SwContentFrame::MakeAll(OutputDevice*) sw/source/core/layout/calcmove.cxx:1391:17 > SwFrame::PrepareMake(OutputDevice*) sw/source/core/layout/calcmove.cxx:307:21 > SwFrame::Calc(OutputDevice*) const sw/source/core/layout/trvlfrm.cxx:1798:9 > SwObjectFormatterTextFrame::FormatAnchorFrameAndItsPrevs(SwTextFrame&) sw/source/core/layout/objectformattertxtfrm.cxx:753:9 > SwFlyAtContentFrame::MakeAll(OutputDevice*) sw/source/core/layout/flycnt.cxx:419:21 > SwFrame::PrepareMake(OutputDevice*) sw/source/core/layout/calcmove.cxx:341:5 > SwFlyFrame::Calc(OutputDevice*) const sw/source/core/layout/fly.cxx:2665:9 > SwLayAction::FormatLayoutFly(SwFlyFrame*) sw/source/core/layout/layact.cxx:1428:9 > SwObjectFormatter::_FormatObj(SwAnchoredObject&) sw/source/core/layout/objectformatter.cxx:331:17 > SwObjectFormatterTextFrame::DoFormatObj(SwAnchoredObject&, bool) sw/source/core/layout/objectformattertxtfrm.cxx:134:9 > SwObjectFormatter::_FormatObjsAtFrame(SwTextFrame*) sw/source/core/layout/objectformatter.cxx:453:19 > SwObjectFormatterTextFrame::DoFormatObjs() sw/source/core/layout/objectformattertxtfrm.cxx:336:20 > SwObjectFormatter::FormatObjsAtFrame(SwFrame&, SwPageFrame const&, SwLayAction*) sw/source/core/layout/objectformatter.cxx:193:20 > SwLayAction::FormatContent(SwPageFrame const*) sw/source/core/layout/layact.cxx:1651:19 > SwLayAction::InternalAction(OutputDevice*) sw/source/core/layout/layact.cxx:572:31 > SwLayAction::Action(OutputDevice*) sw/source/core/layout/layact.cxx:352:5 > SwLayIdle::SwLayIdle(SwRootFrame*, SwViewShellImp*) sw/source/core/layout/layact.cxx:2159:13 > SwViewShell::LayoutIdle() sw/source/core/view/viewsh.cxx:728:19 > sw::DocumentTimerManager::DoIdleJobs(Idle*) sw/source/core/doc/DocumentTimerManager.cxx:119:17 > sw::DocumentTimerManager::LinkStubDoIdleJobs(void*, Idle*) sw/source/core/doc/DocumentTimerManager.cxx:81:1 > Link<Idle*, void>::Call(Idle*) const include/tools/link.hxx:84:45 > Idle::Invoke() vcl/source/app/idle.cxx:25:5 > ImplSchedulerData::Invoke() vcl/source/app/scheduler.cxx:40:5 > Scheduler::ProcessTaskScheduling(bool) vcl/source/app/scheduler.cxx:170:9 > ImplYield(bool, bool, unsigned long) vcl/source/app/svapp.cxx:519:5 > Application::Yield() vcl/source/app/svapp.cxx:535:5 > Application::Execute() vcl/source/app/svapp.cxx:471:9 > desktop::Desktop::DoExecute() desktop/source/app/app.cxx:1284:5 > desktop::Desktop::Main() desktop/source/app/app.cxx:1609:17 > ImplSVMain() vcl/source/app/svmain.cxx:170:19 > SVMain() vcl/source/app/svmain.cxx:207:16 > soffice_main desktop/source/app/sofficemain.cxx:96:12 > sal_main desktop/source/app/main.c:48:15 > main desktop/source/app/main.c:47 ...whatever those hardcoded odd values used here, the code is the same ever since 84a3db80b4fd66c6854b3135b5f69b61fd828e62 "initial import" Change-Id: I7f10034f97c52256d873b86a683c9204b944e704
2015-12-07DOC import: tokenize smart-tag bookmark offsets/sizesMiklos Vajna2-1/+30
Change-Id: I4a37651c3cf78ae818d1018abb6cc8e69ffd71b0
2015-12-07Let LIBO_INTERNAL_ONLY imply LOK_USE_UNSTABLE_APIMiklos Vajna2-2/+0
Change-Id: Ifbed5e534ba79d32b7188bb7fb7108338b6e124d
2015-12-05silence vcl release mouse warningCaolán McNamara1-1/+2
Change-Id: I12eb894d88c7b96f92e3d080ac3cf24ff2e025ec
2015-12-04fix SwClient crash in SwXNumberingRules/SwXTableRows/SwXTableColumnsNoel Grandin2-13/+57
was generated a crash when running 'make check' on my Linux box. These classes need to hold the SolarMutex when destructing their SwClient base class. Change-Id: I448ea00978d003aa37d8663d37b4edf9e54a6a56 Reviewed-on: https://gerrit.libreoffice.org/20391 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Miklos Vajna <vmiklos@collabora.co.uk>
2015-12-03tdf#34957 - don't push multi-page table to next page.Justin Luth1-2/+1
Removing an old hack that is no longer needed. A table marked as “keep with next” doesn't split and keeps with the following paragraph already. It doesn't require this old hack to function properly anymore. Preventing tables from splitting had forced large tables to always start on a new page. Removing the hack allows everything to lay out nicely now. There is a fairly large suite of tests in the bug report that prove the proper layout of various keep-with-next situations. Any document depending on the old behaviour can simply (and properly) insert a manual page-break before the table in order to force it to start on a new page. Change-Id: Ie2036c1a638009aaf95247574998077a1e55b5e5 Reviewed-on: https://gerrit.libreoffice.org/20216 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Justin Luth <justin_luth@sil.org>
2015-12-03Silence warning in --disable-assert-always-abort buildsStephan Bergmann1-1/+1
Change-Id: I5bdc1585be07357597c0527dc303643242f1d727
2015-12-03sw: fix DOCX export of embedded OOXML objectsMichael Stahl1-14/+19
OOXML embedded objects are converted to ODF during export, which prevents the export from working, as it expects a stream, and ODF uses a storage. There is already a unit test in testEmbeddedXlsx, but it wrongly succeeds because the components necessary to convert from OOXML to ODF are missing in the test environment. Change-Id: Ib4df346e04ecfb54ec1a728535be876db921b884
2015-12-03sw: docx export: write something more specific for embedded PDFMichael Stahl1-0/+6
Doesn't really change anything, but looks nicer. Change-Id: I8f2dc41adaf22e11b1c15ba619ac00b6b72892fa
2015-12-03uno:Sequence->std::vector in SmartTagMgrNoel Grandin2-15/+8
Change-Id: I163f7d6c0f30ac2929df1cae202e695d21bb49fc
2015-12-03Resolves: tdf#94701 allow fully deleting illustration category in comboboxCaolán McNamara1-2/+2
Change-Id: Iaaefbe2311e61be3b9689c693481d149aa1355f5
2015-12-02DOCX export: handle <w:smartTag>Miklos Vajna1-0/+20
A Writer document can have multiple arbitrary RDF graphs, handle the following subset: - instead of handling all graphs, have a whitelist, look at the TSCP graph the DOCX importer creates - look for (paragraph, key, value) statements and export those Change-Id: I142c24fb4c8140bde5fc1efad2932886de167b90
2015-12-02sw: initial SwRDFHelperMiklos Vajna1-0/+51
The purpose of this class is to provide access to the subset of the RDF metadata that's interesting for core code and for internal filters. Change-Id: Ibecba302dd839b537a36b9f7a15f012c6ea26869
2015-12-02an empty string here seems no hardshipCaolán McNamara1-1/+0
Change-Id: I8c8589f6ff7a190556cc4aa016ae343a19378b18
2015-12-02loplugin:stringconcat: Also look through O[U]String ctorsStephan Bergmann6-81/+81
Change-Id: I4f07c7c61d324a85f9f5dee0f25a7358facebd41
2015-12-02tdf#94043 RTF filter: implement column separator handlingMiklos Vajna1-0/+3
Change-Id: I9d74642156d7bb79577671bae24346c75178c5c7
2015-12-02Remove some chained appendsWillian Briotto1-8/+8
Change-Id: I552432d7352e4ae4d6b0ef8fb72a6533407b46e4 Reviewed-on: https://gerrit.libreoffice.org/20124 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noelgrandin@gmail.com>
2015-12-01tdf#88443:percent value fixedOliver Specht1-1/+1
Change-Id: I221f07b930fa1f152b9bf379aa966c02b936abb2
2015-12-01tdf#88443: set relative width to objects with captions except formulasOliver Specht1-1/+13
a fix to aoo issue 51453 switched off relative with to all objects with captions to solve a problem related to formulas now all objects with captions get relative width except math formulas Change-Id: I39ccc292ff156c4c94a7a898a6a0602c72bbdd26 Reviewed-on: https://gerrit.libreoffice.org/20320 Reviewed-by: Oliver Specht <oliver.specht@cib.de> Tested-by: Oliver Specht <oliver.specht@cib.de>
2015-11-30Move uses of SwFrame pointer-to-member after definition of class SwFrameStephan Bergmann1-92/+91
...to avoid trouble with MSVC's pointer-to-member model, where the details of a pointer-to-member depend on details of the pointed-to class type. Change-Id: Id5b3be1696794d23fbad96f047d114e27395b134
2015-11-30loplugin:unusedfieldsNoel Grandin4-22/+1
Change-Id: Icac4ac1a2614e72bc9ff070819533e09eeb1a864
2015-11-30loplugin:unusedfieldsNoel Grandin2-33/+9
Change-Id: Ife94d488ead512abc6d137a0df74298bac67185d
2015-11-29our little MSVC cant read C++11 proper and has special needs instead ...Bjoern Michaelsen1-18/+19
Change-Id: Ibc5ed9406679f469a7d4855f08f1a8c23c7239ef
2015-11-29use a range template for the frame,page,pseudo translationsBjoern Michaelsen1-25/+9
Change-Id: I50698023c006025bad4ae5d9a632c20b8f897006
2015-11-29use the entry vector for lcl_TranslateIndex dispatchBjoern Michaelsen1-57/+69
Change-Id: I4a8361821b9a5af2a59ad29684ee243d2f4591ed
2015-11-29remove copy patsaBjoern Michaelsen1-7/+1
Change-Id: I753786b6d3e92f0ebd609cc4430887fd7e2c2f81
2015-11-29use entries to create stylesBjoern Michaelsen1-33/+23
Change-Id: Ie68277b2ca9f4a82d048c7b74ab6705e8ca164b2
2015-11-29use the entry vector for lcl_GetCountOrName dispatchBjoern Michaelsen1-32/+17
- since the "entries" gain virtual functions now, it might make sense to make the entries proper classes. Lets see. Change-Id: I9ffae682869bc7560ee108c120efe6b65ea6c82f
2015-11-29tdf#38835: use singleton instead of staticBjoern Michaelsen1-21/+37
Change-Id: Id200dd245043537d288e30118debe2b338cf1774
2015-11-29keep a reference to the static entry data for the familyBjoern Michaelsen1-50/+53
Change-Id: I9171202fb5c6e32016550243a027001e5c910c3c
2015-11-29use Families instead of the generic 'Container'Bjoern Michaelsen1-4/+4
Change-Id: I009002621a5481b91e14a215237278d56d742579
2015-11-29typo: m_nRedId => m_nResIdBjoern Michaelsen1-4/+4
Change-Id: I0659155b19870117e97f691aa4fdceee8f2d4c08
2015-11-29clean up and reduce indent levelsBjoern Michaelsen1-8/+6
Change-Id: I5aa38475eff213620b29e89a0df0833c95207a91
2015-11-29add ranges for pages, frames, numsBjoern Michaelsen1-13/+13
Change-Id: Id3c0f39b076bd3908d3ac4154e72ee14ca3963ae
2015-11-29make GetCountOrName a private member to reduce argsBjoern Michaelsen1-10/+11
Change-Id: I72430f032d032f825034ec00d662ceaaa6a4dc62
2015-11-29consolidate range voodooBjoern Michaelsen1-49/+41
Change-Id: I76c64f15cd94ea281e44ddd488bc7eb7abc1575d
2015-11-29inline trivial functionsBjoern Michaelsen1-75/+45
Change-Id: I00a75c846ca86dc05f42211c700561c066f85586
2015-11-29SwXStyleFamily=>sw::XStyleFamilyBjoern Michaelsen1-79/+86
Change-Id: I334c4db5113902668d6967719c65ba403e9dde65
2015-11-29SwXStyleFamily has no need to be in a headerBjoern Michaelsen1-0/+53
Change-Id: I2bc38e870377bd4355b373e1fee0a3fd95866793