I'm more of a "back-end" Java developer, but with all the advances in Javascript Frameworks like CKEditor, I'm getting into JavaScript development again.
I'm working on a custom skin for my company and part of that work involves using existing sprite based image files. These files are not in the single-column layout that CKEditor uses. Yes, I can get around that to a large degree with CSS, but I would like to propose a change to CKEDITOR.skin.addIcon such that it takes four parameters, vs. the current three:
IconName [String],
IconFile [String],
y-pos [Number],
x-pos [Number]
...such that I can use: CKEDITOR.skin.addIcon calls in my skin.js
I'm hoping that the current 'y-pos' only method is just an artifactt of the CKEditor4 build process of creating a single column sprites based icon.png file from the plugins "at build", so the idea of needing an 'x-pos' just wasn't considered?
OR is there a real design reason why the decision was made to only provide y-pos? Putting the x-pos after the y-pos breaks the normal nominclature, BUT doing it this way would make it backwards compatible.
Just wanted to propose this before digging into the Developer's Guide for submitting a formal pull/change-request.
Thoughts?

I'm hoping that the current
You're totally right in your reasoning :)
Thank you for noticing this. Please use GitHub to submit a pull request with this change. Thanks!
Documentation Manager, CKSource
See CKEditor 5 docs, CKEditor 4 docs, CKEditor 3 docs, CKFinder 3 docs, CKFinder 2 docs for help.
Visit the new CKEditor SDK for samples showcasing editor features to try out and download!
github
I forked's the latest head of ckeditor-dev, commited the change back, and generated a Pull Request. This'll be my first "public" GitHub commit, so if y'all have any feedback let me know!
THANKS!
Override order
In my commit, I added the additionaal post_horz field, but I also removed the "if previous value don't override" logic. My reasoning is that pretty much any call to addIcon should always expect to set the icon, regardless if there was already a previous value there. This enables a custom skin to set specific (and even seeprate) icon "overrides", especially since the "ckbuilder.jar" seems to automatically create a default icons.png that get's presendence if this check-in-the-code is left in place.
Based on all my testing it seems that this does introduce one new issue. The current the load order works this way:
...that is problematic, as any custom skin.js should be the last thing to load because that's where any "override values" are going to be set for icons. Can you recommend where to start to look in the code to modify this "load order", and I'll submit that change seperately.