LCOV - code coverage report
Current view: top level - reportdesign/source/ui/inc - dlgedfunc.hxx (source / functions) Hit Total Coverage
Test: commit e02a6cb2c3e2b23b203b422e4e0680877f232636 Lines: 0 1 0.0 %
Date: 2014-04-14 Functions: 0 1 0.0 %
Legend: Lines: hit not hit

          Line data    Source code
       1             : /* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
       2             : /*
       3             :  * This file is part of the LibreOffice project.
       4             :  *
       5             :  * This Source Code Form is subject to the terms of the Mozilla Public
       6             :  * License, v. 2.0. If a copy of the MPL was not distributed with this
       7             :  * file, You can obtain one at http://mozilla.org/MPL/2.0/.
       8             :  *
       9             :  * This file incorporates work covered by the following license notice:
      10             :  *
      11             :  *   Licensed to the Apache Software Foundation (ASF) under one or more
      12             :  *   contributor license agreements. See the NOTICE file distributed
      13             :  *   with this work for additional information regarding copyright
      14             :  *   ownership. The ASF licenses this file to you under the Apache
      15             :  *   License, Version 2.0 (the "License"); you may not use this file
      16             :  *   except in compliance with the License. You may obtain a copy of
      17             :  *   the License at http://www.apache.org/licenses/LICENSE-2.0 .
      18             :  */
      19             : #ifndef _REPORT_RPTUIFUNC_HXX
      20             : #define _REPORT_RPTUIFUNC_HXX
      21             : 
      22             : #include <vcl/timer.hxx>
      23             : 
      24             : class Timer;
      25             : class MouseEvent;
      26             : class Point;
      27             : class SdrTextObj;
      28             : class SdrObject;
      29             : namespace rptui
      30             : {
      31             : 
      32             : class OReportSection;
      33             : class OSectionView;
      34             : 
      35             : 
      36             : // DlgEdFunc
      37             : 
      38             : 
      39             : class DlgEdFunc /* : public LinkHdl */
      40             : {
      41             :     DlgEdFunc(const DlgEdFunc&);
      42             :     void operator =(const DlgEdFunc&);
      43             : protected:
      44             :     OReportSection* m_pParent;
      45             :     OSectionView&   m_rView;
      46             :     Timer           aScrollTimer;
      47             :     Point           m_aMDPos;
      48             :     com::sun::star::uno::Reference<com::sun::star::uno::XInterface> m_xOverlappingObj;
      49             :     SdrObject *     m_pOverlappingObj;
      50             :     sal_Int32       m_nOverlappedControlColor;
      51             :     sal_Int32       m_nOldColor;
      52             :     bool            m_bSelectionMode;
      53             :     bool            m_bUiActive;
      54             :     bool            m_bShowPropertyBrowser;
      55             : 
      56             :     DECL_LINK( ScrollTimeout, Timer * );
      57             :     void    ForceScroll( const Point& rPos );
      58             :     /** checks that no other object is overlapped.
      59             :     *
      60             :     * \param rMEvt
      61             :     */
      62             :     void    checkMovementAllowed(const MouseEvent& rMEvt);
      63             : 
      64             :     /** sets the correct mouse pointer when moving a object
      65             :     *
      66             :     * \param rMEvt
      67             :     * \return <TRUE/> when the pointer was already set.
      68             :     */
      69             :     bool    setMovementPointer(const MouseEvent& rMEvt);
      70             : 
      71             :     bool    isRectangleHit(const MouseEvent& rMEvt);
      72             :     /**
      73             :         returns true, as long as only customshapes in the marked list,
      74             :         custom shapes can drop every where
      75             :     */
      76             :     bool    isOnlyCustomShapeMarked();
      77             : 
      78             :     /** activate object if it is of type OBJ_OLE2
      79             :     */
      80             :     void    activateOle(SdrObject* _pObj);
      81             : 
      82             :     void checkTwoCklicks(const MouseEvent& rMEvt);
      83             : 
      84             : public:
      85             :     DlgEdFunc( OReportSection* pParent );
      86             :     virtual ~DlgEdFunc();
      87             : 
      88             :     virtual sal_Bool MouseButtonDown( const MouseEvent& rMEvt );
      89             :     virtual sal_Bool MouseButtonUp( const MouseEvent& rMEvt );
      90             :     virtual sal_Bool MouseMove( const MouseEvent& rMEvt );
      91             : 
      92             :     /** checks if the keycode is known by the child windows
      93             :         @param  _rCode  the keycode
      94             :         @return <TRUE/> if the keycode is handled otherwise <FALSE/>
      95             :     */
      96             :     virtual sal_Bool    handleKeyEvent(const KeyEvent& _rEvent);
      97             : 
      98             :     /** returns <TRUE/> if the mouse event is over an existing object
      99             :     *
     100             :     * \param rMEvt
     101             :     * \return <TRUE/> if overlapping, otherwise <FALSE/>
     102             :     */
     103             :     bool isOverlapping(const MouseEvent& rMEvt);
     104             :     void setOverlappedControlColor(sal_Int32 _nColor);
     105             :     void stopScrollTimer();
     106             : 
     107             :     /** deactivate all ole object
     108             :     */
     109             :     void    deactivateOle(bool _bSelect = false);
     110             : 
     111           0 :     inline bool isUiActive() const { return m_bUiActive; }
     112             : protected:
     113             :     void colorizeOverlappedObject(SdrObject* _pOverlappedObj);
     114             :     void unColorizeOverlappedObj();
     115             : 
     116             : 
     117             : };
     118             : 
     119             : 
     120             : // DlgEdFuncInsert
     121             : 
     122             : 
     123             : class DlgEdFuncInsert : public DlgEdFunc
     124             : {
     125             : public:
     126             :     DlgEdFuncInsert( OReportSection* pParent );
     127             :     virtual ~DlgEdFuncInsert();
     128             : 
     129             :     virtual sal_Bool MouseButtonDown( const MouseEvent& rMEvt ) SAL_OVERRIDE;
     130             :     virtual sal_Bool MouseButtonUp( const MouseEvent& rMEvt ) SAL_OVERRIDE;
     131             :     virtual sal_Bool MouseMove( const MouseEvent& rMEvt ) SAL_OVERRIDE;
     132             : };
     133             : 
     134             : 
     135             : // DlgEdFuncSelect
     136             : 
     137             : 
     138             : class DlgEdFuncSelect : public DlgEdFunc
     139             : {
     140             : public:
     141             :     DlgEdFuncSelect( OReportSection* pParent );
     142             :     virtual ~DlgEdFuncSelect();
     143             : 
     144             :     virtual sal_Bool MouseButtonDown( const MouseEvent& rMEvt ) SAL_OVERRIDE;
     145             :     virtual sal_Bool MouseButtonUp( const MouseEvent& rMEvt ) SAL_OVERRIDE;
     146             :     virtual sal_Bool MouseMove( const MouseEvent& rMEvt ) SAL_OVERRIDE;
     147             : 
     148             :     void SetInEditMode(SdrTextObj* _pTextObj,const MouseEvent& rMEvt, sal_Bool bQuickDrag);
     149             : };
     150             : 
     151             : }
     152             : #endif //_REPORT_RPTUIFUNC_HXX
     153             : 
     154             : /* vim:set shiftwidth=4 softtabstop=4 expandtab: */

Generated by: LCOV version 1.10