From 1f2e53d747626ebaf89fa25959cabbf9f8d130cd Mon Sep 17 00:00:00 2001 From: David Rose Date: Mon, 1 Mar 2004 23:24:08 +0000 Subject: [PATCH] allow -drop to override -keepall --- pandatool/src/egg-optchar/eggOptchar.cxx | 15 ++++++++------- 1 file changed, 8 insertions(+), 7 deletions(-) diff --git a/pandatool/src/egg-optchar/eggOptchar.cxx b/pandatool/src/egg-optchar/eggOptchar.cxx index bb714edf22..9e31022d87 100644 --- a/pandatool/src/egg-optchar/eggOptchar.cxx +++ b/pandatool/src/egg-optchar/eggOptchar.cxx @@ -113,7 +113,8 @@ EggOptchar() { add_option ("keepall", "", 0, - "Keep all joints and sliders in the character.", + "Keep all joints and sliders in the character, except those named " + "explicitly by -drop.", &EggOptchar::dispatch_none, &_keep_all); add_option @@ -428,7 +429,12 @@ determine_removed_components() { nassertv(user_data != (EggOptcharUserData *)NULL); const string &name = comp_data->get_name(); - if (_keep_all || keep_names.find(name) != keep_names.end()) { + if (drop_names.find(name) != drop_names.end()) { + // Remove this component by user request. + names_used.insert(name); + user_data->_flags |= EggOptcharUserData::F_remove; + + } else if (_keep_all || keep_names.find(name) != keep_names.end()) { // Keep this component. names_used.insert(name); @@ -437,11 +443,6 @@ determine_removed_components() { user_data->_flags |= EggOptcharUserData::F_expose; } - } else if (drop_names.find(name) != drop_names.end()) { - // Remove this component by user request. - names_used.insert(name); - user_data->_flags |= EggOptcharUserData::F_remove; - } else { // Remove this component if it's unanimated or empty. if ((user_data->_flags & (EggOptcharUserData::F_static | EggOptcharUserData::F_empty)) != 0) {