20#include <config_features.h>
22#include <com/sun/star/presentation/XPresentation2.hpp>
23#include <com/sun/star/form/FormButtonType.hpp>
24#include <com/sun/star/beans/XPropertySet.hpp>
27#include <com/sun/star/beans/PropertyValue.hpp>
28#include <com/sun/star/uno/Any.hxx>
30#include <LibreOfficeKit/LibreOfficeKitEnums.h>
51#include <svx/svxids.hrc>
63#include <osl/diagnose.h>
75#include <fuconrec.hxx>
77#include <fuconuno.hxx>
80#include <fuconarc.hxx>
88#include <drawview.hxx>
117 OUString aInputString;
119 if(SfxItemState::SET == pSet->
GetItemState(SID_ATTR_CHAR))
120 aInputString = pSet->
Get(SID_ATTR_CHAR).GetValue();
122 if(aInputString.isEmpty())
129 for(sal_Int32
a(0);
a < aInputString.getLength();
a++)
133 KeyEvent aKeyEvent(aInputString[
a], aKeyCode);
148 sal_uInt16 nSId = rReq.
GetSlot();
151 ( nSId == SID_TEXTEDIT || nSId == SID_ATTR_CHAR || nSId == SID_TEXT_FITTOSIZE ||
152 nSId == SID_ATTR_CHAR_VERTICAL || nSId == SID_TEXT_FITTOSIZE_VERTICAL ) )
156 FuText* pFuText =
dynamic_cast< FuText*
>( xFunc.get() );
161 xFunc->ReceiveRequest( rReq );
175 sal_uInt16 nOldSId = 0;
176 bool bPermanent =
false;
183 if( (nSId == SID_FORMATPAINTBRUSH) && (
GetCurrentFunction()->GetSlotID() == SID_TEXTEDIT) )
196 if ( nSId != SID_TEXTEDIT && nSId != SID_ATTR_CHAR && nSId != SID_TEXT_FITTOSIZE &&
197 nSId != SID_ATTR_CHAR_VERTICAL && nSId != SID_TEXT_FITTOSIZE_VERTICAL &&
198 nSId != SID_FORMATPAINTBRUSH &&
208 if (nOldSId == nSId ||
209 ((nOldSId == SID_TEXTEDIT || nOldSId == SID_ATTR_CHAR || nOldSId == SID_TEXT_FITTOSIZE ||
210 nOldSId == SID_ATTR_CHAR_VERTICAL || nOldSId == SID_TEXT_FITTOSIZE_VERTICAL) &&
211 (nSId == SID_TEXTEDIT || nSId == SID_ATTR_CHAR || nSId == SID_TEXT_FITTOSIZE ||
212 nSId == SID_ATTR_CHAR_VERTICAL || nSId == SID_TEXT_FITTOSIZE_VERTICAL )))
228 bool bCreateDirectly =
false;
234 case SID_ATTR_CHAR_VERTICAL:
235 case SID_TEXT_FITTOSIZE:
236 case SID_TEXT_FITTOSIZE_VERTICAL:
243 rBindings.
Invalidate( SID_ATTR_CHAR_VERTICAL );
245 rBindings.
Invalidate( SID_TEXT_FITTOSIZE_VERTICAL );
254 if (pArgs && pArgs->
HasItem(FN_PARAM_1))
259 case SID_FM_CREATE_CONTROL:
266 case SID_FM_CREATE_FIELDCONTROL:
269 DBG_ASSERT( pDescriptorItem,
"DrawViewShell::FuPermanent(SID_FM_CREATE_FIELDCONTROL): invalid request args!" );
286 Size aObjSize(pNewDBField->GetLogicRect().GetSize());
291 pNewDBField->SetLogicRect(aNewObjectRectangle);
301 case SID_OBJECT_SELECT:
302 case SID_OBJECT_ROTATE:
303 case SID_OBJECT_MIRROR:
304 case SID_OBJECT_CROP:
305 case SID_OBJECT_TRANSPARENCE:
306 case SID_OBJECT_GRADIENT:
307 case SID_OBJECT_SHEAR:
308 case SID_OBJECT_CROOK_ROTATE:
309 case SID_OBJECT_CROOK_SLANT:
310 case SID_OBJECT_CROOK_STRETCH:
311 case SID_CONVERT_TO_3D_LATHE:
313 sal_uInt16 nSlotId = rReq.
GetSlot();
316 if( nOldSId == nSlotId )
318 nSlotId = SID_OBJECT_SELECT;
322 if (nSlotId == SID_OBJECT_CROOK_ROTATE ||
323 nSlotId == SID_OBJECT_CROOK_SLANT ||
324 nSlotId == SID_OBJECT_CROOK_STRETCH)
326 if (
mpDrawView->GetMarkedObjectList().GetMarkCount() > 0 &&
332 VclMessageType::Info, VclButtonsType::Ok,
333 SdResId(STR_ACTION_NOTPOSSIBLE)));
339 VclMessageType::Question, VclButtonsType::YesNo,
340 SdResId(STR_ASK_FOR_CONVERT_TO_BEZIER)));
341 if (xQueryBox->run() ==
RET_YES )
350 else if (nSlotId == SID_OBJECT_SHEAR)
355 bool b3DObjMarked =
false;
357 while (
i < nMarkCnt && !b3DObjMarked)
369 if ( nMarkCnt > 0 && !b3DObjMarked &&
375 VclMessageType::Info, VclButtonsType::Ok,
376 SdResId(STR_ACTION_NOTPOSSIBLE)));
382 VclMessageType::Question, VclButtonsType::YesNo,
383 SdResId(STR_ASK_FOR_CONVERT_TO_BEZIER)));
384 if (xQueryBox->run() ==
RET_YES)
402 case SID_DRAW_MEASURELINE:
403 case SID_LINE_ARROW_START:
404 case SID_LINE_ARROW_END:
405 case SID_LINE_ARROWS:
406 case SID_LINE_ARROW_CIRCLE:
407 case SID_LINE_CIRCLE_ARROW:
408 case SID_LINE_ARROW_SQUARE:
409 case SID_LINE_SQUARE_ARROW:
412 case SID_DRAW_RECT_NOFILL:
413 case SID_DRAW_RECT_ROUND:
414 case SID_DRAW_RECT_ROUND_NOFILL:
415 case SID_DRAW_SQUARE:
416 case SID_DRAW_SQUARE_NOFILL:
417 case SID_DRAW_SQUARE_ROUND:
418 case SID_DRAW_SQUARE_ROUND_NOFILL:
419 case SID_DRAW_ELLIPSE:
420 case SID_DRAW_ELLIPSE_NOFILL:
421 case SID_DRAW_CIRCLE:
422 case SID_DRAW_CIRCLE_NOFILL:
423 case SID_DRAW_CAPTION:
424 case SID_DRAW_CAPTION_VERTICAL:
425 case SID_TOOL_CONNECTOR:
426 case SID_CONNECTOR_ARROW_START:
427 case SID_CONNECTOR_ARROW_END:
428 case SID_CONNECTOR_ARROWS:
429 case SID_CONNECTOR_CIRCLE_START:
430 case SID_CONNECTOR_CIRCLE_END:
431 case SID_CONNECTOR_CIRCLES:
432 case SID_CONNECTOR_LINE:
433 case SID_CONNECTOR_LINE_ARROW_START:
434 case SID_CONNECTOR_LINE_ARROW_END:
435 case SID_CONNECTOR_LINE_ARROWS:
436 case SID_CONNECTOR_LINE_CIRCLE_START:
437 case SID_CONNECTOR_LINE_CIRCLE_END:
438 case SID_CONNECTOR_LINE_CIRCLES:
439 case SID_CONNECTOR_CURVE:
440 case SID_CONNECTOR_CURVE_ARROW_START:
441 case SID_CONNECTOR_CURVE_ARROW_END:
442 case SID_CONNECTOR_CURVE_ARROWS:
443 case SID_CONNECTOR_CURVE_CIRCLE_START:
444 case SID_CONNECTOR_CURVE_CIRCLE_END:
445 case SID_CONNECTOR_CURVE_CIRCLES:
446 case SID_CONNECTOR_LINES:
447 case SID_CONNECTOR_LINES_ARROW_START:
448 case SID_CONNECTOR_LINES_ARROW_END:
449 case SID_CONNECTOR_LINES_ARROWS:
450 case SID_CONNECTOR_LINES_CIRCLE_START:
451 case SID_CONNECTOR_LINES_CIRCLE_END:
452 case SID_CONNECTOR_LINES_CIRCLES:
453 case SID_INSERT_SIGNATURELINE:
460 case SID_DRAW_POLYGON:
461 case SID_DRAW_POLYGON_NOFILL:
462 case SID_DRAW_XPOLYGON:
463 case SID_DRAW_XPOLYGON_NOFILL:
464 case SID_DRAW_FREELINE:
465 case SID_DRAW_FREELINE_NOFILL:
466 case SID_DRAW_BEZIER_FILL:
467 case SID_DRAW_BEZIER_NOFILL:
474 case SID_GLUE_EDITMODE:
476 if (nOldSId != SID_GLUE_EDITMODE)
490 case SID_DRAW_CIRCLEARC:
492 case SID_DRAW_PIE_NOFILL:
493 case SID_DRAW_CIRCLEPIE:
494 case SID_DRAW_CIRCLEPIE_NOFILL:
495 case SID_DRAW_ELLIPSECUT:
496 case SID_DRAW_ELLIPSECUT_NOFILL:
497 case SID_DRAW_CIRCLECUT:
498 case SID_DRAW_CIRCLECUT_NOFILL:
509 case SID_3D_HALF_SPHERE:
510 case SID_3D_CYLINDER:
519 case SID_DRAWTBX_CS_BASIC :
520 case SID_DRAWTBX_CS_SYMBOL :
521 case SID_DRAWTBX_CS_ARROW :
522 case SID_DRAWTBX_CS_FLOWCHART :
523 case SID_DRAWTBX_CS_CALLOUT :
524 case SID_DRAWTBX_CS_STAR :
525 case SID_DRAW_CS_ID :
532 if (pArgs && pArgs->
HasItem(FN_PARAM_1))
537 if ( nSId != SID_DRAW_CS_ID )
546 case SID_FORMATPAINTBRUSH:
557 case SID_ZOOM_PANNING:
601 if(!
GetView()->AreObjectsMarked())
608 if(
GetView()->AreObjectsMarked())
635 aPagePos.
AdjustX( -sal_Int32(nDefaultObjectSizeWidth / 2) );
636 aPagePos.
AdjustY( -sal_Int32(nDefaultObjectSizeHeight / 2) );
637 ::tools::Rectangle aNewObjectRectangle(aPagePos,
Size(nDefaultObjectSizeWidth, nDefaultObjectSizeHeight));
649 auto pObjTmp = pObj.get();
657 case SID_DRAW_CAPTION:
658 case SID_DRAW_CAPTION_VERTICAL:
663 ExecuteList(SID_TEXTEDIT, SfxCallMode::SYNCHRON |
664 SfxCallMode::RECORD, { &aItem });
677 bool bConsumed =
false;
684 std::vector<SdrObject*> aPresMarksToRemove;
694 aPresMarksToRemove.push_back(pObj);
698 for (
SdrObject* pObj : aPresMarksToRemove)
702 SdPage* pPage =
static_cast<SdPage*
>(pObj->getSdrPageFromSdrObject());
711 if (
mpDrawView->IsPresObjSelected(
false,
true,
false,
true))
714 VclMessageType::Info, VclButtonsType::Ok,
715 SdResId(STR_ACTION_NOTPOSSIBLE)));
726 bConsumed =
mpDrawView->getSmartTags().KeyInput( aKEvt );
742 (rReq.
GetSlot() != SID_PRESENTATION_END &&
743 rReq.
GetSlot() != SID_SIZE_PAGE))
751 sal_uInt16 nSId = rReq.
GetSlot();
755 case SID_CLEAR_UNDO_STACK:
762 case SID_PRESENTATION:
763 case SID_PRESENTATION_CURRENT_SLIDE:
764 case SID_REHEARSE_TIMINGS:
771 case SID_PRESENTATION_END:
779 case SID_BEZIER_EDIT:
797 case SID_OBJECT_CLOSE:
803 const bool bUndo =
mpDrawView->IsUndoEnabled();
810 mpDrawView->AddUndo(std::make_unique<SdrUndoGeoObj>(*pPathObj));
823 if (
mpDrawView->IsPresObjSelected(
false,
true,
false,
true) )
826 VclMessageType::Info, VclButtonsType::Ok,
827 SdResId(STR_ACTION_NOTPOSSIBLE)));
851 if (
mpDrawView->IsPresObjSelected(
false,
true,
false,
true) )
854 VclMessageType::Info, VclButtonsType::Ok,
855 SdResId(STR_ACTION_NOTPOSSIBLE)));
890 case SID_UNICODE_NOTATION_TOGGLE:
903 sal_Int32 nUtf16Pos=0;
904 while( (nUtf16Pos < sInput.getLength()) && (nUtf16Pos < aSel.
nEndPos) )
906 sInput.iterateCodePoints(&nUtf16Pos);
914 while( nUtf16Pos && aToggle.
AllowMoreInput( sInput[nUtf16Pos-1]) )
917 if( !sReplacement.isEmpty() )
920 mpDrawView->BegUndo(sStringToReplace +
"->"+ sReplacement);
931 case SID_PASTE_UNFORMATTED:
947 nAction,
false, SotClipboardFormatId::STRING);
955 case SID_CLIPBOARD_FORMAT_ITEMS:
968 if( nFormat != SotClipboardFormatId::NONE && aDataHelper.
GetTransferable().is() )
974 nAction,
false, nFormat ) )
978 if( ( aDataHelper.
HasFormat( SotClipboardFormatId::NETSCAPE_BOOKMARK ) &&
979 aDataHelper.
GetINetBookmark( SotClipboardFormatId::NETSCAPE_BOOKMARK, aINetBookmark ) ) ||
980 ( aDataHelper.
HasFormat( SotClipboardFormatId::FILEGRPDESCRIPTOR ) &&
981 aDataHelper.
GetINetBookmark( SotClipboardFormatId::FILEGRPDESCRIPTOR, aINetBookmark ) ) ||
982 ( aDataHelper.
HasFormat( SotClipboardFormatId::UNIFORMRESOURCELOCATOR ) &&
983 aDataHelper.
GetINetBookmark( SotClipboardFormatId::UNIFORMRESOURCELOCATOR, aINetBookmark ) ) )
1015 case SID_NOTES_MODE:
1016 case SID_SLIDE_MASTER_MODE:
1017 case SID_NOTES_MASTER_MODE:
1018 case SID_HANDOUT_MASTER_MODE:
1024 case SID_DRAWINGMODE:
1025 case SID_SLIDE_SORTER_MODE:
1026 case SID_OUTLINE_MODE:
1034 case SID_MASTERPAGE:
1038 ".uno:SlideMasterPage=true");
1072 case SID_CLOSE_MASTER_VIEW:
1077 ".uno:SlideMasterPage=false");
1094 SfxCallMode::ASYNCHRON);
1118 if(bOldHasRuler != bHasRuler)
1135 case SID_SIZE_PAGE_WIDTH:
1143 Point aPagePos(0, 0);
1149 if( rReq.
GetSlot() == SID_SIZE_PAGE )
1225 case SID_SIZE_VISAREA:
1244 case SID_SIZE_OPTIMAL:
1336 case SID_GLUE_INSERT_POINT:
1337 case SID_GLUE_PERCENT:
1338 case SID_GLUE_ESCDIR:
1339 case SID_GLUE_ESCDIR_LEFT:
1340 case SID_GLUE_ESCDIR_RIGHT:
1341 case SID_GLUE_ESCDIR_TOP:
1342 case SID_GLUE_ESCDIR_BOTTOM:
1343 case SID_GLUE_HORZALIGN_CENTER:
1344 case SID_GLUE_HORZALIGN_LEFT:
1345 case SID_GLUE_HORZALIGN_RIGHT:
1346 case SID_GLUE_VERTALIGN_CENTER:
1347 case SID_GLUE_VERTALIGN_TOP:
1348 case SID_GLUE_VERTALIGN_BOTTOM:
1360 case SID_AUTOSPELL_CHECK:
1379 nCntrl |= EEControlBits::ONLINESPELLING;
1391 case SID_TRANSLITERATE_SENTENCE_CASE:
1392 case SID_TRANSLITERATE_TITLE_CASE:
1393 case SID_TRANSLITERATE_TOGGLE_CASE:
1394 case SID_TRANSLITERATE_UPPER:
1395 case SID_TRANSLITERATE_LOWER:
1396 case SID_TRANSLITERATE_HALFWIDTH:
1397 case SID_TRANSLITERATE_FULLWIDTH:
1398 case SID_TRANSLITERATE_HIRAGANA:
1399 case SID_TRANSLITERATE_KATAKANA:
1408 case SID_TRANSLITERATE_SENTENCE_CASE:
1409 nType = TransliterationFlags::SENTENCE_CASE;
1411 case SID_TRANSLITERATE_TITLE_CASE:
1412 nType = TransliterationFlags::TITLE_CASE;
1414 case SID_TRANSLITERATE_TOGGLE_CASE:
1415 nType = TransliterationFlags::TOGGLE_CASE;
1417 case SID_TRANSLITERATE_UPPER:
1418 nType = TransliterationFlags::LOWERCASE_UPPERCASE;
1420 case SID_TRANSLITERATE_LOWER:
1421 nType = TransliterationFlags::UPPERCASE_LOWERCASE;
1423 case SID_TRANSLITERATE_HALFWIDTH:
1424 nType = TransliterationFlags::FULLWIDTH_HALFWIDTH;
1426 case SID_TRANSLITERATE_FULLWIDTH:
1427 nType = TransliterationFlags::HALFWIDTH_FULLWIDTH;
1429 case SID_TRANSLITERATE_HIRAGANA:
1430 nType = TransliterationFlags::KATAKANA_HIRAGANA;
1432 case SID_TRANSLITERATE_KATAKANA:
1433 nType = TransliterationFlags::HIRAGANA_KATAKANA;
1465 if( rReq.
GetSlot() != SID_TRANSLITERATE_ROTATE_CASE )
1482 const OUString& rTarget)
1500 pOutl->
Init( OutlinerMode::TextObject );
1503 SvxURLField aURLField(rURL, rText, SvxURLFormat::Repr);
1510 GetView()->getSdrModelFromSdrView(),
1523 if (aPos.
getX() - (aSize.
Width() / 2) >= 0)
1529 pRectObj->SetLogicRect(aLogicRect);
1530 pRectObj->SetOutlinerParaObject( std::move(pOutlParaObject) );
1532 pOutl->
Init( nOutlMode );
1537 const OUString& rTarget,
const Point* pPos)
1539 bool bNewObj =
true;
1544 if (
mpDrawView->GetMarkedObjectList().GetMarkCount() > 0)
1547 if( pMarkedObj )
try
1556 Reference< awt::XControlModel > xControlModel( pUnoCtrl->
GetUnoControlModel(), UNO_SET_THROW );
1557 Reference< beans::XPropertySet > xPropSet( xControlModel, UNO_QUERY_THROW );
1559 xPropSet->setPropertyValue(
"Label" ,
Any( rText ) );
1560 xPropSet->setPropertyValue(
"TargetURL" ,
Any( sTargetURL ) );
1563 xPropSet->setPropertyValue(
"TargetFrame" ,
Any(
rTarget ) );
1565 xPropSet->setPropertyValue(
"ButtonType" ,
Any( form::FormButtonType_URL ) );
1566#if HAVE_FEATURE_AVMEDIA
1569 xPropSet->setPropertyValue(
"DispatchURLInternal" ,
Any(
true ) );
1583 catch( uno::Exception& )
1595 GetView()->getSdrModelFromSdrView(),
1596 SdrInventor::FmForm,
1597 SdrObjKind::FormButton).get());
1600 Reference< awt::XControlModel > xControlModel( pUnoCtrl->GetUnoControlModel(), uno::UNO_SET_THROW );
1601 Reference< beans::XPropertySet > xPropSet( xControlModel, uno::UNO_QUERY_THROW );
1603 xPropSet->setPropertyValue(
"Label" ,
Any( rText ) );
1604 xPropSet->setPropertyValue(
"TargetURL" ,
Any( sTargetURL ) );
1607 xPropSet->setPropertyValue(
"TargetFrame" ,
Any(
rTarget ) );
1609 xPropSet->setPropertyValue(
"ButtonType" ,
Any( form::FormButtonType_URL ) );
1610#if HAVE_FEATURE_AVMEDIA
1612 xPropSet->setPropertyValue(
"DispatchURLInternal" ,
Any(
true ) );
1627 Size aSize(4000, 1000);
1638 nOptions |= SdrInsertFlags::DONTMARK;
1654namespace slideshowhelp
1659 if( !xPresentation.is() )
1663 if (SID_REHEARSE_TIMINGS == rReq.
GetSlot())
1664 xPresentation->rehearseTimings();
1670 xPresentation->start();
1676 else if (SID_PRESENTATION_CURRENT_SLIDE == rReq.
GetSlot())
1680 xPresentation->start();
1688 xPresentation->startWithArguments(
aArguments );
1696 Reference< XPresentation2 > xPresentation(
GetDoc()->getPresentation() );
1697 if(xPresentation.is() && xPresentation->isRunning())
1702 xPresentation->end();
static weld::MessageDialog * CreateMessageDialog(weld::Widget *pParent, VclMessageType eMessageType, VclButtonsType eButtonType, const OUString &rPrimaryMessage, const ILibreOfficeKitNotifier *pNotifier=nullptr)
sal_uInt32 GetValue() const
const OUString & GetDescription() const
const OUString & GetURL() const
void SetSelection(const ESelection &)
void InsertField(const SvxFieldItem &rFld)
void InsertText(const OUString &rNew, bool bSelect=false)
void TransliterateText(TransliterationFlags nTransliterationMode)
OUString GetSurroundingText() const
ESelection GetSelection() const
bool PostKeyEvent(const KeyEvent &rKEvt, vcl::Window const *pFrameWin=nullptr)
OutlinerMode GetOutlinerMode() const
void QuickInsertField(const SvxFieldItem &rFld, const ESelection &rSel)
std::optional< OutlinerParaObject > CreateParaObject(sal_Int32 nStartPara=0, sal_Int32 nParaCount=EE_PARA_ALL) const
bool SetUpdateLayout(bool bUpdate)
EEControlBits GetControlWord() const
void SetControlWord(EEControlBits nWord)
void Init(OutlinerMode nMode)
constexpr tools::Long Y() const
tools::Long AdjustY(tools::Long nVertMove)
tools::Long AdjustX(tools::Long nHorzMove)
constexpr tools::Long getX() const
constexpr tools::Long getY() const
TransliterationFlags getNextMode()
void SetBookmark(const OUString &rBookmark)
css::presentation::ClickAction meClickAction
Action at mouse click.
SAL_DLLPRIVATE const css::uno::Reference< css::presentation::XPresentation2 > & getPresentation() const
static SdAnimationInfo * GetShapeUserData(SdrObject &rObject, bool bCreate=false)
SAL_DLLPRIVATE const sd::PresentationSettings & getPresentationSettings() const
SAL_DLLPRIVATE void SetOnlineSpell(bool bIn)
SAL_DLLPRIVATE bool GetOnlineSpell() const
SdOutliner * GetInternalOutliner(bool bCreateOutliner=true)
void StopWorkStartupDelay()
bool IsRulerVisible() const
void SetRulerVisible(bool bOn)
sal_Int32 GetDefaultObjectSizeWidth() const
sal_Int32 GetDefaultObjectSizeHeight() const
void DestroyDefaultPresObj(PresObjKind eObjKind)
PresObjKind GetPresObjKind(SdrObject *pObj) const
bool InsertObjectAtView(SdrObject *pObj, SdrPageView &rPV, SdrInsertFlags nOptions=SdrInsertFlags::NONE)
size_t GetMarkCount() const
SdrMark * GetMark(size_t nNum) const
void UnmarkAllObj(SdrPageView const *pPV=nullptr)
bool MarkNextObj(bool bPrev=false)
SdrObject * GetMarkedSdrObj() const
const OutlinerView * GetTextEditOutlinerView() const
static rtl::Reference< SdrObject > MakeNewObject(SdrModel &rSdrModel, SdrInventor nInventor, SdrObjKind nObjIdentifier, const tools::Rectangle *pSnapRect=nullptr)
const tools::Rectangle & GetAllObjBoundRect() const
virtual SdrInventor GetObjInventor() const
virtual SdrObjKind GetObjIdentifier() const
SdrPage * getSdrPageFromSdrObject() const
SdrObjList * GetObjList() const
SdrPage * GetPage() const
virtual void MakeVisible(const tools::Rectangle &rRect, vcl::Window &rWin)
SdrPageView * GetSdrPageView() const
const css::uno::Reference< css::awt::XControlModel > & GetUnoControlModel() const
void Update(sal_uInt16 nId)
void Invalidate(sal_uInt16 nId)
const SfxPoolItem * Execute(sal_uInt16 nSlot, SfxCallMode nCall=SfxCallMode::SLOT, const SfxPoolItem **pArgs=nullptr, sal_uInt16 nModi=0, const SfxPoolItem **pInternalArgs=nullptr)
bool IsObjectInPlaceActive() const
bool HasItem(sal_uInt16 nWhich, const SfxPoolItem **ppItem=nullptr) const
SfxItemState GetItemState(sal_uInt16 nWhich, bool bSrchInParent=true, const SfxPoolItem **ppItem=nullptr) const
const SfxPoolItem & Get(sal_uInt16 nWhich, bool bSrchInParent=true) const
sal_uInt16 GetSlot() const
const SfxItemSet * GetArgs() const
void SetSlot(sal_uInt16 nNewSlot)
const T * GetArg(sal_uInt16 nSlotId) const
sal_uInt16 GetModifier() const
void Done(bool bRemove=false)
virtual void Invalidate(sal_uInt16 nId=0)
SfxViewShell * GetViewShell() const
const css::uno::Any & GetValue() const
SfxBindings & GetBindings()
SfxDispatcher * GetDispatcher()
virtual void libreOfficeKitViewCallback(int nType, const OString &pPayload) const override
SfxInPlaceClient * GetIPClient() const
constexpr tools::Long Height() const
void setWidth(tools::Long nWidth)
void setHeight(tools::Long nHeight)
constexpr tools::Long Width() const
void SetTargetFrame(const OUString &rFrm)
OUString ReplacementString()
bool AllowMoreInput(sal_Unicode uChar)
OUString StringToReplace()
static TransferableDataHelper CreateFromSystemClipboard(vcl::Window *pWindow)
bool HasFormat(SotClipboardFormatId nFormat) const
const css::uno::Reference< css::datatransfer::XTransferable > & GetTransferable() const
bool GetINetBookmark(SotClipboardFormatId nFormat, INetBookmark &rBmk) const
void SetStyleFamily(SfxStyleFamily nSF)
static void CheckLineTo(SfxRequest &rReq)
check if we have to draw a polyline
void FuPermanent(SfxRequest &rReq)
virtual SdPage * getCurrentPage() const override
inherited from sd::ViewShell
std::unique_ptr< DrawView > mpDrawView
virtual void SetZoomRect(const ::tools::Rectangle &rZoomRect) override
Set zoom rectangle for active window.
void FuSupport(SfxRequest &rReq)
bool IsLayerModeActive() const
void StopSlideShow()
Stop a running slide show.
void FuDeleteSelectedObjects()
virtual void Resize() override
Notify the view shell that its parent window has been resized.
VclPtr< TabControl > maTabControl
virtual void ChangeEditMode(EditMode eMode, bool bIsLayerModeActive)
Set status (enabled/disabled) of menu SfxSlots.
RotateTransliteration m_aRotateCase
void InsertURLButton(const OUString &rURL, const OUString &rText, const OUString &rTarget, const Point *pPos)
bool mbIsLayerModeActive
This flag controls whether the layer mode is active, i.e.
void FuSupportRotate(SfxRequest const &rReq)
void InsertURLField(const OUString &rURL, const OUString &rText, const OUString &rTarget)
bool SwitchPage(sal_uInt16 nPage, bool bAllowChangeFocus=true)
Switch to desired page.
::tools::Rectangle maMarkRect
virtual void ShowUIControls(bool bVisible) override
Show controls of the UI or hide them, depending on the given flag.
virtual void SetZoom(::tools::Long nZoom) override
set zoom factor
const ::tools::Rectangle & GetVisArea() const
static rtl::Reference< FuPoor > Create(ViewShell *pViewSh, ::sd::Window *pWin, ::sd::View *pView, SdDrawDocument *pDoc, SfxRequest &rReq, bool bPermanent)
static rtl::Reference< FuPoor > Create(ViewShell *pViewSh, ::sd::Window *pWin, ::sd::View *pView, SdDrawDocument *pDoc, SfxRequest &rReq, bool bPermanent)
static rtl::Reference< FuPoor > Create(ViewShell *pViewSh, ::sd::Window *pWin, ::sd::View *pView, SdDrawDocument *pDoc, SfxRequest &rReq, bool bPermanent)
static rtl::Reference< FuPoor > Create(ViewShell *pViewSh, ::sd::Window *pWin, ::sd::View *pView, SdDrawDocument *pDoc, SfxRequest &rReq, bool bPermanent)
static rtl::Reference< FuPoor > Create(ViewShell *pViewSh, ::sd::Window *pWin, ::sd::View *pView, SdDrawDocument *pDoc, SfxRequest &rReq, bool bPermanent)
static rtl::Reference< FuPoor > Create(ViewShell *pViewSh, ::sd::Window *pWin, ::sd::View *pView, SdDrawDocument *pDoc, SfxRequest &rReq, bool bPermanent)
void SetPermanent(bool bSet)
virtual void ReceiveRequest(SfxRequest &rReq) override
static rtl::Reference< FuPoor > Create(ViewShell *pViewSh, ::sd::Window *pWin, ::sd::View *pView, SdDrawDocument *pDoc, SfxRequest &rReq, bool bPermanent)
static rtl::Reference< FuPoor > Create(ViewShell *pViewSh, ::sd::Window *pWin, ::sd::View *pView, SdDrawDocument *pDoc, SfxRequest &rReq)
Base class for text functions.
static rtl::Reference< FuPoor > Create(ViewShell *pViewSh, ::sd::Window *pWin, ::sd::View *pView, SdDrawDocument *pDoc, SfxRequest &rReq)
static rtl::Reference< FuPoor > Create(ViewShell *pViewSh, ::sd::Window *pWin, ::sd::View *pView, SdDrawDocument *pDoc, SfxRequest &rReq)
static bool IsRunning(ViewShellBase const &rBase)
returns true if there is a running presentation for the given ViewShellBase
std::shared_ptr< ToolBarManager > const & GetToolBarManager() const
Local derivation of the SfxHint class that defines some hint ids that are used by the ViewShell class...
@ HINT_CHANGE_EDIT_MODE_END
@ HINT_CHANGE_EDIT_MODE_START
SD_DLLPUBLIC DrawDocShell * GetDocSh() const
const rtl::Reference< FuPoor > & GetCurrentFunction() const
void ImpSidUndo(SfxRequest &rReq)
SdDrawDocument * GetDoc() const
virtual void ShowUIControls(bool bVisible)
Show controls of the UI or hide them, depending on the given flag.
std::unique_ptr< ZoomList > mpZoomList
void SetRuler(bool bRuler)
Switch ruler on/off.
void InvalidateWindows()
Invalidate all split windows below the ?provided rectangle.
::sd::Window * GetActiveWindow() const
The active window is usually the mpContentWindow.
::sd::View * GetView() const
const rtl::Reference< FuPoor > & GetOldFunction() const
void SetOldFunction(const rtl::Reference< FuPoor > &xFunction)
SD_DLLPUBLIC weld::Window * GetFrameWeld() const
bool HasOldFunction() const
void ImpSidRedo(SfxRequest &rReq)
void SetCurrentFunction(const rtl::Reference< FuPoor > &xFunction)
SD_DLLPUBLIC ViewShellBase & GetViewShellBase() const
SD_DLLPUBLIC SfxViewFrame * GetViewFrame() const
bool HasCurrentFunction() const
virtual bool SdrBeginTextEdit(SdrObject *pObj, SdrPageView *pPV=nullptr, vcl::Window *pWin=nullptr, bool bIsNewObj=false, SdrOutliner *pGivenOutliner=nullptr, OutlinerView *pGivenOutlinerView=nullptr, bool bDontDeleteOutliner=false, bool bOnlyOneView=false, bool bGrabFocus=true) override
::tools::Long GetZoom() const
static ::std::shared_ptr< FrameworkHelper > Instance(ViewShellBase &rBase)
Return the FrameworkHelper object that is associated with the given ViewShellBase.
static void UnlockNotebookBar()
static void LockNotebookBar()
Point PixelToLogic(const Point &rDevicePt) const
void Invalidate(InvalidateFlags nFlags=InvalidateFlags::NONE)
#define DBG_ASSERT(sCon, aError)
constexpr TypedWhichId< SvxFieldItem > EE_FEATURE_FIELD(EE_FEATURE_NOTCONV+1)
Sequence< PropertyValue > aArguments
constexpr sal_uInt16 KEY_MOD1
constexpr sal_uInt16 KEY_DELETE
SVL_DLLPUBLIC Link< OUString *, bool > const & GetMaybeFileHdl()
css::beans::PropertyValue makePropertyValue(const OUString &rName, T &&rValue)
SD_DLLPUBLIC void ShowSlideShow(SfxRequest const &rReq, SdDrawDocument &rDoc)
static void ImpAddPrintableCharactersToTextEdit(SfxRequest const &rReq, ::sd::View *pView)
css::uno::Reference< css::linguistic2::XProofreadingIterator > get(css::uno::Reference< css::uno::XComponentContext > const &context)
OUString SdResId(TranslateId aId)
SVXCORE_DLLPUBLIC E3dObject * DynCastE3dObject(SdrObject *)
constexpr OUStringLiteral sUNO_LayerName_background_objects