if (A && B)
{
}
else if (A && !B)
{
}
is not legal as you can not fully test 1 of the four branches in the "else if()" case. Even "default" statements in "case" statements that can not be executed (because the switch statements cover 100% of the available options) can be an issue.
You will find your self in serious trouble moving forward if you tie yourself to only knowing a single company's toolset and tying your future to the well being of that companies tool set. Especially Adobe's; a company as fickle as Apple.