LCOV - code coverage report
Current view: top level - idl/inc - slot.hxx (source / functions) Hit Total Coverage
Test: commit c8344322a7af75b84dd3ca8f78b05543a976dfd5 Lines: 53 64 82.8 %
Date: 2015-06-13 12:38:46 Functions: 18 20 90.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             : 
      20             : #ifndef INCLUDED_IDL_INC_SLOT_HXX
      21             : #define INCLUDED_IDL_INC_SLOT_HXX
      22             : 
      23             : #include <types.hxx>
      24             : #include <command.hxx>
      25             : 
      26       25368 : class SvMetaSlot : public SvMetaAttribute
      27             : {
      28             :     SvMetaTypeRef   aSlotType;
      29             :     SvMetaAttributeRef aMethod;
      30             :     SvIdentifier    aGroupId;
      31             :     SvBOOL          aHasCoreId;
      32             :     SvIdentifier    aConfigId;
      33             :     SvIdentifier    aExecMethod;
      34             :     SvIdentifier    aStateMethod;
      35             :     SvIdentifier    aDefault;
      36             :     SvBOOL          aPseudoSlots;
      37             :     SvBOOL          aGet;
      38             :     SvBOOL          aSet;
      39             : 
      40             :     SvBOOL          aCachable;  // exclusive
      41             :     SvBOOL          aVolatile;
      42             :     SvBOOL          aToggle;
      43             :     SvBOOL          aAutoUpdate;
      44             : 
      45             :     SvBOOL          aSynchron;  // exclusive
      46             :     SvBOOL          aAsynchron;
      47             : 
      48             :     SvBOOL          aRecordPerItem;// exclusive
      49             :     SvBOOL          aRecordPerSet;
      50             :     SvBOOL          aRecordManual;
      51             :     SvBOOL          aNoRecord;
      52             :     SvBOOL          aRecordAbsolute;
      53             : 
      54             :     SvBOOL          aHasDialog;
      55             :     SvBOOL          aMenuConfig;
      56             :     SvBOOL          aToolBoxConfig;
      57             :     SvBOOL          aStatusBarConfig;
      58             :     SvBOOL          aAccelConfig;
      59             :     SvBOOL          aFastCall;
      60             :     SvBOOL          aContainer;
      61             :     SvBOOL          aImageRotation;
      62             :     SvBOOL          aImageReflection;
      63             :     SvIdentifier    aPseudoPrefix;
      64             :     SvString        aDisableFlags;
      65             :     SvMetaSlot*     pLinkedSlot;
      66             :     SvMetaSlot*     pNextSlot;
      67             :     sal_uLong           nListPos;
      68             :     SvMetaEnumValue* pEnumValue;
      69             :     SvString    aUnoName;
      70             : 
      71             :     void            WriteSlot( const OString& rShellName,
      72             :                             sal_uInt16 nCount, const OString& rSlotId,
      73             :                             SvSlotElementList &rList,
      74             :                             size_t nStart,
      75             :                             SvIdlDataBase & rBase, SvStream & rOutStm );
      76             : 
      77          68 :     void            SetEnumValue(SvMetaEnumValue *p)
      78          68 :                     { pEnumValue = p; }
      79             : protected:
      80       16373 :     void    SetCachable( bool bSet )
      81             :             {
      82       16373 :                 aCachable = bSet;
      83       16373 :                 if( bSet )
      84       16373 :                     aVolatile = false;
      85       16373 :             }
      86           0 :     void    SetVolatile( bool bSet )
      87             :             {
      88           0 :                 aVolatile = bSet;
      89           0 :                 if( bSet )
      90           0 :                     aCachable = false;
      91           0 :             }
      92        8130 :     void    SetToggle( bool bSet )
      93             :             {
      94        8130 :                 aToggle = bSet;
      95        8130 :             }
      96        8145 :     void    SetAutoUpdate( bool bSet )
      97             :             {
      98        8145 :                 aAutoUpdate = bSet;
      99        8145 :             }
     100             : 
     101        6560 :     void    SetSynchron( bool bSet )
     102             :             {
     103        6560 :                 aSynchron = bSet;
     104        6560 :                 if( bSet )
     105        6560 :                     aAsynchron = false;
     106        6560 :             }
     107        1586 :     void    SetAsynchron( bool bSet )
     108             :             {
     109        1586 :                 aAsynchron = bSet;
     110        1586 :                 if( bSet )
     111        1586 :                     aSynchron = false;
     112        1586 :             }
     113             : 
     114         581 :     void    SetRecordPerItem( bool bSet )
     115             :             {
     116         581 :                 aRecordPerItem = bSet;
     117         581 :                 if( bSet )
     118         581 :                     aRecordPerSet = aRecordManual = aNoRecord = false;
     119         581 :             }
     120        7082 :     void    SetRecordPerSet( bool bSet )
     121             :             {
     122        7082 :                 aRecordPerSet = bSet;
     123        7082 :                 if( bSet )
     124        7082 :                     aRecordPerItem = aRecordManual = aNoRecord = false;
     125        7082 :             }
     126         181 :     void    SetRecordManual( bool bSet )
     127             :             {
     128         181 :                 aRecordManual = bSet;
     129         181 :                 if( bSet )
     130         181 :                     aRecordPerItem = aRecordPerSet = aNoRecord = false;
     131         181 :             }
     132          97 :     void    SetNoRecord( bool bSet )
     133             :             {
     134          97 :                 aNoRecord = bSet;
     135          97 :                 if( bSet )
     136          97 :                     aRecordPerItem = aRecordPerSet = aRecordManual = false;
     137          97 :             }
     138        7940 :     void    SetRecordAbsolute( bool bSet )
     139        7940 :             { aRecordAbsolute = bSet; }
     140             :     void    SetHasDialog( bool bSet )
     141             :             { aHasDialog = bSet; }
     142             :     void    SetMenuConfig( bool bSet )
     143             :             { aMenuConfig = bSet; }
     144             :     void    SetToolBoxConfig( bool bSet )
     145             :             { aToolBoxConfig = bSet; }
     146             :     void    SetStatusBarConfig( bool bSet )
     147             :             { aStatusBarConfig = bSet; }
     148             :     void    SetAccelConfig( bool bSet )
     149             :             { aAccelConfig = bSet; }
     150           0 :     void    SetAllConfig( bool bSet )
     151             :             {
     152           0 :                 aMenuConfig     = bSet;
     153           0 :                 aToolBoxConfig  = bSet;
     154           0 :                 aStatusBarConfig = bSet;
     155           0 :                 aAccelConfig    = bSet;
     156           0 :             }
     157             :     void    SetFastCall( bool bSet )
     158             :             { aFastCall = bSet; }
     159             :     void    SetContainer( bool bSet )
     160             :             { aContainer = bSet; }
     161             :     void    SetImageRotation( bool bSet )
     162             :             { aImageRotation = bSet; }
     163             :     void    SetImageReflection( bool bSet )
     164             :             { aImageReflection = bSet; }
     165             : 
     166             : public:
     167             :             TYPEINFO_OVERRIDE();
     168             :             SvMetaObject *  MakeClone() const;
     169          68 :             SvMetaSlot *Clone() const { return static_cast<SvMetaSlot *>(MakeClone()); }
     170             : 
     171             :             SvMetaSlot();
     172             :             SvMetaSlot( SvMetaType * pType );
     173             : 
     174             :     virtual bool    IsVariable() const SAL_OVERRIDE;
     175             :     virtual bool    IsMethod() const SAL_OVERRIDE;
     176             :     virtual OString GetMangleName( bool bVariable ) const SAL_OVERRIDE;
     177             : 
     178             :     SvMetaAttribute *   GetMethod() const;
     179             :     SvMetaType *        GetSlotType() const;
     180             :     bool                GetHasCoreId() const;
     181             :     const OString&     GetGroupId() const;
     182             :     const OString&     GetConfigId() const;
     183             :     const OString&     GetExecMethod() const;
     184             :     const OString&     GetStateMethod() const;
     185             :     const OString&     GetDefault() const;
     186             :     const OString&     GetDisableFlags() const;
     187             :     bool                GetPseudoSlots() const;
     188             :     bool                GetCachable() const;
     189             :     bool                GetVolatile() const;
     190             :     bool                GetToggle() const;
     191             :     bool                GetAutoUpdate() const;
     192             : 
     193             :     bool                GetSynchron() const;
     194             :     bool                GetAsynchron() const;
     195             : 
     196             :     bool                GetRecordPerItem() const;
     197             :     bool                GetRecordPerSet() const;
     198             :     bool                GetRecordManual() const;
     199             :     bool                GetNoRecord() const;
     200             :     bool                GetRecordAbsolute() const;
     201             : 
     202             :     bool                GetHasDialog() const;
     203             :     const OString&     GetPseudoPrefix() const;
     204             :     const OString&     GetUnoName() const;
     205             :     bool                GetMenuConfig() const;
     206             :     bool                GetToolBoxConfig() const;
     207             :     bool                GetStatusBarConfig() const;
     208             :     bool                GetAccelConfig() const;
     209             :     bool                GetFastCall() const;
     210             :     bool                GetContainer() const;
     211             :     bool                GetImageRotation() const;
     212             :     bool                GetImageReflection() const;
     213             :     SvMetaSlot*         GetLinkedSlot() const
     214             :                         { return pLinkedSlot; }
     215             :     SvMetaSlot*         GetNextSlot() const
     216             :                         { return pNextSlot; }
     217        6024 :     sal_uLong               GetListPos() const
     218        6024 :                         { return nListPos; }
     219        5951 :     void                SetListPos(sal_uLong n)
     220        5951 :                         { nListPos = n; }
     221        5951 :     void                ResetSlotPointer()
     222        5951 :                         { pNextSlot = pLinkedSlot = 0; }
     223             : 
     224             :     SvMetaEnumValue*    GetEnumValue() const
     225             :                         { return pEnumValue; }
     226             :     virtual bool        Test( SvIdlDataBase &, SvTokenStream & rInStm ) SAL_OVERRIDE;
     227             :     virtual void        ReadAttributesSvIdl( SvIdlDataBase & rBase,
     228             :                                              SvTokenStream & rInStm ) SAL_OVERRIDE;
     229             :     virtual bool        ReadSvIdl( SvIdlDataBase &, SvTokenStream & rInStm ) SAL_OVERRIDE;
     230             :     virtual void        Insert( SvSlotElementList&, const OString& rPrefix,
     231             :                                 SvIdlDataBase& ) SAL_OVERRIDE;
     232             :     void                WriteSlotStubs( const OString& rShellName,
     233             :                                     ByteStringList & rList,
     234             :                                     SvStream & rOutStm );
     235             :     sal_uInt16          WriteSlotMap( const OString& rShellName,
     236             :                                     sal_uInt16 nCount,
     237             :                                     SvSlotElementList&,
     238             :                                     size_t nStart,
     239             :                                     SvIdlDataBase & rBase,
     240             :                                     SvStream & rOutStm );
     241             :     sal_uInt16          WriteSlotParamArray( SvIdlDataBase & rBase,
     242             :                                             SvStream & rOutStm );
     243             : };
     244             : typedef tools::SvRef<SvMetaSlot> SvMetaSlotRef;
     245             : 
     246             : class SvMetaSlotMemberList : public SvRefMemberList<SvMetaSlot *> {};
     247             : 
     248             : #endif // INCLUDED_IDL_INC_SLOT_HXX
     249             : 
     250             : /* vim:set shiftwidth=4 softtabstop=4 expandtab: */

Generated by: LCOV version 1.11