Thanks Jason -- I still haven't been able to make this work. It's quite frustrating. I've noticed that it's possible to add a tab to the *right* of existing tabs, but not to replace/repurpose existing tabs (or add tabs to the *left* of existing tabs).
Re the regClientCSS: the problem is that you cannot override stuff. The functionality is keyed off the
path, so doing something like
$modx->regClientCSS('/x.css');
$modx->regClientCSS('/x.css');
will result in only one stylesheet link being printed into the document, but you cannot do the same when you really do want to replace the original file. In other words, the following loads both files:
$modx->regClientCSS('/x.css');
$modx->regClientCSS('/replace-x.css');
There's no way for you to replace the built-in CSS and JS files that are loaded in the manager requests. The best you can do is load your own modifications after the built-in files are loaded, but sometimes that's too late to affect certain behavior, it's not what you wanted, and it makes the manager slower than it already is.
I filed a bug report about this:
http://tracker.modx.com/issues/10101 The MODX manager needs a "de-register" function and/or a way to uniquely identify each file loaded off of something besides its URL. WordPress, for example, keys these off of handles like 'jquery' etc. precisely for this reason: it allows you to unload and replace core elements (e.g. by using a CDN version of a file).
Having a few more functions would make our lives easier, but ultimately, we need more documentation on how to do this.