--- trunk/src/selection/SelectionManager.cpp 2005/02/15 19:39:56 352 +++ trunk/src/selection/SelectionManager.cpp 2005/02/16 19:36:30 353 @@ -82,7 +82,7 @@ StuntDouble* SelectionManager::nextSelected(int& i) { return i == -1 ? NULL : stuntdoubles_[i]; } -StuntDouble* SelectionManager::beginUnselected(int& i) { +StuntDouble* SelectionManager::beginUnselected(int& i){ i = bsSelection_.firstOffBit(); return i == -1 ? NULL : stuntdoubles_[i]; } @@ -91,4 +91,29 @@ StuntDouble* SelectionManager::nextUnSelected(int& i) return i == -1 ? NULL : stuntdoubles_[i]; } + +SelectionManager operator| (const SelectionManager& sman1, const SelectionManager& sman2) { + SelectionManager result(sman1); + result |= sman2; + return result; } +SelectionManager operator& (const SelectionManager& sman1, const SelectionManager& sman2) { + SelectionManager result(sman1); + result &= sman2; + return result; + +} +SelectionManager operator^ (const SelectionManager& sman1, const SelectionManager& sman2) { + SelectionManager result(sman1); + result ^= sman2; + return result; + +} +SelectionManager operator-(const SelectionManager& sman1, const SelectionManager& sman2){ + SelectionManager result(sman1); + result -= sman2; + return result; + +} + +}