diff options
Diffstat (limited to 'basctl/source/basicide/baside2.hxx')
-rw-r--r-- | basctl/source/basicide/baside2.hxx | 27 |
1 files changed, 25 insertions, 2 deletions
diff --git a/basctl/source/basicide/baside2.hxx b/basctl/source/basicide/baside2.hxx index 99822c44627c..b3114cacc64c 100644 --- a/basctl/source/basicide/baside2.hxx +++ b/basctl/source/basicide/baside2.hxx @@ -54,6 +54,10 @@ class SvxSearchItem; #include <vcl/textdata.hxx> #include <basic/codecompletecache.hxx> #include "com/sun/star/reflection/XIdlClass.hpp" +#include <comphelper/namedvaluecollection.hxx> +#include <comphelper/processfactory.hxx> +#include <comphelper/configurationhelper.hxx> +#include "com/sun/star/reflection/XIdlReflection.hpp" namespace com { namespace sun { namespace star { namespace beans { class XMultiPropertySet; @@ -120,8 +124,6 @@ private: CodeCompleteDataCache aCodeCompleteCache; boost::scoped_ptr< CodeCompleteWindow > pCodeCompleteWnd; OUString GetActualSubName( sal_uLong nLine ); // gets the actual subroutine name according to line number - std::vector< OUString > GetXIdlClassMethods( ::com::sun::star::uno::Reference< ::com::sun::star::reflection::XIdlClass > xClass ) const; - std::vector< OUString > GetXIdlClassFields( ::com::sun::star::uno::Reference< ::com::sun::star::reflection::XIdlClass > xClass ) const; void HandleAutoCorrect(); void HandleAutoCloseParen(); void HandleAutoCloseDoubleQuotes(); @@ -537,6 +539,27 @@ public: }; +class UnoTypeCodeCompletetor +{ +private: + ::com::sun::star::uno::Reference< ::com::sun::star::lang::XMultiServiceFactory > xFactory; + ::com::sun::star::uno::Reference< ::com::sun::star::reflection::XIdlReflection > xRefl; + ::com::sun::star::uno::Reference< ::com::sun::star::reflection::XIdlClass > xClass; + bool bCanComplete; + + bool CheckField( const OUString& sFieldName ); + bool CheckMethod( const OUString& sMethName ); + +public: + UnoTypeCodeCompletetor( const std::vector< OUString >& aVect, const OUString& sVarType ); + ~UnoTypeCodeCompletetor(){} + + std::vector< OUString > GetXIdlClassMethods() const; + std::vector< OUString > GetXIdlClassFields() const; + + bool CanCodeComplete() const; +}; + } // namespace basctl #endif // BASCTL_BASIDE2_HXX |