LibreOffice Module sc (master) 1
|
#include <inputwin.hxx>
Public Member Functions | |
ScTextWnd (ScTextWndGroup &rParent, ScTabViewShell *pViewSh) | |
virtual void | SetDrawingArea (weld::DrawingArea *pDrawingArea) override |
virtual | ~ScTextWnd () override |
virtual void | SetTextString (const OUString &rString) override |
virtual const OUString & | GetTextString () const override |
bool | IsInputActive () override |
virtual EditView * | GetEditView () const override |
virtual bool | HasEditView () const override |
const OutputDevice & | GetEditViewDevice () const |
virtual void | MakeDialogEditView () override |
virtual void | StartEditEngine () override |
virtual void | StopEditEngine (bool bAll) override |
virtual void | TextGrabFocus () override |
virtual void | StyleUpdated () override |
virtual void | EditViewScrollStateChange () override |
virtual void | SetFormulaMode (bool bSet) override |
virtual css::uno::Reference< css::accessibility::XAccessible > | CreateAccessible () override |
virtual void | InsertAccessibleTextData (ScAccessibleEditLineTextData &rTextData) override |
virtual void | RemoveAccessibleTextData (ScAccessibleEditLineTextData &rTextData) override |
virtual void | Resize () override |
int | GetPixelHeightForLines (tools::Long nLines) |
int | GetEditEngTxtHeight () const |
virtual tools::Long | GetNumLines () const override |
void | SetNumLines (tools::Long nLines) |
tools::Long | GetLastNumExpandedLines () const |
void | SetLastNumExpandedLines (tools::Long nLastExpandedLines) |
void | DoScroll () |
DECL_LINK (ModifyHdl, LinkParamNone *, void) | |
DECL_LINK (EditStatusHdl, EditStatus &, void) | |
Public Member Functions inherited from WeldEditView | |
WeldEditView () | |
virtual void | SetDrawingArea (weld::DrawingArea *pDrawingArea) override |
virtual int | GetSurroundingText (OUString &rSurrounding) override |
virtual bool | DeleteSurroundingText (const Selection &rRange) override |
void | SetText (const OUString &rStr) |
OUString | GetText () const |
virtual FactoryFunction | GetUITestFactory () const override |
void | SetModifyHdl (const Link< LinkParamNone *, void > &rLink) |
virtual EditView * | GetEditView () const |
virtual EditEngine * | GetEditEngine () const |
bool | HasSelection () const |
void | Delete () |
void | Cut () |
void | Copy () |
void | Paste () |
virtual | ~WeldEditView () override |
virtual void | Paint (vcl::RenderContext &rRenderContext, const tools::Rectangle &rRect) override |
virtual bool | MouseMove (const MouseEvent &rMEvt) override |
virtual bool | MouseButtonDown (const MouseEvent &rMEvt) override |
virtual bool | MouseButtonUp (const MouseEvent &rMEvt) override |
virtual bool | KeyInput (const KeyEvent &rKEvt) override |
virtual bool | Command (const CommandEvent &rCEvt) override |
virtual bool | CanFocus () const |
virtual void | GetFocus () override |
virtual void | LoseFocus () override |
virtual void | Resize () override |
virtual css::uno::Reference< css::datatransfer::clipboard::XClipboard > | GetClipboard () const override |
virtual css::uno::Reference< css::datatransfer::dnd::XDropTarget > | GetDropTarget () override |
bool | GetAcceptsTab () const |
void | SetAcceptsTab (bool bAcceptsTab) |
Public Member Functions inherited from ScTextWndBase | |
virtual void | InsertAccessibleTextData (ScAccessibleEditLineTextData &rTextData)=0 |
virtual void | RemoveAccessibleTextData (ScAccessibleEditLineTextData &rTextData)=0 |
virtual void | SetTextString (const OUString &rString)=0 |
virtual const OUString & | GetTextString () const =0 |
virtual void | StartEditEngine ()=0 |
virtual void | StopEditEngine (bool bAll)=0 |
virtual EditView * | GetEditView () const =0 |
virtual bool | HasEditView () const =0 |
virtual void | MakeDialogEditView ()=0 |
virtual void | SetFormulaMode (bool bSet)=0 |
virtual bool | IsInputActive ()=0 |
virtual void | TextGrabFocus ()=0 |
virtual tools::Long | GetNumLines () const =0 |
virtual | ~ScTextWndBase () |
Protected Member Functions | |
virtual void | Paint (vcl::RenderContext &rRenderContext, const tools::Rectangle &rRect) override |
virtual bool | MouseMove (const MouseEvent &rMEvt) override |
virtual bool | MouseButtonDown (const MouseEvent &rMEvt) override |
virtual bool | MouseButtonUp (const MouseEvent &rMEvt) override |
virtual bool | Command (const CommandEvent &rCEvt) override |
virtual bool | KeyInput (const KeyEvent &rKEvt) override |
virtual bool | CanFocus () const override |
virtual void | GetFocus () override |
virtual bool | StartDrag () override |
Protected Member Functions inherited from WeldEditView | |
virtual void | makeEditEngine () |
void | InitAccessible () |
void | DoPaint (vcl::RenderContext &rRenderContext, const tools::Rectangle &rRect) |
virtual css::uno::Reference< css::accessibility::XAccessible > | CreateAccessible () override |
virtual void | EditViewInvalidate (const tools::Rectangle &rRect) override |
virtual void | EditViewSelectionChange () override |
virtual OutputDevice & | EditViewOutputDevice () const override |
virtual Point | EditViewPointerPosPixel () const override |
virtual void | EditViewInputContext (const InputContext &rInputContext) override |
virtual void | EditViewCursorRect (const tools::Rectangle &rRect, int nExtTextInputWidth) override |
virtual weld::Widget * | EditViewPopupParent () const override |
Private Types | |
typedef ::std::vector< ScAccessibleEditLineTextData * > | AccTextDataVector |
Private Member Functions | |
void | ImplInitSettings () |
void | UpdateAutoCorrFlag () |
void | SetScrollBarRange () |
void | InitEditEngine () |
void | UpdateFocus () |
Private Attributes | |
rtl::Reference< svt::OStringTransferable > | m_xHelper |
rtl::Reference< ScAccessibleEditObject > | pAcc |
OUString | aString |
vcl::Font | aTextFont |
AccTextDataVector | maAccTextDatas |
bool | bIsRTL |
bool | bIsInsertMode |
bool | bFormulaMode |
bool | bInputMode |
ScTabViewShell * | mpViewShell |
ScTextWndGroup & | mrGroupBar |
tools::Long | mnLastExpandedLines |
bool | mbInvalidate |
Additional Inherited Members | |
Protected Attributes inherited from WeldEditView | |
bool | m_bAcceptsTab |
css::uno::Reference< css::datatransfer::dnd::XDropTarget > | m_xDropTarget |
std::unique_ptr< EditEngine > | m_xEditEngine |
std::unique_ptr< EditView > | m_xEditView |
rtl::Reference< WeldEditAccessible > | m_xAccessible |
Definition at line 65 of file inputwin.hxx.
|
private |
Definition at line 142 of file inputwin.hxx.
ScTextWnd::ScTextWnd | ( | ScTextWndGroup & | rParent, |
ScTabViewShell * | pViewSh | ||
) |
Definition at line 1659 of file inputwin.cxx.
|
overridevirtual |
Definition at line 1671 of file inputwin.cxx.
References maAccTextDatas.
|
overrideprotectedvirtual |
Reimplemented from WeldEditView.
Definition at line 1683 of file inputwin.cxx.
References SC_MOD.
Referenced by UpdateFocus().
|
overrideprotectedvirtual |
Detect if dragged with Move or forbid Drag&Move somehow
Reimplemented from WeldEditView.
Definition at line 1738 of file inputwin.cxx.
References bFormulaMode, bInputMode, ScInputHandler::CancelHandler(), SfxViewFrame::Current(), SfxDispatcher::ExecutePopup(), ScViewData::GetActivePart(), ScTabViewShell::GetActiveViewShell(), SfxViewFrame::GetBindings(), CommandEvent::GetCommand(), SfxViewFrame::GetDispatcher(), CommandEvent::GetEventData(), ScModule::GetInputHdl(), CommandEvent::GetMousePosPixel(), ScTextWndGroup::GetVclParent(), ScViewData::GetView(), ScTabView::GetViewData(), ScViewData::HasEditView(), Size::Height(), ScInputHandler::InputCommand(), SfxBindings::Invalidate(), comphelper::LibreOfficeKit::isActive(), CommandEvent::IsMouseEvent(), WeldEditView::m_xEditView, mrGroupBar, SC_MOD, ScModule::SetInEditCommand(), ScTabView::ShowCursor(), StartEditEngine(), TextGrabFocus(), UpdateFocus(), Size::Width(), Point::X(), and Point::Y().
|
overridevirtual |
ScTextWnd::DECL_LINK | ( | EditStatusHdl | , |
EditStatus & | , | ||
void | |||
) |
ScTextWnd::DECL_LINK | ( | ModifyHdl | , |
LinkParamNone * | , | ||
void | |||
) |
void ScTextWnd::DoScroll | ( | ) |
Definition at line 1465 of file inputwin.cxx.
References ScTextWndGroup::GetScrollWin(), WeldEditView::m_xEditView, mrGroupBar, and weld::ScrolledWindow::vadjustment_get_value().
Referenced by SetTextString().
|
overridevirtual |
Definition at line 1935 of file inputwin.cxx.
References SetScrollBarRange().
int ScTextWnd::GetEditEngTxtHeight | ( | ) | const |
Definition at line 1431 of file inputwin.cxx.
References WeldEditView::m_xEditView.
Referenced by SetScrollBarRange().
|
overridevirtual |
Reimplemented from WeldEditView.
Definition at line 1368 of file inputwin.cxx.
References InitEditEngine(), and WeldEditView::m_xEditView.
Referenced by ScAccessibleEditLineTextData::GetEditViewForwarder(), ScAccessibleEditLineTextData::GetTextForwarder(), Paint(), ScAccessibleEditLineTextData::ResetEditMode(), and ScAccessibleEditLineTextData::~ScAccessibleEditLineTextData().
const OutputDevice & ScTextWnd::GetEditViewDevice | ( | ) | const |
Definition at line 1377 of file inputwin.cxx.
References WeldEditView::EditViewOutputDevice().
|
overrideprotectedvirtual |
Reimplemented from WeldEditView.
Definition at line 1902 of file inputwin.cxx.
References ScTabViewShell::GetActiveViewShell(), WeldEditView::GetFocus(), and ScTabViewShell::SetFormShellAtTop().
|
inline |
Definition at line 109 of file inputwin.hxx.
References mnLastExpandedLines.
|
overridevirtual |
Implements ScTextWndBase.
Definition at line 1388 of file inputwin.cxx.
References ScViewData::GetFormulaBarLines(), ScTabView::GetViewData(), and mpViewShell.
Referenced by SetTextString().
int ScTextWnd::GetPixelHeightForLines | ( | tools::Long | nLines | ) |
Definition at line 1382 of file inputwin.cxx.
References OutputDevice::GetTextHeight(), and OutputDevice::LogicToPixel().
Referenced by SetDrawingArea().
|
overridevirtual |
Implements ScTextWndBase.
Definition at line 2110 of file inputwin.cxx.
References aString.
Referenced by ScAccessibleEditLineTextData::GetTextForwarder(), and ScAccessibleEditLineTextData::TextChanged().
|
overridevirtual |
Implements ScTextWndBase.
Definition at line 1375 of file inputwin.cxx.
References WeldEditView::m_xEditView.
Referenced by ScAccessibleEditLineTextData::GetEditViewForwarder(), ScAccessibleEditLineTextData::GetTextForwarder(), ScAccessibleEditLineTextData::ResetEditMode(), and ScAccessibleEditLineTextData::~ScAccessibleEditLineTextData().
|
private |
Definition at line 2175 of file inputwin.cxx.
References aTextFont, bIsRTL, AllSettings::GetLayoutRTL(), Application::GetSettings(), AllSettings::GetStyleSettings(), StyleSettings::GetWindowColor(), StyleSettings::GetWindowTextColor(), vcl::Font::SetColor(), and vcl::Font::SetFillColor().
Referenced by StyleUpdated().
|
private |
Test if it's the right InputHdl?
Definition at line 1558 of file inputwin.cxx.
References aString, aTextFont, bIsInsertMode, bIsRTL, EditEngine::CreatePool(), EE_APPEND, EE_PARA_ASIANCJKSPACING(), get(), ScViewData::GetDocShell(), ScDocShell::GetDocument(), ScViewData::GetDocument(), ScDocument::GetEditPool(), ScDocument::GetEnginePool(), Application::GetSettings(), ScDocument::GetStringScriptType(), AllSettings::GetStyleSettings(), ScInputHandler::GetTextAndFields(), ScTabView::GetViewData(), StyleSettings::GetWindowColor(), comphelper::LibreOfficeKit::isActive(), lcl_ExtendEditFontAttribs(), lcl_ModifyRTLDefaults(), lcl_ModifyRTLVisArea(), LINK, WeldEditView::m_xEditEngine, WeldEditView::m_xEditView, maAccTextDatas, ScEditUtil::ModifyDelimiters(), mpViewShell, n, pAcc, Resize(), SC_MOD, ScResId(), EditEngine::SetFontInfoInItemSet(), UpdateAutoCorrFlag(), and Size::Width().
Referenced by GetEditView(), and StartEditEngine().
|
overridevirtual |
Implements ScTextWndBase.
Definition at line 2246 of file inputwin.cxx.
References maAccTextDatas.
Referenced by ScAccessibleEditLineTextData::ScAccessibleEditLineTextData().
|
overridevirtual |
Implements ScTextWndBase.
Definition at line 2115 of file inputwin.cxx.
Referenced by ScAccessibleEditLineTextData::GetEditViewForwarder().
|
overrideprotectedvirtual |
Reimplemented from WeldEditView.
Definition at line 1887 of file inputwin.cxx.
References bInputMode, ScTabViewShell::GetActiveViewShell(), SC_MOD, and ScTabViewShell::SfxKeyInput().
|
overridevirtual |
Implements ScTextWndBase.
Definition at line 2120 of file inputwin.cxx.
References aTextFont, bIsRTL, EditEngine::CreatePool(), EE_APPEND, get(), ScTabViewShell::GetActiveViewShell(), ScViewData::GetDocument(), ScDocument::GetEditPool(), ScDocument::GetEnginePool(), Application::GetSettings(), AllSettings::GetStyleSettings(), ScTabView::GetViewData(), StyleSettings::GetWindowColor(), comphelper::LibreOfficeKit::isActive(), lcl_ExtendEditFontAttribs(), lcl_ModifyRTLDefaults(), lcl_ModifyRTLVisArea(), WeldEditView::m_xEditEngine, WeldEditView::m_xEditView, maAccTextDatas, mpViewShell, pAcc, Resize(), ScResId(), EditEngine::SetFontInfoInItemSet(), and THESIZE.
|
overrideprotectedvirtual |
Reimplemented from WeldEditView.
Definition at line 1698 of file inputwin.cxx.
References DND_ACTION_COPY, DND_ACTION_NONE, MouseEvent::GetPosPixel(), WeldEditView::m_xEditView, m_xHelper, WeldEditView::MouseButtonDown(), and UpdateFocus().
|
overrideprotectedvirtual |
Reimplemented from WeldEditView.
Definition at line 1721 of file inputwin.cxx.
References MouseSettings::GetMiddleButtonAction(), AllSettings::GetMouseSettings(), Application::GetSettings(), MouseEvent::IsMiddle(), WeldEditView::m_xEditView, WeldEditView::MouseButtonUp(), and SC_MOD.
|
overrideprotectedvirtual |
Reimplemented from WeldEditView.
Definition at line 1678 of file inputwin.cxx.
References WeldEditView::m_xEditView.
|
overrideprotectedvirtual |
Reimplemented from WeldEditView.
Definition at line 1336 of file inputwin.cxx.
References GetEditView(), OutputDevice::GetMapMode(), Application::GetSettings(), AllSettings::GetStyleSettings(), StyleSettings::GetWindowColor(), comphelper::LibreOfficeKit::isActive(), OutputDevice::LogicToLogic(), WeldEditView::m_xEditEngine, mbInvalidate, WeldEditView::Paint(), OutputDevice::SetBackground(), and OutputDevice::SetMapMode().
|
overridevirtual |
Implements ScTextWndBase.
Definition at line 2253 of file inputwin.cxx.
References maAccTextDatas.
Referenced by ScAccessibleEditLineTextData::Dispose(), and ScAccessibleEditLineTextData::~ScAccessibleEditLineTextData().
|
overridevirtual |
Reimplemented from WeldEditView.
Definition at line 1406 of file inputwin.cxx.
References tools::Rectangle::GetHeight(), WeldEditView::m_xEditEngine, WeldEditView::m_xEditView, OutputDevice::PixelToLogic(), weld::CustomWidgetController::Resize(), SetScrollBarRange(), and Size::Width().
Referenced by InitEditEngine(), MakeDialogEditView(), and SetNumLines().
|
overridevirtual |
Reimplemented from WeldEditView.
Definition at line 2189 of file inputwin.cxx.
References aTextFont, COL_BLACK(), DND_ACTION_COPY, weld::DrawingArea::get_ref_device(), StyleSettings::GetAppFont(), OutputDevice::GetFont(), vcl::Font::GetFontSize(), GetPixelHeightForLines(), Application::GetSettings(), AllSettings::GetStyleSettings(), StyleSettings::GetWindowColor(), StyleSettings::GetWindowTextColor(), gnBorderHeight, gnBorderWidth, Size::Height(), m_xHelper, OutputDevice::PixelToLogic(), weld::DrawingArea::set_cursor(), weld::Widget::set_margin_bottom(), weld::Widget::set_margin_end(), weld::Widget::set_margin_start(), weld::Widget::set_margin_top(), weld::Widget::set_size_request(), OutputDevice::SetBackground(), vcl::Font::SetColor(), weld::CustomWidgetController::SetDrawingArea(), vcl::Font::SetFillColor(), OutputDevice::SetFont(), vcl::Font::SetFontSize(), OutputDevice::SetLineColor(), OutputDevice::SetMapMode(), weld::SetPointFont(), vcl::Font::SetTransparent(), vcl::Font::SetWeight(), WEIGHT_NORMAL, and Size::Width().
|
overridevirtual |
Implements ScTextWndBase.
Definition at line 1910 of file inputwin.cxx.
References bFormulaMode, and UpdateAutoCorrFlag().
|
inline |
Definition at line 110 of file inputwin.hxx.
References mnLastExpandedLines.
void ScTextWnd::SetNumLines | ( | tools::Long | nLines | ) |
Definition at line 1394 of file inputwin.cxx.
References ScViewData::GetFormulaBarLines(), ScTabView::GetViewData(), mnLastExpandedLines, mpViewShell, Resize(), and ScViewData::SetFormulaBarLines().
|
private |
Definition at line 1436 of file inputwin.cxx.
References GetEditEngTxtHeight(), OutputDevice::GetOutputSize(), ScTextWndGroup::GetScrollWin(), Size::Height(), WeldEditView::m_xEditView, mrGroupBar, and weld::ScrolledWindow::vadjustment_configure().
Referenced by EditViewScrollStateChange(), Resize(), and SetTextString().
|
overridevirtual |
Implements ScTextWndBase.
Definition at line 2024 of file inputwin.cxx.
References aString, bInputMode, bIsRTL, SfxObjectShell::Current(), SfxViewShell::Current(), DoScroll(), findFirstNonMatchingChar(), GetNumLines(), ScDocument::GetStringScriptType(), Height, comphelper::LibreOfficeKit::isActive(), ScInputHandler::LOKSendFormulabarUpdate(), WeldEditView::m_xEditEngine, WeldEditView::m_xEditView, maAccTextDatas, mbInvalidate, SetScrollBarRange(), and Point::X().
|
overrideprotectedvirtual |
Definition at line 1875 of file inputwin.cxx.
References WeldEditView::m_xEditEngine, WeldEditView::m_xEditView, and m_xHelper.
|
overridevirtual |
Implements ScTextWndBase.
Definition at line 1478 of file inputwin.cxx.
References SfxObjectShell::Current(), SfxViewFrame::Current(), SfxViewFrame::GetBindings(), ScTabViewShell::GetInputHandler(), InitEditEngine(), SfxBindings::Invalidate(), SfxObjectShell::IsInModalMode(), WeldEditView::m_xEditEngine, WeldEditView::m_xEditView, mpViewShell, SC_INPUT_TOP, and ScInputHandler::SetMode().
Referenced by Command(), ScAccessibleEditLineTextData::GetEditViewForwarder(), and UpdateFocus().
|
overridevirtual |
Implements ScTextWndBase.
Definition at line 1962 of file inputwin.cxx.
References aString, bIsInsertMode, SfxViewFrame::Current(), SfxViewFrame::GetBindings(), ScTabViewShell::GetInputHandler(), ScModule::InputSelection(), SfxBindings::Invalidate(), comphelper::LibreOfficeKit::isActive(), ScInputHandler::IsEditMode(), WeldEditView::m_xEditEngine, WeldEditView::m_xEditView, maAccTextDatas, mpViewShell, SC_INPUT_TABLE, SC_MOD, ScInputHandler::SendReferenceMarks(), and ScInputHandler::SetMode().
|
overridevirtual |
Definition at line 2262 of file inputwin.cxx.
References ImplInitSettings().
|
overridevirtual |
Implements ScTextWndBase.
Definition at line 2268 of file inputwin.cxx.
References GrabFocus.
Referenced by Command(), and UpdateFocus().
|
private |
Definition at line 1919 of file inputwin.cxx.
References bFormulaMode, and WeldEditView::m_xEditEngine.
Referenced by InitEditEngine(), and SetFormulaMode().
|
private |
Definition at line 1688 of file inputwin.cxx.
References CanFocus(), StartEditEngine(), and TextGrabFocus().
Referenced by Command(), and MouseButtonDown().
|
private |
Definition at line 146 of file inputwin.hxx.
Referenced by GetTextString(), InitEditEngine(), SetTextString(), and StopEditEngine().
|
private |
Definition at line 147 of file inputwin.hxx.
Referenced by ImplInitSettings(), InitEditEngine(), MakeDialogEditView(), and SetDrawingArea().
|
private |
Definition at line 151 of file inputwin.hxx.
Referenced by Command(), SetFormulaMode(), and UpdateAutoCorrFlag().
|
private |
Definition at line 155 of file inputwin.hxx.
Referenced by Command(), KeyInput(), and SetTextString().
|
private |
Definition at line 150 of file inputwin.hxx.
Referenced by InitEditEngine(), and StopEditEngine().
|
private |
Definition at line 149 of file inputwin.hxx.
Referenced by ImplInitSettings(), InitEditEngine(), MakeDialogEditView(), and SetTextString().
|
private |
Definition at line 140 of file inputwin.hxx.
Referenced by MouseButtonDown(), SetDrawingArea(), and StartDrag().
|
private |
Definition at line 148 of file inputwin.hxx.
Referenced by InitEditEngine(), InsertAccessibleTextData(), MakeDialogEditView(), RemoveAccessibleTextData(), SetTextString(), StopEditEngine(), and ~ScTextWnd().
|
private |
Definition at line 160 of file inputwin.hxx.
Referenced by Paint(), and SetTextString().
|
private |
Definition at line 159 of file inputwin.hxx.
Referenced by GetLastNumExpandedLines(), SetLastNumExpandedLines(), and SetNumLines().
|
private |
Definition at line 157 of file inputwin.hxx.
Referenced by GetNumLines(), InitEditEngine(), MakeDialogEditView(), SetNumLines(), StartEditEngine(), and StopEditEngine().
|
private |
Definition at line 158 of file inputwin.hxx.
Referenced by Command(), DoScroll(), and SetScrollBarRange().
|
private |
Definition at line 144 of file inputwin.hxx.
Referenced by CreateAccessible(), InitEditEngine(), and MakeDialogEditView().