Quote:assuming you want to display some exif information on the osd,
it would require c++ changes in core.
Well, yea, display of EXIF info (including even proper human-readable representation of longitude/latitude coordinates, such as my Lumix DMC-ZS7 is alleged to be able to tag pictures with) would sure be nice, but actually, I have some even much more grandiose ideas in mind, many/most of which are probably going to take more effort that I'll ever have time for.
I'll tell you all what I have in mind and then you can tell me which ones are impractical without core C++ changes... not that that really makes any big difference... I'm more comfortable with C++ than I am with XML. But first, before I lose the impatient readers, I have a couple more quick questions:
1) I read that (supposedly) if I already have something called skin.foo in my ~/.xbmc/addons directory, then I can (allegedly) just make a copy of that (for hacking purposes, so as not to disturb the original) by just cd'ing into my ~/.xbmc/addons directory and then doing something like:
Code:
cp -R skin.foo skin.foo2
Well, I tried that and then started up xbmc again with the hope that it would now present me with a new "foo2" skin choice, but it didn't. It was as if nothing had changed. So what did I do wrong? Is there some specific file I have to diddle in order to "register" the existence of my new "foo2" skin?
2) I happen to have a Logitech M305 mouse. This is one of many models (from Logitech and other manufacturers) that has a scroll wheel in the middle that can be pressed down (middle button) or else which can also be tilted either left or right. I would like to bind some actions to those two specific mouse actions in my personal experimental skin (scrollleft/scrollright). Can someone give me a clue how to do this? I haven't had much time since my last post to really bear down into the available documentation, but when I did glance at some of it I saw no mention of "scroll left" and/or "scroll right" input actions (but really, a
lot of mice these days have these possible actions).
So anyway, about what I have in mind for a "Pictures" OSD...
Well, think of all of the things you might possibly like to do to the pictures you took on your last vacation (or your last dinner party or whatever) while viewing them, e.g. on your big screen TeeVee. Perhaps it is because once, long ago, I was (briefly) a professional photographer, but immediately, all of these things come to mind:
*) rotate 90' left
*) rotate 90; right
*) rotate 180'
*) for extra credit... rotate at arbitrary angles
*) zoom in/out... but
not with keyboard commands (1,2,3...0), just with
mouse commands{*}
*) when zoomed in, shift picture left, right, up or down, but again,
only with mouse commands (drag & drop?)
*) have on the OSD some mouse-usable sliders that would allow adjustment of (1) brightness (2) contrast (3) hue (4) saturation
For many of the above effects (except zoom in/out and shift visible part of the current picture) there could be / should be also a button on the OSD that would allow changes made to the picture to be saved back to disk and/or to have them stashed somewhere so that they don't really affect the existing JPEG/GIF/whatever file, but instead are just saved so that the next time you fire up XBMC, when it displays that same JPEG/GIF/whatever file for you next time, it will first apply all the same adjustments, e.g. brightness, contrast, hue, saturation, rotation. (The per-picture adjustments could be saved in a separate file or else perhaps stashed somehow into the EXIF info in a way that doesn't harm anything else.) And since, when taking pictures in a given setting, it is often true that
all pictures in a group will have similarly messed up contrast, brightness, hue, or saturation, it would also be nice to have a button (in the Pictures OSD) that would apply any of those kinds of changes that the user had made to the current picture also to (a) all pictures in the current directory or else (b) all pictures in the current directory with the same date stamp as the current one.
I also have in mind one more enhancement for "Pictures" that would not (probably) involve an OSD. Basically, if you have a new-ish digital camera, then you might already have this feature in your camera.
For some modern digital camera models, when you are viewing photos you have taken on the camera's LCD, if you push the zoom-out lever (once) you will see on the LCD a matrix of four (2x2) pictures that all come from the sequence right around the one that you were looking at. Then, if you press zoom-out again, you'll then be looking at a matrix of nine (3x3) pictures from the sequence, and then push again and you'll see a matrix of sixteen (4x4). So anyway, it would be Nice to have this kind of effect available too. (Thumbnails listing format is Nice, but not quite as nice as what I just described.)
Note that I am
not suggesting to include the kitchen sink. I certainly would think that it would be dramatic overkill to incorporate all of the features of, say, either gimp or else ImageMagick when it comes to their vast abilities to manipulate images. But goof ups, large or small, of rotation, contrast, brightness, hue, and saturation are just very very common problems for virtually every amateur photographer, so it seems reasonable to include an OSD for Pictures that would allow the user to easily adjust these things on the fly, mostly with intuitively obvious slider-type controls.
{*} Just one last comment about mice... I went and bought one of those MCE compatible remote controls. It was basically this one:
http://www.newegg.com/Product/Product.as...6823166095
Then, I sat back on my couch and tried to use it with XBMC. After about five minutes I gave up in disgust and went and got my mouse and I've been using that instead ever since, even from my couch, to control XBMC. The remote was just too annoyingly slow whenever I wanted to just simply move the ``mouse'' cursor from one place to another on the screen. This was true
despite the fact that this remote has a little round pad in the center which is supposed to be a nice of substitute for a tiny touch-pad type thing.
Anyway, the bottom line is that everything that
I personally might get around to implementing in the way of new xbmc features would be (will be) all 100% mouse-oriented. I'm 100% convinced that using remotes to control XBMC is for the birds, and likewise, I don't think that I should ever need (and it does not seem that I will ever need) a
keyboard sitting next to me on the couch. Why would I? Whenever xbmc needs some actual string typed in, it seems to pop up a little data entry thingy which allows selection of letters/numbers/symbols using only a mouse. So except for one annoying case of zoom-in/zoom-out on pictures (which I hope to rectify soon), I have yet to find a single thing on xbmc that I could not do with just a mouse (and often do better with just a mouse).