[
Date Prev][
Date Next][
Thread Prev][
Thread Next][
Date Index][
Thread Index]
[
List Home]
[cdt-dev] Debugger tabs activate/deactivate methods
|
Hello,
I was working on some contrived defaulting logic in debugger, and run into what
seems a problem with CDT.
At present, all tabs of C launch configurations are extending AbstractLaunchConfigurationTab,
which has this code:
public void deactivated(ILaunchConfigurationWorkingCopy workingCopy) {
performApply(workingCopy);
}
It appears that *most* of configuration tabs actually used in CDT override
that method with an empty one. In particular, see:
- CommonTab.deactivated
- RefreshTab.deactivated
- EnvironmentTab.deactivated
Some tabs do not, including both the CMainTab and CDebuggerTab. If I understand
correctly, the above definition of deactivated would only matter if a tab has
failed to call updateLaunchConfigurationDialog when the user changes something --
and in that case we already have a bug that 'deactivated' cannot fix. So,
deactivated only servers to complicate the logic, without solving any problem.
So, why don't we define deactivated as empty method of *all* tabs used in CDT?
Specifically, I propose defining that method as empty in CLaunchConfigurationTab.
Comments? The actual patch is trivial, but I wanted to get feedback first.
Thanks,
--
Vladimir Prus
CodeSourcery
vladimir@xxxxxxxxxxxxxxxx
(650) 331-3385 x722