GME
13
|
00001 #if(0) // this class is not used for smart copy anymore 00002 #ifndef KIND_CLOSURE_H 00003 #define KIND_CLOSURE_H 00004 00005 #include "MakeClosure.h" 00006 00007 class CKindSelectClosure : public CMakeClosure 00008 { 00009 public: 00010 CKindSelectClosure 00011 ( IMgaFCOs *fcos 00012 , IMgaFolders *fols 00013 , int refs = 1 00014 , int conns = 1 00015 , int sets = 1 00016 ) 00017 : CMakeClosure 00018 ( fcos 00019 , fols 00020 , 0 //ref 00021 , 0 //refd 00022 , 0 //conn 00023 , 0 //refportconn 00024 , 0 //set_mem 00025 , 0 //mem_of_set 00026 , 1 //cont 00027 , 0 //part_of_mod 00028 , 1 //fold_cont 00029 , 0 //part_of_fold 00030 , 0 //base_type 00031 , 0 //derived_type 00032 , LIB_STUBS //into_libr 00033 , 3 //container_opt( 3) 00034 , 1 //direction_opt 00035 , -1 //all kinds 00036 , -1 //don't mark 00037 ) 00038 , m_bRefs( refs == 1) 00039 , m_bConns( conns == 1) 00040 , m_bSets( sets == 1) 00041 , m_peculiarFolds() 00042 , m_peculiarFcos() 00043 { } 00044 00045 ~CKindSelectClosure() 00046 { 00047 m_peculiarFolds.clear(); 00048 m_peculiarFcos.clear(); 00049 } 00050 00051 /*void getSpecFCOs( IMgaFCOs **spec_fcos); 00052 void getSpecFolders( IMgaFolders **spec_folds);*/ 00053 00054 /*virtual*/ void procObj( IMgaObject* obj); 00055 /*virtual*/ bool isValidSelection(); 00056 /*virtual*/ bool postValidateSelection(); 00057 /*virtual*/ void preProcess(); 00058 /*virtual*/ void postProcess(); 00059 std::string m_iniSelPath; 00060 std::string m_accKind; // to store the special container kind the closure has been initiated from 00061 protected: 00062 bool m_bRefs; 00063 bool m_bConns; 00064 bool m_bSets; 00065 00066 CComObjPtrVector<IMgaFolder> m_peculiarFolds; 00067 CComObjPtrVector<IMgaFCO> m_peculiarFcos; 00068 }; 00069 00070 00071 class CContainerSelectSomeKindClosure : public CKindSelectClosure 00072 { 00073 public: 00074 CContainerSelectSomeKindClosure 00075 ( IMgaFCOs *fcos 00076 , IMgaFolders *fols 00077 , int refs = 1 00078 , int conns = 1 00079 , int sets = 1 00080 ) 00081 : CKindSelectClosure 00082 ( fcos 00083 , fols 00084 , refs 00085 , conns 00086 , sets 00087 ) 00088 { } 00089 00090 /*virtual*/ bool isValidSelection(); 00091 /*virtual*/ void postProcess(); 00092 protected: 00093 00094 }; 00095 00096 struct ConnsLast 00097 { 00098 bool operator()( const CComObjPtr<IMgaFCO>& p1, const CComObjPtr<IMgaFCO>& p2) const; 00099 }; 00100 00101 #endif // KIND_CLOSURE_H 00102 #endif