LCOV - code coverage report
Current view: top level - chart2/source/tools - MediaDescriptorHelper.cxx (source / functions) Hit Total Coverage
Test: commit 0e63ca4fde4e446f346e35849c756a30ca294aab Lines: 117 119 98.3 %
Date: 2014-04-11 Functions: 2 3 66.7 %
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             : #include "MediaDescriptorHelper.hxx"
      21             : 
      22             : using namespace ::com::sun::star;
      23             : 
      24             : namespace apphelper
      25             : {
      26             : 
      27             : const short FLAG_DEPRECATED =1;
      28             : const short FLAG_MODEL      =2;
      29             : 
      30             : #define WRITE_PROPERTY( MediaName, nFlags )             \
      31             : if(rProp.Name.equals(#MediaName)) \
      32             : {                                                       \
      33             :     if( rProp.Value >>= MediaName )                     \
      34             :         ISSET_##MediaName = sal_True;                   \
      35             :     if((nFlags & FLAG_DEPRECATED) != 0)                 \
      36             :     {                                                   \
      37             :         m_aDeprecatedProperties[nDeprecatedCount]=rProp;\
      38             :         nDeprecatedCount++;                             \
      39             :     }                                                   \
      40             :     else                                                \
      41             :     {                                                   \
      42             :         m_aRegularProperties[nRegularCount]=rProp;      \
      43             :         nRegularCount++;                                \
      44             :         if((nFlags & FLAG_MODEL) != 0)                  \
      45             :         {                                               \
      46             :             m_aModelProperties[nModelCount]=rProp;      \
      47             :             nModelCount++;                              \
      48             :         }                                               \
      49             :     }                                                   \
      50             : }
      51             : 
      52         520 : MediaDescriptorHelper::MediaDescriptorHelper( const uno::Sequence<
      53         520 :                         beans::PropertyValue > & rMediaDescriptor )
      54             : {
      55         520 :     impl_init();
      56             : 
      57         520 :     m_aRegularProperties.realloc(0);
      58         520 :     m_aRegularProperties.realloc(rMediaDescriptor.getLength());
      59         520 :     sal_Int32 nRegularCount = 0;
      60             : 
      61         520 :     m_aDeprecatedProperties.realloc(0);
      62         520 :     m_aDeprecatedProperties.realloc(rMediaDescriptor.getLength());
      63         520 :     sal_Int32 nDeprecatedCount = 0;
      64             : 
      65         520 :     m_aAdditionalProperties.realloc(0);
      66         520 :     m_aAdditionalProperties.realloc(rMediaDescriptor.getLength());
      67         520 :     sal_Int32 nAdditionalCount = 0;
      68             : 
      69         520 :     m_aModelProperties.realloc(0);
      70         520 :     m_aModelProperties.realloc(rMediaDescriptor.getLength());
      71         520 :     sal_Int32 nModelCount = 0;
      72             : 
      73             :     //read given rMediaDescriptor and store in internal structures:
      74        3354 :     for( sal_Int32 i= rMediaDescriptor.getLength();i--;)
      75             :     {
      76        2314 :         const beans::PropertyValue& rProp = rMediaDescriptor[i];
      77        2314 :         WRITE_PROPERTY( AsTemplate, FLAG_MODEL )
      78        2308 :         else WRITE_PROPERTY( Author, FLAG_MODEL )
      79        2308 :         else WRITE_PROPERTY( CharacterSet, FLAG_MODEL )
      80        2308 :         else WRITE_PROPERTY( Comment, FLAG_MODEL )
      81        2308 :         else WRITE_PROPERTY( ComponentData, FLAG_MODEL )
      82        2308 :         else WRITE_PROPERTY( FileName, FLAG_DEPRECATED )
      83        2308 :         else WRITE_PROPERTY( FilterData, FLAG_MODEL )
      84        2308 :         else WRITE_PROPERTY( FilterName, FLAG_MODEL )
      85        1788 :         else WRITE_PROPERTY( FilterFlags, FLAG_DEPRECATED)
      86        1788 :         else WRITE_PROPERTY( FilterOptions, FLAG_MODEL )
      87        1788 :         else WRITE_PROPERTY( FrameName, FLAG_MODEL )
      88        1788 :         else WRITE_PROPERTY( Hidden, FLAG_MODEL )
      89        1788 :         else WRITE_PROPERTY( HierarchicalDocumentName, FLAG_MODEL )
      90        1286 :         else WRITE_PROPERTY( OutputStream, 0 )
      91        1286 :         else WRITE_PROPERTY( InputStream, 0 )
      92        1268 :         else WRITE_PROPERTY( InteractionHandler, 0 )
      93        1256 :         else WRITE_PROPERTY( JumpMark, 0 )
      94        1256 :         else WRITE_PROPERTY( MediaType, FLAG_MODEL )
      95        1256 :         else WRITE_PROPERTY( OpenFlags, FLAG_DEPRECATED )
      96        1256 :         else WRITE_PROPERTY( OpenNewView, 0 )
      97        1256 :         else WRITE_PROPERTY( Overwrite, FLAG_MODEL )
      98        1256 :         else WRITE_PROPERTY( Password, FLAG_MODEL )
      99        1256 :         else WRITE_PROPERTY( PosSize, 0 )
     100        1256 :         else WRITE_PROPERTY( PostData, 0 )
     101        1256 :         else WRITE_PROPERTY( PostString, FLAG_DEPRECATED )
     102        1256 :         else WRITE_PROPERTY( Preview, FLAG_MODEL )
     103        1256 :         else WRITE_PROPERTY( ReadOnly, 0 )
     104        1100 :         else WRITE_PROPERTY( Referer, FLAG_MODEL )
     105        1100 :         else WRITE_PROPERTY( SetEmbedded, 0 )
     106        1100 :         else WRITE_PROPERTY( Silent, 0 )
     107        1100 :         else WRITE_PROPERTY( StatusIndicator, 0 )
     108        1088 :         else WRITE_PROPERTY( Storage, FLAG_MODEL )
     109         580 :         else WRITE_PROPERTY( Stream, FLAG_MODEL )
     110         568 :         else WRITE_PROPERTY( TemplateName, FLAG_DEPRECATED )
     111         568 :         else WRITE_PROPERTY( TemplateRegionName, FLAG_DEPRECATED )
     112         568 :         else WRITE_PROPERTY( Unpacked, FLAG_MODEL )
     113         568 :         else WRITE_PROPERTY( URL, FLAG_MODEL )
     114         550 :         else WRITE_PROPERTY( Version, FLAG_MODEL )
     115         550 :         else WRITE_PROPERTY( ViewData, FLAG_MODEL )
     116         550 :         else WRITE_PROPERTY( ViewId, FLAG_MODEL )
     117         550 :         else WRITE_PROPERTY( WinExtent, FLAG_DEPRECATED )
     118             :         else
     119             :         {
     120         550 :             m_aAdditionalProperties[nAdditionalCount]=rProp;
     121         550 :             nAdditionalCount++;
     122             :         }
     123             :     }
     124             : 
     125         520 :     m_aRegularProperties.realloc(nRegularCount);
     126         520 :     m_aDeprecatedProperties.realloc(nDeprecatedCount);
     127         520 :     m_aAdditionalProperties.realloc(nAdditionalCount);
     128         520 :     m_aModelProperties.realloc(nModelCount);
     129         520 : }
     130             : 
     131         520 : void MediaDescriptorHelper::impl_init()
     132             : {
     133         520 :     AsTemplate = sal_False;
     134         520 :     ISSET_AsTemplate = sal_False;
     135             : 
     136         520 :     ISSET_Author = sal_False;
     137         520 :     ISSET_CharacterSet = sal_False;
     138         520 :     ISSET_Comment = sal_False;
     139             : 
     140             : //  ::com::sun::star::uno::Any  ComponentData;
     141         520 :     ISSET_ComponentData = sal_False;
     142         520 :     ISSET_FileName = sal_False;
     143             : 
     144             : //  ::com::sun::star::uno::Any  FilterData;
     145         520 :     ISSET_FilterData = sal_False;
     146         520 :     ISSET_FilterName = sal_False;
     147         520 :     ISSET_FilterFlags = sal_False;
     148         520 :     ISSET_FilterOptions = sal_False;
     149         520 :     ISSET_FrameName = sal_False;
     150             : 
     151         520 :     Hidden = sal_False;
     152         520 :     ISSET_Hidden = sal_False;
     153         520 :     ISSET_HierarchicalDocumentName = sal_False;
     154         520 :     ISSET_OutputStream = sal_False;
     155         520 :     ISSET_InputStream = sal_False;
     156         520 :     ISSET_InteractionHandler = sal_False;
     157         520 :     ISSET_JumpMark = sal_False;
     158         520 :     ISSET_MediaType = sal_False;
     159         520 :     ISSET_OpenFlags = sal_False;
     160         520 :     OpenNewView = sal_False;
     161         520 :     ISSET_OpenNewView = sal_False;
     162         520 :     Overwrite = sal_False;
     163         520 :     ISSET_Overwrite = sal_False;
     164         520 :     ISSET_Password = sal_False;
     165             : 
     166             : //  ::com::sun::star::awt::Rectangle PosSize;
     167         520 :     ISSET_PosSize = sal_False;
     168             : 
     169             : //  ::com::sun::star::uno::Sequence< sal_Int8 > PostData;
     170         520 :     ISSET_PostData = sal_False;
     171         520 :     ISSET_PostString = sal_False;
     172         520 :     Preview = sal_False;
     173         520 :     ISSET_Preview = sal_False;
     174         520 :     ReadOnly = sal_False;
     175         520 :     ISSET_ReadOnly = sal_False;
     176         520 :     ISSET_Referer = sal_False;
     177         520 :     ISSET_StatusIndicator = sal_False;
     178         520 :     Silent = sal_False;
     179         520 :     ISSET_Silent = sal_False;
     180         520 :     ISSET_TemplateName = sal_False;
     181         520 :     ISSET_TemplateRegionName = sal_False;
     182         520 :     Unpacked = sal_False;
     183         520 :     ISSET_Unpacked = sal_False;
     184         520 :     ISSET_URL = sal_False;
     185         520 :     Version = 0;
     186         520 :     ISSET_Version = sal_False;
     187             : 
     188             : //  ::com::sun::star::uno::Any ViewData;
     189         520 :     ISSET_ViewData = sal_False;
     190         520 :     ViewId = 0;
     191         520 :     ISSET_ViewId = sal_False;
     192             : 
     193         520 :     ISSET_WinExtent = sal_False;
     194             : 
     195         520 :     ISSET_Storage = sal_False;
     196         520 :     ISSET_Stream = sal_False;
     197         520 : }
     198             : 
     199           0 :     uno::Sequence< beans::PropertyValue > MediaDescriptorHelper
     200             : ::getReducedForModel()
     201             : {
     202           0 :     return m_aModelProperties;
     203             : }
     204             : }
     205             : 
     206             : /* vim:set shiftwidth=4 softtabstop=4 expandtab: */

Generated by: LCOV version 1.10