Kaydet (Commit) 13a9727a authored tarafından Armin Le Grand's avatar Armin Le Grand Kaydeden (comit) Thorsten Behrens

screenshots: added more virtualization/abstraction

TabPabe Identification to UI-File names. Isolated some data
initialization constructs. Added more dialogs to dump. Should dump on
all systems now

Change-Id: I7ee07309e0bf88064f789c13bcbff93c17370f77
üst 3fb0839d
...@@ -204,8 +204,8 @@ public: ...@@ -204,8 +204,8 @@ public:
virtual FactoryFunction GetUITestFactory() const override; virtual FactoryFunction GetUITestFactory() const override;
// Screenshot interface // Screenshot interface
virtual std::vector<OUString> getAllPageUIXMLDescriptions() const override; virtual std::vector<OString> getAllPageUIXMLDescriptions() const override;
virtual void selectPageByUIXMLDescription(const OUString& rUIXMLDescription) override; virtual bool selectPageByUIXMLDescription(const OString& rUIXMLDescription) override;
}; };
namespace sfx { class ItemConnectionBase; } namespace sfx { class ItemConnectionBase; }
......
...@@ -35,8 +35,8 @@ public: ...@@ -35,8 +35,8 @@ public:
virtual short Execute() = 0; virtual short Execute() = 0;
// Screenshot interface // Screenshot interface
virtual std::vector<OUString> getAllPageUIXMLDescriptions() const; virtual std::vector<OString> getAllPageUIXMLDescriptions() const;
virtual void selectPageByUIXMLDescription(const OUString& rUIXMLDescription); virtual bool selectPageByUIXMLDescription(const OString& rUIXMLDescription);
virtual Bitmap createScreenshot() const; virtual Bitmap createScreenshot() const;
}; };
......
...@@ -110,6 +110,12 @@ public: ...@@ -110,6 +110,12 @@ public:
const css::uno::Reference<css::frame::XFrame>& getFrame() { return m_xFrame; } const css::uno::Reference<css::frame::XFrame>& getFrame() { return m_xFrame; }
/// return UI-File name (without '.ui')
const OString& getUIFile() const
{
return m_sHelpRoot;
}
private: private:
VclBuilder(const VclBuilder&) = delete; VclBuilder(const VclBuilder&) = delete;
VclBuilder& operator=(const VclBuilder&) = delete; VclBuilder& operator=(const VclBuilder&) = delete;
...@@ -462,6 +468,15 @@ public: ...@@ -462,6 +468,15 @@ public:
return; return;
m_pUIBuilder->setDeferredProperties(); m_pUIBuilder->setDeferredProperties();
} }
OString getUIFile() const
{
if (m_pUIBuilder)
{
return m_pUIBuilder->getUIFile();
}
return OString();
}
protected: protected:
VclBuilder *m_pUIBuilder; VclBuilder *m_pUIBuilder;
......
...@@ -101,8 +101,8 @@ public: ...@@ -101,8 +101,8 @@ public:
virtual void PostPaint(vcl::RenderContext& rRenderContext) override; virtual void PostPaint(vcl::RenderContext& rRenderContext) override;
// Screenshot interface // Screenshot interface
virtual std::vector<OUString> getAllPageUIXMLDescriptions() const; virtual std::vector<OString> getAllPageUIXMLDescriptions() const;
virtual void selectPageByUIXMLDescription(const OUString& rUIXMLDescription); virtual bool selectPageByUIXMLDescription(const OString& rUIXMLDescription);
Bitmap createScreenshot(); Bitmap createScreenshot();
virtual short Execute(); virtual short Execute();
......
...@@ -1586,20 +1586,20 @@ bool SdPublishingDlg::Save() ...@@ -1586,20 +1586,20 @@ bool SdPublishingDlg::Save()
return( aMedium.GetError() == 0 ); return( aMedium.GetError() == 0 );
} }
std::vector<OUString> SdPublishingDlg::getAllPageUIXMLDescriptions() const std::vector<OString> SdPublishingDlg::getAllPageUIXMLDescriptions() const
{ {
// this dialog has a hard number of pages // this dialog has a hard number of pages
std::vector<OUString> aRetval; std::vector<OString> aRetval;
for (sal_uInt32 a(0); a < 6; a++) for (sal_uInt32 a(0); a < 6; a++)
{ {
aRetval.push_back(OUString::number(a)); aRetval.push_back(OString::number(a));
} }
return aRetval; return aRetval;
} }
void SdPublishingDlg::selectPageByUIXMLDescription(const OUString& rUIXMLDescription) bool SdPublishingDlg::selectPageByUIXMLDescription(const OString& rUIXMLDescription)
{ {
// rUIXMLDescription contains one of the values above, make use of it // rUIXMLDescription contains one of the values above, make use of it
const sal_uInt32 nPage(rUIXMLDescription.toUInt32()); const sal_uInt32 nPage(rUIXMLDescription.toUInt32());
...@@ -1607,9 +1607,10 @@ void SdPublishingDlg::selectPageByUIXMLDescription(const OUString& rUIXMLDescrip ...@@ -1607,9 +1607,10 @@ void SdPublishingDlg::selectPageByUIXMLDescription(const OUString& rUIXMLDescrip
if (nPage < 6) if (nPage < 6)
{ {
aAssistentFunc.GotoPage(nPage + 1); aAssistentFunc.GotoPage(nPage + 1);
return true;
// does this already call 'ChangePage()'..? Check!
} }
return false;
} }
// SdDesignNameDlg Methods // SdDesignNameDlg Methods
......
...@@ -29,15 +29,15 @@ public: \ ...@@ -29,15 +29,15 @@ public: \
: pDlg(p) \ : pDlg(p) \
{ \ { \
} \ } \
virtual std::vector<OUString> getAllPageUIXMLDescriptions() const override; \ virtual std::vector<OString> getAllPageUIXMLDescriptions() const override; \
virtual void selectPageByUIXMLDescription(const OUString& rUIXMLDescription) override; \ virtual bool selectPageByUIXMLDescription(const OString& rUIXMLDescription) override; \
virtual Bitmap createScreenshot() const override; \ virtual Bitmap createScreenshot() const override; \
virtual ~Class(); \ virtual ~Class(); \
virtual short Execute() override ; virtual short Execute() override ;
#define IMPL_ABSTDLG_BASE(Class) \ #define IMPL_ABSTDLG_BASE(Class) \
std::vector<OUString> Class::getAllPageUIXMLDescriptions() const { return pDlg->getAllPageUIXMLDescriptions(); } \ std::vector<OString> Class::getAllPageUIXMLDescriptions() const { return pDlg->getAllPageUIXMLDescriptions(); } \
void Class::selectPageByUIXMLDescription(const OUString& rUIXMLDescription) { pDlg->selectPageByUIXMLDescription(rUIXMLDescription); } \ bool Class::selectPageByUIXMLDescription(const OString& rUIXMLDescription) { return pDlg->selectPageByUIXMLDescription(rUIXMLDescription); } \
Bitmap Class::createScreenshot() const { return pDlg->createScreenshot();} \ Bitmap Class::createScreenshot() const { return pDlg->createScreenshot();} \
Class::~Class() \ Class::~Class() \
{ \ { \
......
...@@ -202,8 +202,8 @@ public: ...@@ -202,8 +202,8 @@ public:
void GetParameterSequence( css::uno::Sequence< css::beans::PropertyValue >& rParams ); void GetParameterSequence( css::uno::Sequence< css::beans::PropertyValue >& rParams );
// Screenshot interface // Screenshot interface
virtual std::vector<OUString> getAllPageUIXMLDescriptions() const override; virtual std::vector<OString> getAllPageUIXMLDescriptions() const override;
virtual void selectPageByUIXMLDescription(const OUString& rUIXMLDescription) override; virtual bool selectPageByUIXMLDescription(const OString& rUIXMLDescription) override;
}; };
#endif // INCLUDED_SD_SOURCE_UI_INC_PUBDLG_HXX #endif // INCLUDED_SD_SOURCE_UI_INC_PUBDLG_HXX
......
...@@ -1332,9 +1332,9 @@ FactoryFunction SfxTabDialog::GetUITestFactory() const ...@@ -1332,9 +1332,9 @@ FactoryFunction SfxTabDialog::GetUITestFactory() const
return SfxTabDialogUIObject::create; return SfxTabDialogUIObject::create;
} }
std::vector<OUString> SfxTabDialog::getAllPageUIXMLDescriptions() const std::vector<OString> SfxTabDialog::getAllPageUIXMLDescriptions() const
{ {
std::vector<OUString> aRetval; std::vector<OString> aRetval;
for (SfxTabDlgData_Impl::const_iterator it = pImpl->aData.begin(); it != pImpl->aData.end(); ++it) for (SfxTabDlgData_Impl::const_iterator it = pImpl->aData.begin(); it != pImpl->aData.end(); ++it)
{ {
...@@ -1349,21 +1349,17 @@ std::vector<OUString> SfxTabDialog::getAllPageUIXMLDescriptions() const ...@@ -1349,21 +1349,17 @@ std::vector<OUString> SfxTabDialog::getAllPageUIXMLDescriptions() const
if (pCandidate) if (pCandidate)
{ {
// for now, use IDs, later change to UI-Strings // use UIXMLDescription (without '.ui', with '/')
aRetval.push_back(OUString::number((*it)->nId)); aRetval.push_back(pCandidate->getUIFile());
} }
} }
return aRetval; return aRetval;
} }
void SfxTabDialog::selectPageByUIXMLDescription(const OUString& rUIXMLDescription) bool SfxTabDialog::selectPageByUIXMLDescription(const OString& rUIXMLDescription)
{ {
// for now, use IDs, later change to UI-Strings for (SfxTabDlgData_Impl::const_iterator it = pImpl->aData.begin(); it != pImpl->aData.end(); ++it)
const sal_uInt16 nTargetId((sal_uInt16)rUIXMLDescription.toUInt32());
bool bDone(false);
for (SfxTabDlgData_Impl::const_iterator it = pImpl->aData.begin(); !bDone && it != pImpl->aData.end(); ++it)
{ {
SfxTabPage* pCandidate = (*it)->pTabPage; SfxTabPage* pCandidate = (*it)->pTabPage;
...@@ -1374,12 +1370,14 @@ void SfxTabDialog::selectPageByUIXMLDescription(const OUString& rUIXMLDescriptio ...@@ -1374,12 +1370,14 @@ void SfxTabDialog::selectPageByUIXMLDescription(const OUString& rUIXMLDescriptio
pCandidate = GetTabPage((*it)->nId); pCandidate = GetTabPage((*it)->nId);
} }
if (pCandidate && (*it)->nId == nTargetId) if (pCandidate && pCandidate->getUIFile() == rUIXMLDescription)
{ {
ShowPage(nTargetId); ShowPage((*it)->nId);
bDone = true; return true;
} }
} }
return false;
} }
/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ /* vim:set shiftwidth=4 softtabstop=4 expandtab: */
...@@ -57,15 +57,16 @@ VclAbstractDialog::~VclAbstractDialog() ...@@ -57,15 +57,16 @@ VclAbstractDialog::~VclAbstractDialog()
{ {
} }
std::vector<OUString> VclAbstractDialog::getAllPageUIXMLDescriptions() const std::vector<OString> VclAbstractDialog::getAllPageUIXMLDescriptions() const
{ {
// default has no pages // default has no pages
return std::vector<OUString>(); return std::vector<OString>();
} }
void VclAbstractDialog::selectPageByUIXMLDescription(const OUString& /*rUIXMLDescription*/) bool VclAbstractDialog::selectPageByUIXMLDescription(const OString& /*rUIXMLDescription*/)
{ {
// default cannot select a page // default cannot select a page (which is okay, return true)
return true;
} }
Bitmap VclAbstractDialog::createScreenshot() const Bitmap VclAbstractDialog::createScreenshot() const
......
...@@ -843,15 +843,16 @@ void Dialog::PostPaint(vcl::RenderContext& rRenderContext) ...@@ -843,15 +843,16 @@ void Dialog::PostPaint(vcl::RenderContext& rRenderContext)
mbPaintComplete = true; mbPaintComplete = true;
} }
std::vector<OUString> Dialog::getAllPageUIXMLDescriptions() const std::vector<OString> Dialog::getAllPageUIXMLDescriptions() const
{ {
// default has no pages // default has no pages
return std::vector<OUString>(); return std::vector<OString>();
} }
void Dialog::selectPageByUIXMLDescription(const OUString& /*rUIXMLDescription*/) bool Dialog::selectPageByUIXMLDescription(const OString& /*rUIXMLDescription*/)
{ {
// default cannot select anything // default cannot select anything (which is okay, return true)
return true;
} }
Bitmap Dialog::createScreenshot() Bitmap Dialog::createScreenshot()
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment