Add factory function SwXTextTable::CreateXTextTable that uses
the WeakReference SwFrmFmt::m_wXObject to cache the instance in
a thread-safe way.
Change-Id: I88939e2586d104193184eea43b466f2cbeb71d6f
The problem is that Modify() may be called from ~SwFmt while another
thread is waiting on SolarMutex in the ~SwXFrame or derived class
destructor, so the ref-count is 0 and the uno::Reference in Modify()
will cause a double-free.
Since ClientModify() does some re-parenting of listeners, it is at first
glance better to call Modify() in this situation (although it is quite
possible that it actually doesn't matter), so don't avoid the call in
~SwFrmFmt by adding a SwClient* member there, but put a weak reference
to itself into SwXFrame so it can check if it's still alive...
Change-Id: I492bb8a8557af5fc725fdb7f8b21013e0886f63b
Replace SwXFrames::GetObject() with factory functions that use the
WeakReference SwFrmFmt::m_wXObject to cache the instance in a thread-safe
way.
Change-Id: If56e4d7f95cb4f2e112139f228fb832ae9bf7d76
If the position is the same as the body text anchor position, don't
delete the node. Probably something should have inserted more nodes
between StartApo() and StopApo().
Change-Id: I41110a47d840e764f6d2a24e43bf6938b1282972
In SwWW8ImplReader::StopApo() the JoinNext() may delete the node that
pPaM points to. It is probably a bad idea to use a non-correctable
SwPaM in an import filter; sadly this filter uses the core API directly,
let's use a SwUnoCrsr which should avoid the problem.
Change-Id: I120a481883b7ecbfa59cc998153fec0e6b9bafe5
Since these constants are bitfield flags, we define some methods to make
working with them reasonably type safe.
Move the definitions to outdevstate.hxx, since we need the values there,
and that appears to be the "root most" header file.
Also dump TEXT_LAYOUT_BIDI_LTR constant, since it means the same thing
as TEXT_LAYOUT_DEFAULT (ie. 0), and leaving it in causes people to write
weird code thinking that it's a real flag.
Change-Id: Iddab86cd6c78181ceb8caa48e77e1f5a8e526343
Reviewed-on: https://gerrit.libreoffice.org/10676
Reviewed-by: Caolán McNamara <caolanm@redhat.com>
Tested-by: Caolán McNamara <caolanm@redhat.com>
like GtkViewport so that the scrolled region will be clipped,
which also has the side-effect of stopping glade clobbering
the non view-port scrolled .ui files on editing
Change-Id: Ic64174b3a35b77f068e0085cdc7721aeb33f1d82
Nearing the "do what I mean" principle..
* key date on time cell => current date + time of cell => date+time formatted cell
* unless time cell was empty or 00:00 time => current date => date formatted cell
* key date on date+time cell => current date + 00:00 time => date+time formatted cell
* unless date was current date => current date => date formatted cell
* key date on other cell => current date => date formatted cell
* key time on date cell => date of cell + current time => date+time formatted cell
* unless date cell was empty => current time => time formatted cell
* key time on date+time cell => current time => time formatted cell
* unless cell was empty => current date+time => date+time formatted cell
* key time on other cell => current time => time formatted cell
Change-Id: I5025e0d0ea9ac83d1b9e0b130262df6db4693a56
in the absence of any other constructors, the compiler will automatically
generate a public no-arg constructor
Change-Id: I70eca507cd8e16e33580b3398d41d70690bc2909