diff options
author | mescalinum <mescalinum@users.sourceforge.net> | 2009-09-26 18:28:46 +0000 |
---|---|---|
committer | mescalinum <mescalinum@users.sourceforge.net> | 2009-09-26 18:28:46 +0000 |
commit | 48166a3836ea82ebbab1d622d5ff770eefbd59a1 (patch) | |
tree | d16abd76aa47c5e1cece01689db07051b80c5454 /composer/Track.cpp | |
parent | becd4c66f77da3ff9078ec06aebb9ade3247e30b (diff) |
- fix update issues with resize/rename/creation
- allow to resize patterns by any dimension
- add license docs
- makefile fixes
svn path=/trunk/externals/ffext/; revision=12466
Diffstat (limited to 'composer/Track.cpp')
-rw-r--r-- | composer/Track.cpp | 22 |
1 files changed, 9 insertions, 13 deletions
diff --git a/composer/Track.cpp b/composer/Track.cpp index 2154ecf..ae02ed5 100644 --- a/composer/Track.cpp +++ b/composer/Track.cpp @@ -27,10 +27,6 @@ void Track::print() { cerr << "---- Track: " << name << " ----" << endl; - /*for(unsigned int i = 0; i < patterns.size(); i++) - { - cerr << " Pattern[" << patterns[i]->getName() << "]: " << patterns[i]->getName() << endl; - }*/ for(map<string,Pattern *>::iterator i = patterns.begin(); i != patterns.end(); i++) { cerr << " Pattern[" << i->first << "]: " << i->second->getName() << endl; @@ -42,18 +38,9 @@ void Track::print() void Track::addPattern(int rows, int cols, string name) { Pattern *pattern = new Pattern(rows, cols, name); - //patterns.push_back(pattern); patterns[name] = pattern; } -/*Pattern *Track::getPattern(int n) -{ - if(n < 0 || n >= patterns.size()) - return 0; - else - return patterns[n]; -}*/ - Pattern *Track::getPattern(const string &p) { if(patterns.find(p) != patterns.end()) @@ -61,3 +48,12 @@ Pattern *Track::getPattern(const string &p) else return 0; } + +void Track::renamePattern(const string &oldName, const string &newName) +{ + Pattern *pattern = getPattern(oldName); + if(!pattern) return; + pattern->setName(newName); + patterns[newName] = patterns[oldName]; + patterns.erase(oldName); +} |