more verbose gui component disposal logic