/* -*- 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_FORMULA_FORMULA_HXX #define INCLUDED_FORMULA_FORMULA_HXX #include #include #include #include #include #include #include #include #include #include #include class Idle; class NotifyEvent; class SfxBindings; class SfxChildWindow; namespace vcl { class Window; } namespace formula { #define STRUCT_END 1 #define STRUCT_FOLDER 2 #define STRUCT_ERROR 3 enum class FormulaDlgMode { Formula, Edit }; class FormulaDlg_Impl; class IControlReferenceHandler; class FormulaHelper; class RefEdit; class RefButton; class FormEditData; class FORMULA_DLLPUBLIC FormulaModalDialog : public ModalDialog, public formula::IFormulaEditorHelper { friend class FormulaDlg_Impl; public: FormulaModalDialog( vcl::Window* pParent ,IFunctionManager const * _pFunctionMgr ,IControlReferenceHandler* _pDlg ); virtual ~FormulaModalDialog() override; virtual void dispose() override; private: std::unique_ptr> m_pImpl; protected: virtual bool PreNotify( NotifyEvent& rNEvt ) override; ::std::pair RefInputStartBefore( RefEdit* pEdit, RefButton* pButton ); void RefInputStartAfter(); void RefInputDoneAfter(); void SetMeText(const OUString& _sText); void Update(); void CheckMatrix(OUString& aFormula /*IN/OUT*/); void Update(const OUString& _sExp); void StoreFormEditData(FormEditData* pData); }; class FORMULA_DLLPUBLIC FormulaDlg: public SfxModelessDialog, public IFormulaEditorHelper { friend class FormulaDlg_Impl; public: FormulaDlg( SfxBindings* pB , SfxChildWindow* pCW , vcl::Window* pParent , IFunctionManager const * _pFunctionMgr , IControlReferenceHandler* _pDlg ); virtual ~FormulaDlg() override; virtual void dispose() override; private: std::unique_ptr> m_pImpl; DECL_LINK( UpdateFocusHdl, Timer*, void ); protected: void disableOk(); protected: virtual bool PreNotify( NotifyEvent& rNEvt ) override; ::std::pair RefInputStartBefore( RefEdit* pEdit, RefButton* pButton ); void RefInputStartAfter(); void RefInputDoneAfter( bool bForced ); void SetMeText(const OUString& _sText); FormulaDlgMode SetMeText(const OUString& _sText, sal_Int32 PrivStart, sal_Int32 PrivEnd, bool bMatrix, bool _bSelect, bool _bUpdate); void Update(); bool CheckMatrix(OUString& aFormula /*IN/OUT*/); OUString GetMeText() const; void Update(const OUString& _sExp); void DoEnter(); const IFunctionDescription* getCurrentFunctionDescription() const; bool UpdateParaWin(Selection& _rSelection); void UpdateParaWin(const Selection& _rSelection, const OUString& _sRefStr); RefEdit* GetActiveEdit(); void SetEdSelection(); void StoreFormEditData(FormEditData* pData); const FormulaHelper& GetFormulaHelper() const; }; } // formula #endif // INCLUDED_FORMULA_FORMULA_HXX /* vim:set shiftwidth=4 softtabstop=4 expandtab: */ value='distro/collabora/dcm-6.2'>distro/collabora/dcm-6.2 LibreOffice 核心代码仓库文档基金会
summaryrefslogtreecommitdiff
AgeCommit message (Expand)Author
2017-08-25i#32546# - Java UnoRuntime.getUniqueKey/generateOid do not work reliablyDamjan Jovanovic
2017-08-17remove UL/L suffixes from integer constants in initialiser/call expressionsNoel Grandin
2017-02-03TyposJulien Nabet
2016-06-07error: unknown tag: internalStephan Bergmann
2016-06-07[API CHANGE] Drop deprecated I*Description interfacesNoel Grandin
2016-05-16Fix typosAndrea Gelmini
2016-05-13Related tdf#99272: Prevent bogus com.sun.star.uno.Type(Short[].class) etc.Stephan Bergmann
2016-02-17ridljar: fix javadoc warningsMichael Stahl
2015-12-03Add build toolchain to upload LibreOffice API to Maven CentralDavid Ostrovsky
2015-12-01Expose metadata to deploy LibreOffice artifacts on Maven CentralDavid Ostrovsky
2015-11-05java: remove ((unnecessary)) parenthesesNoel Grandin
2015-10-20coverity#1326356 presumably a deliberate fall throughCaolán McNamara
2015-10-15[API CHANGE] Remove deprecated com.sun.star.uno.Union classStephan Bergmann
2015-06-11java:regulatize the order of 'final' and public/privateNoel Grandin
2014-12-16java: remove OOoRunnerLightNoel Grandin
2014-11-18java: make fields final where possibleNoel Grandin
2014-11-18java: rather use @Deprecated annotationNoel Grandin
2014-11-12Fix common typos. No automatic tools. Handmade…Andrea Gelmini
2014-09-28ridljar: Any_Test & UnoRuntime_Test (JUnit)Robert Antoni Buj i Gelonch
2014-09-25java: when rethrowing exceptions, store the original causeNoel Grandin
2014-08-20java: remove unnecessary constructor declarationsNoel Grandin
2014-08-19java: use 'Byte.valueOf' instead of 'new Byte'Noel Grandin
2014-08-19java: use 'Short.valueOf' instead of 'new Short'Noel Grandin
2014-08-19java: use 'Long.valueOf' instead of 'new Long'Noel Grandin
2014-08-19java: use 'Integer.valueOf' instead of 'new Integer'Noel Grandin
2014-08-12java: add @Override annotation to overriding methodsNoel Grandin
2014-08-08java: remove dead methodsNoel Grandin
2014-08-04java: implement optimisation in UnoRuntime#setCurrentContextNoel Grandin
2014-07-22ridljar: javadoc & Overriderbuj
2014-05-01Many spelling fixes: directories r* - z*.Pedro Giffuni
2014-01-31Silence javadoc 8 errorsStephan Bergmann
2014-01-31Remove UNOIDL "array" and "union" vaporware remnantsStephan Bergmann