Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- tgroup* twindow::add_group(const std::string& id)
- {
- FOREACH(const AUTO & group, groups_)
- {
- if(group.id() == id) {
- // TODO: add error?
- return NULL;
- }
- }
- groups_.push_back(*(new tgroup(id)));
- return groups_.last();
- }
- void twindow::add_to_group(tgroup* group, twidget* widget)
- {
- group.add_member(widget);
- }
- tgroup* twindow::add_to_group(const std::string& group_id, twidget* widget,
- const bool create_if_nonexistant)
- {
- FOREACH(AUTO & group, groups_)
- {
- if(group.id() == group_id) {
- group.add_member(widget);
- return &group;
- }
- }
- if(create_if_nonexistant) {
- tgroup* new_group = add_group(group_id);
- assert(new_group);
- add_to_group(new_group, widget);
- return new_group;
- } else {
- // TODO: add error?
- }
- return NULL;
- }
Advertisement
Add Comment
Please, Sign In to add comment