OpenWalnut  1.4.0
WPropertyHelper.cpp
1 //---------------------------------------------------------------------------
2 //
3 // Project: OpenWalnut ( http://www.openwalnut.org )
4 //
5 // Copyright 2009 OpenWalnut Community, BSV@Uni-Leipzig and CNCF@MPI-CBS
6 // For more information see http://www.openwalnut.org/copying
7 //
8 // This file is part of OpenWalnut.
9 //
10 // OpenWalnut is free software: you can redistribute it and/or modify
11 // it under the terms of the GNU Lesser General Public License as published by
12 // the Free Software Foundation, either version 3 of the License, or
13 // (at your option) any later version.
14 //
15 // OpenWalnut is distributed in the hope that it will be useful,
16 // but WITHOUT ANY WARRANTY; without even the implied warranty of
17 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
18 // GNU Lesser General Public License for more details.
19 //
20 // You should have received a copy of the GNU Lesser General Public License
21 // along with OpenWalnut. If not, see <http://www.gnu.org/licenses/>.
22 //
23 //---------------------------------------------------------------------------
24 
25 #include "WPropertyHelper.h"
26 
27 namespace WPropertyHelper
28 {
29  namespace PC_SELECTONLYONE
30  {
31  void addTo( WPropSelection prop )
32  {
33  prop->addConstraint( boost::shared_ptr< WPropertyConstraintSelectOnlyOne< WPVBaseTypes::PV_SELECTION > >(
35  ) );
36  }
37  }
38 
39  namespace PC_NOTEMPTY
40  {
41  void addTo( WPropSelection prop )
42  {
43  prop->addConstraint( boost::shared_ptr< WPropertyConstraintNotEmpty< WPVBaseTypes::PV_SELECTION > >(
45  ) );
46  }
47 
48  void addTo( WPropString prop )
49  {
50  prop->addConstraint( boost::shared_ptr< WPropertyConstraintNotEmpty< WPVBaseTypes::PV_STRING > >(
52  ) );
53  }
54 
55  void addTo( WPropFilename prop )
56  {
57  prop->addConstraint( boost::shared_ptr< WPropertyConstraintNotEmpty< WPVBaseTypes::PV_PATH > >(
59  ) );
60  }
61  }
62 
63  namespace PC_PATHEXISTS
64  {
65  void addTo( WPropFilename prop )
66  {
67  prop->addConstraint( boost::shared_ptr< WPropertyConstraintPathExists< WPVBaseTypes::PV_PATH > >(
69  ) );
70  }
71  }
72 
73  namespace PC_ISDIRECTORY
74  {
75  void addTo( WPropFilename prop )
76  {
77  prop->addConstraint( boost::shared_ptr< WPropertyConstraintIsDirectory< WPVBaseTypes::PV_PATH > >(
79  ) );
80  }
81  }
82 
83  namespace PC_ISVALID
84  {
85  void addTo( WPropSelection prop )
86  {
87  prop->addConstraint( boost::shared_ptr< WPropertyConstraintIsValid< WPVBaseTypes::PV_SELECTION > >(
89  ) );
90  }
91  }
92 }
void addTo(WPropFilename prop)
Add the PC_PATHEXISTS constraint to the property.
This class allows constraining selection properties to not allow selection of multiple items...
This class allows constraining properties to be existing filenames.
void addTo(WPropFilename prop)
Add the PC_PATHEXISTS constraint to the property.
void addTo(WPropSelection prop)
Add the PC_NOTEMPTY constraint to the property.
This class allows constraining properties to be existing filenames.
This class allows constraining properties to be not empty.
This class allows constraining properties to only be set if a isValid method returns true...
void addTo(WPropSelection prop)
Add the PC_ISVALID constraint to the property.
void addTo(WPropSelection prop)
Add the PC_SELECTONLYONE constraint to the property.