/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ /* * This file is part of the LibreOffice project. * * This Source Code Form is subject to the terms of the Mozilla Public * License, v. 2.0. If a copy of the MPL was not distributed with this * file, You can obtain one at http://mozilla.org/MPL/2.0/. * * This file incorporates work covered by the following license notice: * * Licensed to the Apache Software Foundation (ASF) under one or more * contributor license agreements. See the NOTICE file distributed * with this work for additional information regarding copyright * ownership. The ASF licenses this file to you under the Apache * License, Version 2.0 (the "License"); you may not use this file * except in compliance with the License. You may obtain a copy of * the License at http://www.apache.org/licenses/LICENSE-2.0 . */ #ifndef INCLUDED_DBACCESS_SOURCE_UI_DLG_DETAILPAGES_HXX #define INCLUDED_DBACCESS_SOURCE_UI_DLG_DETAILPAGES_HXX #include "adminpages.hxx" #include #include #include #include #include #include #include #include "TextConnectionHelper.hxx" #include "admincontrols.hxx" #include #include enum class OCommonBehaviourTabPageFlags { NONE = 0x0000, UseCharset = 0x0002, UseOptions = 0x0004, }; namespace o3tl { template<> struct typed_flags : is_typed_flags {}; } namespace dbaui { /** eases the implementation of tab pages handling user/password and/or character set and/or generic options input
The controls to be used have to be defined within the resource, as usual, but this class does all the handling necessary. */ class OCommonBehaviourTabPage : public OGenericAdministrationPage { protected: VclPtr m_pOptionsLabel; VclPtr m_pOptions; VclPtr m_pCharsetLabel; VclPtr m_pCharset; VclPtr m_pAutoRetrievingEnabled; VclPtr m_pAutoIncrementLabel; VclPtr m_pAutoIncrement; VclPtr m_pAutoRetrievingLabel; VclPtr m_pAutoRetrieving; OCommonBehaviourTabPageFlags m_nControlFlags; public: virtual bool FillItemSet (SfxItemSet* _rCoreAttrs) override; OCommonBehaviourTabPage(vcl::Window* pParent, const OString& rId, const OUString& rUIXMLDescription, const SfxItemSet& _rCoreAttrs, OCommonBehaviourTabPageFlags nControlFlags); protected: virtual ~OCommonBehaviourTabPage() override; virtual void dispose() override; // subclasses must override this, but it isn't pure virtual virtual void implInitControls(const SfxItemSet& _rSet, bool _bSaveValue) override; // OGenericAdministrationPage::fillControls virtual void fillControls(std::vector< std::unique_ptr >& _rControlList) override; // OGenericAdministrationPage::fillWindows virtual void fillWindows(std::vector< std::unique_ptr >& _rControlList) override; private: DECL_LINK(CharsetSelectHdl, ListBox&, void); }; class DBOCommonBehaviourTabPage : public OGenericAdministrationPage { protected: OCommonBehaviourTabPageFlags m_nControlFlags; std::unique_ptr m_xOptionsLabel; std::unique_ptr m_xOptions; std::unique_ptr m_xDataConvertLabel; std::unique_ptr m_xCharsetLabel; std::unique_ptr m_xCharset; std::unique_ptr m_xAutoRetrievingEnabled; std::unique_ptr m_xAutoIncrementLabel; std::unique_ptr m_xAutoIncrement; std::unique_ptr m_xAutoRetrievingLabel; std::unique_ptr m_xAutoRetrieving; public: virtual bool FillItemSet (SfxItemSet* _rCoreAttrs) override; DBOCommonBehaviourTabPage(TabPageParent pParent, const OUString& rUIXMLDescription, const OString& rId, const SfxItemSet& _rCoreAttrs, OCommonBehaviourTabPageFlags nControlFlags); protected: virtual ~DBOCommonBehaviourTabPage() override; virtual void dispose() override; // subclasses must override this, but it isn't pure virtual virtual void implInitControls(const SfxItemSet& _rSet, bool _bSaveValue) override; // OGenericAdministrationPage::fillControls virtual void fillControls(std::vector< std::unique_ptr >& _rControlList) override; // OGenericAdministrationPage::fillWindows virtual void fillWindows(std::vector< std::unique_ptr >& _rControlList) override; private: DECL_LINK(CharsetSelectHdl, weld::ComboBox&, void); }; // ODbaseDetailsPage class ODbaseDetailsPage : public DBOCommonBehaviourTabPage { public: virtual bool FillItemSet ( SfxItemSet* _rCoreAttrs ) override; ODbaseDetailsPage(TabPageParent pParent, const SfxItemSet& _rCoreAttrs); virtual ~ODbaseDetailsPage() override; private: OUString m_sDsn; std::unique_ptr m_xShowDeleted; std::unique_ptr m_xFT_Message; std::unique_ptr m_xIndexes; protected: virtual void implInitControls(const SfxItemSet& _rSet, bool _bSaveValue) override; private: DECL_LINK(OnButtonClicked, weld::Button&, void); }; // OAdoDetailsPage class OAdoDetailsPage : public DBOCommonBehaviourTabPage { public: OAdoDetailsPage(TabPageParent pParent, const SfxItemSet& rCoreAttrs); }; // OOdbcDetailsPage class OOdbcDetailsPage : public DBOCommonBehaviourTabPage { public: virtual bool FillItemSet ( SfxItemSet* _rCoreAttrs ) override; OOdbcDetailsPage(TabPageParent pParent, const SfxItemSet& rCoreAttrs); virtual ~OOdbcDetailsPage() override; protected: virtual void implInitControls(const SfxItemSet& _rSet, bool _bSaveValue) override; private: std::unique_ptr m_xUseCatalog; }; // OUserDriverDetailsPage class OUserDriverDetailsPage : public DBOCommonBehaviourTabPage { public: virtual bool FillItemSet ( SfxItemSet* _rCoreAttrs ) override; OUserDriverDetailsPage(TabPageParent pParent, const SfxItemSet& _rCoreAttrs); virtual ~OUserDriverDetailsPage() override; protected: virtual void implInitControls(const SfxItemSet& _rSet, bool _bSaveValue) override; virtual void fillControls(std::vector< std::unique_ptr >& _rControlList) override; virtual void fillWindows(std::vector< std::unique_ptr >& _rControlList) override; private: std::unique_ptr m_xFTHostname; std::unique_ptr m_xEDHostname; std::unique_ptr m_xPortNumber; std::unique_ptr m_xNFPortNumber; std::unique_ptr m_xUseCatalog; }; // OMySQLODBCDetailsPage class OMySQLODBCDetailsPage : public DBOCommonBehaviourTabPage { public: OMySQLODBCDetailsPage(TabPageParent pParent, const SfxItemSet& rCoreAttrs); }; // OGeneralSpecialJDBCDetailsPage class OGeneralSpecialJDBCDetailsPage final : public DBOCommonBehaviourTabPage { public: OGeneralSpecialJDBCDetailsPage(TabPageParent pParent, const SfxItemSet& _rCoreAttrs, sal_uInt16 _nPortId, bool bShowSocket = true); virtual ~OGeneralSpecialJDBCDetailsPage() override; private: virtual bool FillItemSet( SfxItemSet* _rCoreAttrs ) override; virtual void implInitControls(const SfxItemSet& _rSet, bool _bSaveValue) override; virtual void callModifiedHdl(void* pControl = nullptr) override; DECL_LINK(OnTestJavaClickHdl, weld::Button&, void); OUString m_sDefaultJdbcDriverName; sal_uInt16 m_nPortId; bool m_bUseClass; std::unique_ptr m_xEDHostname; std::unique_ptr m_xNFPortNumber; std::unique_ptr m_xFTSocket; std::unique_ptr m_xEDSocket; std::unique_ptr m_xFTDriverClass; std::unique_ptr m_xEDDriverClass; std::unique_ptr m_xTestJavaDriver; }; // MySQLNativePage class MySQLNativePage : public OCommonBehaviourTabPage { public: MySQLNativePage( vcl::Window* pParent, const SfxItemSet& _rCoreAttrs ); virtual ~MySQLNativePage() override; virtual void dispose() override; private: VclPtr m_pSeparator1; VclPtr m_aMySQLSettings; VclPtr m_pSeparator2; VclPtr m_pUserNameLabel; VclPtr m_pUserName; VclPtr m_pPasswordRequired; protected: virtual bool FillItemSet( SfxItemSet* _rCoreAttrs ) override; virtual void implInitControls(const SfxItemSet& _rSet, bool _bSaveValue) override; virtual void fillControls(std::vector< std::unique_ptr >& _rControlList) override; virtual void fillWindows(std::vector< std::unique_ptr >& _rControlList) override; }; // OOdbcDetailsPage class OLDAPDetailsPage : public DBOCommonBehaviourTabPage { public: virtual bool FillItemSet ( SfxItemSet* _rCoreAttrs ) override; OLDAPDetailsPage(TabPageParent pParent, const SfxItemSet& rCoreAttrs); virtual ~OLDAPDetailsPage() override; protected: virtual void implInitControls(const SfxItemSet& _rSet, bool _bSaveValue) override; private: sal_Int32 m_iSSLPort; sal_Int32 m_iNormalPort; std::unique_ptr m_xETBaseDN; std::unique_ptr m_xCBUseSSL; std::unique_ptr m_xNFPortNumber; std::unique_ptr m_xNFRowCount; DECL_LINK(OnCheckBoxClick, weld::ToggleButton&, void); }; // OTextDetailsPage class OTextDetailsPage : public OCommonBehaviourTabPage { public: virtual bool FillItemSet ( SfxItemSet* _rCoreAttrs ) override; OTextDetailsPage( vcl::Window* pParent, const SfxItemSet& _rCoreAttrs ); VclPtr m_pTextConnectionHelper; protected: virtual ~OTextDetailsPage() override; virtual void dispose() override; virtual bool prepareLeave() override; virtual void implInitControls(const SfxItemSet& _rSet, bool _bSaveValue) override; virtual void fillControls(std::vector< std::unique_ptr >& _rControlList) override; virtual void fillWindows(std::vector< std::unique_ptr >& _rControlList) override; private: }; } // namespace dbaui #endif // INCLUDED_DBACCESS_SOURCE_UI_DLG_DETAILPAGES_HXX /* vim:set shiftwidth=4 softtabstop=4 expandtab: */ pt3_2'>feature/calctiledrendering_attempt3_2 LibreOffice 核心代码仓库文档基金会
summaryrefslogtreecommitdiff
AgeCommit message (Expand)Author
2021-09-15Use <comphelper/servicehelper.hxx> implementing XUnoTunnel part 5Mike Kaganski
2021-09-15Use <comphelper/servicehelper.hxx> implementing XUnoTunnel part 4Mike Kaganski
2021-09-15Use <comphelper/servicehelper.hxx> implementing XUnoTunnel part 1Mike Kaganski
2021-05-02throw() -> noexcept, part 2/3: Automatic loplugin:noexcept rewriteStephan Bergmann
2021-04-19Updated README.md filesHossein
2021-04-07Updated README.md files to represent current code / use Markdown formatHossein
2021-04-07rtl::Static -> function local staticNoel Grandin
2021-03-24Using .md extension/Markdown syntax for modules READMEHossein
2021-03-21animcore : AnimationNode should be finalArnaud Versini
2021-01-27PPTX filter: fix lost is-narration property for slide narrationsMiklos Vajna
2021-01-26[API CHANGE] PPTX filter: fix lost hide-while-show prop for slide narrationsMiklos Vajna
2021-01-20improve some IllegalArgumentException messagesNoel
2020-11-05tdf#42949 Fix new IWYU warnings in directories [ab]*Gabor Kelemen
2020-08-31add missing initializers about physics animations to AnimationNode classSarper Akdemir
2020-08-22add bounciness velocity and density options to physics animationsSarper Akdemir
2020-08-20make physics based animation effects importable-exportableSarper Akdemir
2020-04-18loplugin:flatten in accessibilityNoel Grandin
2019-11-22Extend loplugin:external to warn about classesStephan Bergmann
2019-08-23tdf#39593 extract UnoTunnelId comparison to template functionArkadiy Illarionov
2019-07-31Improved loplugin:stringconstant (now that GCC 7 supports it): animationsStephan Bergmann
2019-05-23tdf#42949 Fix IWYU warnings in: animations/ eventattacher/ i18nutil/Gabor Kelemen
2019-04-06clang-tidy modernize-avoid-c-arrays in animationsArkadiy Illarionov
2019-03-27Remove unused using declarations in directories [a-d]*Gabor Kelemen
2018-09-17New loplugin:externalStephan Bergmann
2018-09-05loplugin:simplifyconstruct in accessibility..bridgesNoel Grandin
2018-07-09Add missing sal/log.hxx headersGabor Kelemen
2017-12-11loplugin:salcall fix functionsNoel Grandin
2017-11-04Replace lists by vectors in animation parts (sd/animations)Julien Nabet
2017-06-15use more SAL_N_ELEMENTS part 3Noel Grandin
2017-05-16loplugin:comparisonwithconstant in avmediaNoel Grandin
2017-04-21gbuild: Remove MSVC 2013 legacy codeDavid Ostrovsky
2017-03-03Fix typosAndrea Gelmini
2017-02-15Drop :: prefix from std in [a-b]*/Tor Lillqvist
2017-02-06Add missing #includesStephan Bergmann
2017-02-01makeAny->Any in accessibility..avmediaNoel Grandin
2017-01-26Remove dynamic exception specificationsStephan Bergmann
2016-11-23loplugin:unnecessaryoverride (dtors) in animationsStephan Bergmann
2016-09-13loplugin:override: No more need for the "MSVC dtor override" workaroundStephan Bergmann
2016-09-05tdf#43157 - Clean up OSL_ASSERT, DBG_ASSERT, etc.Gökhan Gurbetoğlu