24#include <bitmaps.hlst>
32#include <com/sun/star/script/XLibraryContainerPassword.hpp>
33#include <com/sun/star/script/XLibraryContainer2.hpp>
34#include <com/sun/star/frame/XController.hpp>
40#include <sfx2/sfxsids.hrc>
48#include <com/sun/star/uno/XComponentContext.hpp>
61 sal_uInt16 nDepth = m_xBasicBox->get_iter_depth(rEntry);
66 const OUString& aLibName( aDesc.
GetLibName() );
69 if ( !( ( xModLibContainer.is() && xModLibContainer->hasByName( aLibName ) && xModLibContainer->isLibraryReadOnly( aLibName ) ) ||
70 ( xDlgLibContainer.is() && xDlgLibContainer->hasByName( aLibName ) && xDlgLibContainer->isLibraryReadOnly( aLibName ) ) ) )
83 OUString sNewText = rIterString.second;
88 VclMessageType::Warning, VclButtonsType::Ok,
IDEResId(RID_STR_BADSBXNAME)));
93 OUString aCurText(m_xBasicBox->get_text(rEntry));
94 if ( aCurText == sNewText )
103 const OUString& aLibName( aDesc.
GetLibName() );
118 pDispatcher->ExecuteList( SID_BASICIDE_SBXRENAMED,
119 SfxCallMode::SYNCHRON, { &aSbxItem });
123 m_xBasicBox->set_text(rEntry, sNewText);
124 m_xBasicBox->set_cursor(rEntry);
125 m_xBasicBox->unselect(rEntry);
126 m_xBasicBox->select(rEntry);
134 OUString
const& rSourceLibName,
136 OUString
const& rDestLibName,
137 std::u16string_view rDlgName
147 if( !xSourceMgr.is() )
149 bool bSourceLocalized = xSourceMgr->getLocales().hasElements();
156 bool bDestLocalized = xDestMgr->getLocales().hasElements();
158 if( !bSourceLocalized && !bDestLocalized )
164 (
"com.sun.star.awt.UnoControlDialogModel", xContext ), UNO_QUERY );
168 if( !xDialogModel.is() )
171 if( bSourceLocalized && bDestLocalized )
175 else if( bSourceLocalized )
179 else if( bDestLocalized )
204 : GenericDialogController(pParent,
"modules/BasicIDE/ui/organizedialog.ui",
"OrganizeDialog")
205 , m_xTabCtrl(m_xBuilder->weld_notebook(
"tabcontrol"))
208 , m_xLibPage(new
LibPage(m_xTabCtrl->get_page(
"libraries"), this))
222 ActivatePageHdl(sPage);
225 pDispatcher->Execute( SID_BASICIDE_STOREALLMODULESOURCES );
230 if (rPage ==
"modules")
231 m_xModulePage->ActivatePage();
232 else if (rPage ==
"dialogs")
233 m_xDialogPage->ActivatePage();
234 else if (rPage ==
"libraries")
235 m_xLibPage->ActivatePage();
244 , m_xBuilder(
Application::CreateBuilder(pParent, rUIFile))
274 std::unique_ptr<weld::TreeIter> xEntry(pSource->
make_iterator());
285 const OUString& aLibName( aDesc.
GetLibName() );
289 if ( !( ( xModLibContainer.is() && xModLibContainer->hasByName( aLibName ) && xModLibContainer->isLibraryReadOnly( aLibName ) ) ||
290 ( xDlgLibContainer.is() && xDlgLibContainer->hasByName( aLibName ) && xDlgLibContainer->isLibraryReadOnly( aLibName ) ) ) )
293 bool bAllowMove =
true;
294 if ( xDlgLibContainer.is() && xDlgLibContainer->hasByName( aLibName ) )
300 if( xSourceMgr.is() )
301 bAllowMove = ( xSourceMgr->getLocales().getLength() == 0 );
319 std::unique_ptr<weld::TreeIter> xEntry(rWidget.
make_iterator());
324 bool bValid = nDepth != 0;
326 std::unique_ptr<weld::TreeIter> xSelected(pSource->
make_iterator());
327 bool bSelected = pSource->
get_selected(xSelected.get());
330 else if (nDepth == 1)
332 std::unique_ptr<weld::TreeIter> xSelParent(pSource->
make_iterator(xSelected.get()));
336 else if (nDepth == 2)
338 std::unique_ptr<weld::TreeIter> xParent(pSource->
make_iterator(xEntry.get()));
339 std::unique_ptr<weld::TreeIter> xSelParent(pSource->
make_iterator(xSelected.get()));
346 if ( bValid && ( nDepth > 0 ) )
350 const OUString& aSourceName = aSourceDesc.
GetName();
356 const OUString& aDestLibName = aDestDesc.
GetLibName();
360 if ( xModLibContainer.is() && xModLibContainer->hasByName( aDestLibName ) )
362 if ( !xModLibContainer->isLibraryLoaded( aDestLibName ) )
365 if ( xModLibContainer->isLibraryReadOnly( aDestLibName ) )
369 if ( xPasswd.is() && xPasswd->isLibraryPasswordProtected( aDestLibName ) && !xPasswd->isLibraryPasswordVerified( aDestLibName ) )
375 if ( xDlgLibContainer.is() && xDlgLibContainer->hasByName( aDestLibName ) )
377 if ( !xDlgLibContainer->isLibraryLoaded( aDestLibName ) )
380 if ( xDlgLibContainer->isLibraryReadOnly( aDestLibName ) )
402 int nNewChildPos = 0;
414 const OUString& aDestLibName( aDestDesc.
GetLibName() );
422 const OUString& aSourceLibName( aSourceDesc.
GetLibName() );
423 const OUString& aSourceName( aSourceDesc.
GetName() );
432 if ( rSourceDoc != rDestDoc || aSourceLibName != aDestLibName )
438 SfxCallMode::SYNCHRON, { &aSbxItem });
448 if ( rSourceDoc.
getModule( aSourceLibName, aSourceName, aModule ) )
451 if ( rSourceDoc.
removeModule( aSourceLibName, aSourceName ) )
456 if ( rDestDoc.
insertModule( aDestLibName, aSourceName, aModule ) )
465 if ( rSourceDoc.
getDialog( aSourceLibName, aSourceName, xISP ) )
468 aSourceLibName, rDestDoc, aDestLibName, aSourceName );
471 if (
RemoveDialog(rSourceDoc, aSourceLibName, aSourceName))
476 if ( rDestDoc.
insertDialog( aDestLibName, aSourceName, xISP ) )
482 catch (
const uno::Exception& )
495 if ( rSourceDoc.
getModule( aSourceLibName, aSourceName, aModule ) )
498 if ( rDestDoc.
insertModule( aDestLibName, aSourceName, aModule ) )
506 if ( rSourceDoc.
getDialog( aSourceLibName, aSourceName, xISP ) )
509 aSourceLibName, rDestDoc, aDestLibName, aSourceName );
512 if ( rDestDoc.
insertDialog( aDestLibName, aSourceName, xISP ) )
526 if (
Entry* pEntry = bMove ?
nullptr : weld::fromId<Entry*>(
sId))
529 std::unique_ptr<Entry> xNewUserData(std::make_unique<Entry>(*pEntry));
546 if ( rSourceDoc != rDestDoc || aSourceLibName != aDestLibName )
551 pDispatcher->
ExecuteList( SID_BASICIDE_SBXINSERTED,
552 SfxCallMode::SYNCHRON, { &aSbxItem });
559 : DropTargetHelper(rTreeView.get_widget().get_drop_target())
567 :
OrganizePage(pParent,
"modules/BasicIDE/ui/" + rName.toAsciiLowerCase() +
".ui",
569 , m_xBasicBox(new
SbTreeListBox(m_xBuilder->weld_tree_view(
"library"), pDialog->getDialog()))
570 , m_xEditButton(m_xBuilder->weld_button(
"edit"))
571 , m_xNewModButton(m_xBuilder->weld_button(
"newmodule"))
572 , m_xNewDlgButton(m_xBuilder->weld_button(
"newdialog"))
573 , m_xDelButton(m_xBuilder->weld_button(
"delete"))
625 std::unique_ptr<weld::TreeIter> xCurEntry(
m_xBasicBox->make_iterator());
630 const OUString& aLibName( aDesc.
GetLibName() );
632 bool bVBAEnabled =
aDocument.isInVBAMode();
635 sal_uInt16 nDepth = xCurEntry ?
m_xBasicBox->get_iter_depth(*xCurEntry) : 0;
653 if ( ( xModLibContainer.is() && xModLibContainer->hasByName( aLibName ) && xModLibContainer->isLibraryReadOnly( aLibName ) ) ||
654 ( xDlgLibContainer.is() && xDlgLibContainer->hasByName( aLibName ) && xDlgLibContainer->isLibraryReadOnly( aLibName ) ) )
689 if (&rButton == m_xEditButton.get())
692 SfxRequest aRequest( SID_BASICIDE_APPEAR, SfxCallMode::SYNCHRON, aArgs );
697 std::unique_ptr<weld::TreeIter> xCurEntry(m_xBasicBox->make_iterator());
698 if (!m_xBasicBox->get_cursor(xCurEntry.get()))
700 if (m_xBasicBox->get_iter_depth(*xCurEntry) >= 2)
702 EntryDescriptor aDesc = m_xBasicBox->GetEntryDescriptor(xCurEntry.get());
705 OUString aModName( aDesc.
GetName() );
709 aModName = aModName.getToken( 0,
' ' );
714 SfxCallMode::SYNCHRON, { &aSbxItem });
719 DBG_ASSERT( m_xBasicBox->get_iter_depth(*xCurEntry) == 1,
"No LibEntry?!" );
721 std::unique_ptr<weld::TreeIter> xParentEntry(m_xBasicBox->make_iterator(xCurEntry.get()));
722 if (m_xBasicBox->iter_parent(*xParentEntry))
724 DocumentEntry* pDocumentEntry = weld::fromId<DocumentEntry*>(m_xBasicBox->get_id(*xParentEntry));
729 OUString aLibName(m_xBasicBox->get_text(*xCurEntry));
730 SfxStringItem aLibNameItem( SID_BASICIDE_ARG_LIBNAME, aLibName );
734 SfxCallMode::ASYNCHRON, { &aDocItem, &aLibNameItem });
739 else if (&rButton == m_xNewModButton.get())
741 else if (&rButton == m_xNewDlgButton.get())
743 else if (&rButton == m_xDelButton.get())
751 std::unique_ptr<weld::TreeIter> xCurEntry(
m_xBasicBox->make_iterator());
757 if ( rLibName.isEmpty() )
758 rLibName =
"Standard" ;
760 DBG_ASSERT( rDocument.
isAlive(),
"ObjectPage::GetSelection: no or dead ScriptDocument in the selection!" );
766 OUString aLibName( rLibName );
768 if ( xModLibContainer.is() && xModLibContainer->hasByName( aLibName ) && !xModLibContainer->isLibraryLoaded( aLibName ) )
772 if ( xPasswd.is() && xPasswd->isLibraryPasswordProtected( aLibName ) && !xPasswd->isLibraryPasswordVerified( aLibName ) )
780 xModLibContainer->loadLibrary( aLibName );
785 if ( xDlgLibContainer.is() && xDlgLibContainer->hasByName( aLibName ) && !xDlgLibContainer->isLibraryLoaded( aLibName ) )
789 xDlgLibContainer->loadLibrary( aLibName );
827 if (aDlgName.isEmpty())
830 if (
aDocument.hasDialog( aLibName, aDlgName ) )
833 VclMessageType::Warning, VclButtonsType::Ok,
IDEResId(RID_STR_SBXNAMEALLREADYUSED2)));
839 if ( !
aDocument.createDialog( aLibName, aDlgName, xISP ) )
845 pDispatcher->ExecuteList( SID_BASICIDE_SBXINSERTED,
846 SfxCallMode::SYNCHRON, { &aSbxItem });
849 std::unique_ptr<weld::TreeIter> xIter(
m_xBasicBox->make_iterator());
856 DBG_ASSERT( bLibEntry,
"LibEntry not found!" );
861 std::unique_ptr<weld::TreeIter> xSubRootEntry(
m_xBasicBox->make_iterator(xIter.get()));
865 m_xBasicBox->AddEntry(aDlgName, RID_BMP_DIALOG, xSubRootEntry.get(),
false,
867 assert(xIter &&
"Insert entry failed!");
878 std::unique_ptr<weld::TreeIter> xCurEntry(
m_xBasicBox->make_iterator());
889 const OUString& aLibName( aDesc.
GetLibName() );
903 pDispatcher->ExecuteList( SID_BASICIDE_SBXDELETED,
904 SfxCallMode::SYNCHRON, { &aSbxItem });
909 bool bSuccess =
false;
918 catch (
const container::NoSuchElementException& )
930 : GenericDialogController(pParent,
"modules/BasicIDE/ui/importlibdialog.ui",
"ImportLibDialog")
931 , m_xStorageFrame(m_xBuilder->weld_frame(
"storageframe"))
932 , m_xLibBox(m_xBuilder->weld_tree_view(
"entries"))
933 , m_xReferenceBox(m_xBuilder->weld_check_button(
"ref"))
934 , m_xReplaceBox(m_xBuilder->weld_check_button(
"replace"))
955 SbTreeListBox& rBasicBox,
const OUString& rLibName,
const OUString& _aModName,
bool bMain )
957 OSL_ENSURE( rDocument.
isAlive(),
"createModImpl: invalid document!" );
963 OUString aLibName( rLibName );
964 if ( aLibName.isEmpty() )
965 aLibName =
"Standard" ;
967 OUString aModName = _aModName;
968 if ( aModName.isEmpty() )
981 OUString sModuleCode;
983 if( rDocument.
hasModule( aLibName, aModName ) )
985 rDocument.
createModule( aLibName, aModName, bMain, sModuleCode );
993 pDispatcher->ExecuteList( SID_BASICIDE_SBXINSERTED,
994 SfxCallMode::SYNCHRON, { &aSbxItem });
997 std::unique_ptr<weld::TreeIter> xIter(rBasicBox.
make_iterator());
998 bool bRootEntry = rBasicBox.
FindRootEntry(rDocument, eLocation, *xIter);
1004 DBG_ASSERT( bLibEntry,
"LibEntry not found!" );
1009 std::unique_ptr<weld::TreeIter> xSubRootEntry(rBasicBox.
make_iterator(xIter.get()));
1013 std::unique_ptr<weld::TreeIter> xLibSubEntry(rBasicBox.
make_iterator(xIter.get()));
1023 std::unique_ptr<weld::TreeIter> xEntry(rBasicBox.
make_iterator(xSubRootEntry.get()));
1027 rBasicBox.
AddEntry(aModName, RID_BMP_MODULE, xSubRootEntry.get(),
false,
1031 rBasicBox.
select(*xEntry);
1035 catch (
const container::ElementExistException& )
1038 VclMessageType::Warning, VclButtonsType::Ok,
IDEResId(RID_STR_SBXNAMEALLREADYUSED2)));
1041 catch (
const container::NoSuchElementException& )
SfxApplication * SfxGetpApp()
static weld::MessageDialog * CreateMessageDialog(weld::Widget *pParent, VclMessageType eMessageType, VclButtonsType eButtonType, const OUString &rPrimaryMessage, const ILibreOfficeKitNotifier *pNotifier=nullptr)
StarBASIC * GetLib(sal_uInt16 nLib) const
const SfxPoolItem * ExecuteList(sal_uInt16 nSlot, SfxCallMode nCall, std::initializer_list< SfxPoolItem const * > args, std::initializer_list< SfxPoolItem const * > internalargs=std::initializer_list< SfxPoolItem const * >())
const SfxPoolItem * ExecuteSlot(SfxRequest &rReq, const SfxInterface *pIF=nullptr)
constexpr tools::Long Height() const
constexpr tools::Long Width() const
SbModule * FindModule(std::u16string_view)
ScriptDocument const & GetDocument() const
LibraryLocation GetLocation() const
ScriptDocument const & GetDocument() const
EntryType GetType() const
const OUString & GetLibName() const
const OUString & GetName() const
const OUString & GetLibSubName() const
std::unique_ptr< weld::TreeView > m_xLibBox
void SetStorageName(std::u16string_view rName)
std::unique_ptr< weld::Frame > m_xStorageFrame
virtual ~LibDialog() override
LibDialog(weld::Window *pParent)
static css::uno::Reference< css::resource::XStringResourceManager > getStringResourceFromDialogLibrary(const css::uno::Reference< css::container::XNameContainer > &xDialogLib)
static void resetResourceForDialog(const css::uno::Reference< css::container::XNameContainer > &xDialogModel, const css::uno::Reference< css::resource::XStringResourceManager > &xStringResourceManager)
static void setResourceIDsForDialog(const css::uno::Reference< css::container::XNameContainer > &xDialogModel, const css::uno::Reference< css::resource::XStringResourceManager > &xStringResourceManager)
static void copyResourceForDroppedDialog(const css::uno::Reference< css::container::XNameContainer > &xDialogModel, std::u16string_view aDialogName, const css::uno::Reference< css::resource::XStringResourceManager > &xStringResourceManager, const css::uno::Reference< css::resource::XStringResourceResolver > &xSourceStringResolver)
OUString GetObjectName() const
void SetObjectName(const OUString &rName)
bool GetSelection(ScriptDocument &rDocument, OUString &rLibName)
std::unique_ptr< SbTreeListBox > m_xBasicBox
std::unique_ptr< SbTreeListBoxDropTarget > m_xDropTarget
std::unique_ptr< weld::Button > m_xNewModButton
ObjectPage(weld::Container *pParent, const OUString &rName, BrowseMode nMode, OrganizeDialog *pDialog)
virtual void ActivatePage() override
std::unique_ptr< weld::Button > m_xNewDlgButton
std::unique_ptr< weld::Button > m_xDelButton
virtual ~ObjectPage() override
std::unique_ptr< weld::Button > m_xEditButton
std::unique_ptr< ObjectPage > m_xDialogPage
std::unique_ptr< weld::Notebook > m_xTabCtrl
std::unique_ptr< ObjectPage > m_xModulePage
OrganizeDialog(weld::Window *pParent, const css::uno::Reference< css::frame::XFrame > &xDocFrame, sal_Int16 tabId)
virtual ~OrganizeDialog() override
void SetCurrentEntry(const css::uno::Reference< css::frame::XFrame > &xDocFrame)
OrganizeDialog * m_pDialog
OrganizePage(weld::Container *pParent, const OUString &rUIFile, const OUString &rName, OrganizeDialog *pDialog)
void NotifyCopyingMoving(const weld::TreeIter &rTarget, bool bMove)
SbTreeListBoxDropTarget(SbTreeListBox &rTreeView)
virtual sal_Int8 AcceptDrop(const AcceptDropEvent &rEvt) override
virtual sal_Int8 ExecuteDrop(const ExecuteDropEvent &rEvt) override
SbTreeListBox & m_rTreeView
EntryDescriptor GetEntryDescriptor(const weld::TreeIter *pEntry)
bool FindRootEntry(const ScriptDocument &rDocument, LibraryLocation eLocation, weld::TreeIter &rIter)
OUString get_text(const weld::TreeIter &rIter) const
OUString get_id(const weld::TreeIter &rIter) const
int get_iter_index_in_parent(const weld::TreeIter &rIter) const
bool get_selected(weld::TreeIter *pIter) const
void set_cursor(const weld::TreeIter &rIter)
bool get_row_expanded(const weld::TreeIter &rIter) const
void remove(const weld::TreeIter &rIter)
std::unique_ptr< weld::TreeIter > make_iterator(const weld::TreeIter *pIter=nullptr) const
void select(const weld::TreeIter &rIter)
weld::TreeView & get_widget()
void AddEntry(const OUString &rText, const OUString &rImage, const weld::TreeIter *pParent, bool bChildrenOnDemand, std::unique_ptr< Entry > &&rUserData, weld::TreeIter *pRet=nullptr)
bool FindEntry(std::u16string_view rText, EntryType eType, weld::TreeIter &rIter)
static ItemType ConvertType(EntryType eType)
int get_iter_depth(const weld::TreeIter &rIter) const
void expand_row(const weld::TreeIter &rIter)
bool iter_parent(weld::TreeIter &rIter) const
void copy_iterator(const weld::TreeIter &rSource, weld::TreeIter &rDest) const
encapsulates a document which contains Basic scripts and dialogs
css::uno::Reference< css::container::XNameContainer > getOrCreateLibrary(LibraryContainerType _eType, const OUString &_rLibName) const
creates a script or dialog library in the document, or returns an existing one
bool getModule(const OUString &_rLibName, const OUString &_rModName, OUString &_rModuleSource) const
retrieves a module's source
bool insertModule(const OUString &_rLibName, const OUString &_rModName, const OUString &_rModuleCode) const
inserts a given piece as code as module
css::uno::Reference< css::script::XLibraryContainer > getLibraryContainer(LibraryContainerType _eType) const
returns the Basic or Dialog library container of the document
bool removeModule(const OUString &_rLibName, const OUString &_rModuleName) const
removes a given script module from the document
css::uno::Reference< css::frame::XModel > getDocumentOrNull() const
returns the UNO component representing the document which the instance operates on
bool getDialog(const OUString &_rLibName, const OUString &_rDialogName, css::uno::Reference< css::io::XInputStreamProvider > &_out_rDialogProvider) const
retrieves a dialog
css::uno::Reference< css::frame::XModel > getDocument() const
returns the UNO component representing the document which the instance operates on
bool isDocument() const
determines whether the ScriptDocument instance operates on a real document, as opposed to the whole a...
BasicManager * getBasicManager() const
returns the BasicManager associated with this instance
static const ScriptDocument & getApplicationScriptDocument()
returns a reference to a shared ScriptDocument instance which operates on the application-wide script...
css::uno::Reference< css::container::XNameContainer > getLibrary(LibraryContainerType _eType, const OUString &_rLibName, bool _bLoadLibrary) const
returns a script or dialog library given by name
bool createModule(const OUString &_rLibName, const OUString &_rModName, bool _bCreateMain, OUString &_out_rNewModuleCode) const
creates a module with the given name in the given library
bool isAlive() const
determines whether the document instance is alive
bool insertDialog(const OUString &_rLibName, const OUString &_rDialogName, const css::uno::Reference< css::io::XInputStreamProvider > &_rDialogProvider) const
inserts a given dialog into a given library
bool hasDialog(const OUString &_rLibName, const OUString &_rDialogName) const
determines whether a dialog with the given name exists in the given library
bool hasModule(const OUString &_rLibName, const OUString &_rModName) const
determines whether a module with the given name exists in the given library
LibraryLocation getLibraryLocation(const OUString &_rLibName) const
returns the location of a library given by name
bool isValid() const
determines whether the document is actually able to contain Basic/Dialog libraries
OUString createObjectName(LibraryContainerType _eType, const OUString &_rLibName) const
retrieves a name for a newly to be created module or dialog
static void CopyDialogResources(css::uno::Reference< css::io::XInputStreamProvider > &io_xISP, const ScriptDocument &rSourceDoc, const OUString &rSourceLibName, const ScriptDocument &rDestDoc, const OUString &rDestLibName, std::u16string_view rDlgName)
void response(int nResponse)
virtual Dialog * getDialog() override
virtual std::unique_ptr< TreeIter > make_iterator(const TreeIter *pOrig=nullptr) const=0
virtual bool get_selected(TreeIter *pIter) const=0
virtual void insert(const TreeIter *pParent, int pos, const OUString *pStr, const OUString *pId, const OUString *pIconName, VirtualDevice *pImageSurface, bool bChildrenOnDemand, TreeIter *pRet)=0
virtual TreeView * get_drag_source() const=0
virtual bool get_dest_row_at_pos(const Point &rPos, weld::TreeIter *pResult, bool bDnDMode, bool bAutoScroll=true)=0
virtual void set_image(int row, const OUString &rImage, int col=-1)=0
virtual bool iter_parent(TreeIter &rIter) const=0
virtual int iter_compare(const TreeIter &a, const TreeIter &b) const=0
virtual int get_iter_depth(const TreeIter &rIter) const=0
#define DBG_ASSERT(sCon, aError)
#define DBG_UNHANDLED_EXCEPTION(...)
#define LINK(Instance, Class, Member)
bool IsValidSbxName(std::u16string_view rName)
bool QueryPassword(weld::Widget *pDialogParent, const Reference< script::XLibraryContainer > &xLibContainer, const OUString &rLibName, OUString &rPassword, bool bRepeat, bool bNewTitle)
@ LIBRARY_LOCATION_DOCUMENT
bool RemoveDialog(const ScriptDocument &rDocument, const OUString &rLibName, const OUString &rDlgName)
SbModule * createModImpl(weld::Window *pWin, const ScriptDocument &rDocument, SbTreeListBox &rBasicBox, const OUString &rLibName, const OUString &_aModName, bool bMain)
SfxDispatcher * GetDispatcher()
void MarkDocumentModified(const ScriptDocument &rDocument)
IMPL_LINK(AccessibleDialogWindow, WindowEventListener, VclWindowEvent &, rEvent, void)
bool RenameDialog(weld::Widget *pErrorParent, ScriptDocument const &rDocument, OUString const &rLibName, OUString const &rOldName, OUString const &rNewName)
renames a dialog
bool RenameModule(weld::Widget *pErrorParent, const ScriptDocument &rDocument, const OUString &rLibName, const OUString &rOldName, const OUString &rNewName)
renames a module
bool QueryDelDialog(std::u16string_view rName, weld::Widget *pParent)
@ OBJ_TYPE_NORMAL_MODULES
IMPL_LINK_NOARG(EditorWindow, SetSourceInBasicHdl, void *, void)
OUString IDEResId(TranslateId aId)
bool QueryDelModule(std::u16string_view rName, weld::Widget *pParent)
Reference< XComponentContext > getProcessComponentContext()
OUString toId(const void *pValue)
Reference< XNameAccess > m_xContainer
Reference< XController > xController
Reference< XModel > xModel
#define DND_ACTION_COPYMOVE