Shinya Kitaoka 810553
#pragma once
Toshihiro Shimizu 890ddd
Toshihiro Shimizu 890ddd
#ifndef SELECTIONUTILS_H
Toshihiro Shimizu 890ddd
#define SELECTIONUTILS_H
Toshihiro Shimizu 890ddd
Toshihiro Shimizu 890ddd
// TnzCore includes
Toshihiro Shimizu 890ddd
#include "tfilepath.h"
Toshihiro Shimizu 890ddd
Toshihiro Shimizu 890ddd
// STL includes
Toshihiro Shimizu 890ddd
#include <set></set>
Toshihiro Shimizu 890ddd
#include <map></map>
Toshihiro Shimizu 890ddd
Toshihiro Shimizu 890ddd
//==============================================================
Toshihiro Shimizu 890ddd
Toshihiro Shimizu 890ddd
//    Forward declarations
Toshihiro Shimizu 890ddd
Toshihiro Shimizu 890ddd
class TXsheet;
Toshihiro Shimizu 890ddd
Toshihiro Shimizu 890ddd
//==============================================================
Toshihiro Shimizu 890ddd
Toshihiro Shimizu 890ddd
//*********************************************************************************
Toshihiro Shimizu 890ddd
//    Selection-related  utility functions
Toshihiro Shimizu 890ddd
//*********************************************************************************
Toshihiro Shimizu 890ddd
Shinya Kitaoka 120a6e
//! Returns the set of all level frames contained in the specified xsheet cells
Shinya Kitaoka 120a6e
//! range
Toshihiro Shimizu 890ddd
//! (r0 <= r <= r1 and c0 <= c <= c1).
Toshihiro Shimizu 890ddd
template <typename leveltype=""></typename>
Shinya Kitaoka 120a6e
void getSelectedFrames(
Shinya Kitaoka 120a6e
    const TXsheet &xsh, int r0, int c0, int r1, int c1,
Shinya Kitaoka 120a6e
    std::map<leveltype *,="" std::set<tframeid="">> &framesByLevel);</leveltype>
Toshihiro Shimizu 890ddd
Toshihiro Shimizu 890ddd
//! Returns the set of all level frames contained in current selection.
Shinya Kitaoka 120a6e
//! Recognized selection types include cell, cast, column and filmstrip
Shinya Kitaoka 120a6e
//! selections.
Toshihiro Shimizu 890ddd
template <typename leveltype=""></typename>
Shinya Kitaoka 120a6e
void getSelectedFrames(
Shinya Kitaoka 120a6e
    std::map<leveltype *,="" std::set<tframeid="">> &framesByLevel);</leveltype>
Toshihiro Shimizu 890ddd
Shinya Kitaoka 120a6e
#endif  // SELECTIONUTILS_H