Dramatically improve handling of cursors

Many thanks to Skinner's Atlas

Fixes #406
This commit is contained in:
Jordan Eldredge 2018-01-24 09:12:41 -08:00
parent e5c5adce10
commit a46fbc80e9
7 changed files with 55 additions and 13 deletions

View file

@ -14,6 +14,7 @@ const CURSORS = [
"EQSLID",
"EQTITLE",
"MAINMENU",
"MMENU",
"MIN",
"NORMAL",
"PCLOSE",
@ -28,13 +29,27 @@ const CURSORS = [
"SONGNAME",
"TITLEBAR",
"VOLBAL",
"VOLBAR",
"WINBUT",
"WSCLOSE",
"WSMIN",
"WSNORMAL",
"WSPOSBAR",
"WSWINBUT"
"WSPOSBAR"
/*
* > There are usually 4 more cursors in the skins: volbar.cur, wsclose.cur,
* > wswinbut.cur, wsmin.cur, but they are never used, at least in the last
* > versions of winamp, so there's no need of including them. The cursors
* > shown when the mouse is over the app-buttons are the same in normal and
* > winshade mode, except for the main menu button. You can make animated
* > cursors, but you have to name them with the extension .cur (animated
* > cursors are usually .ani files).
*
* -- Skinners Atlas
*
* "VOLBAR",
* "WSCLOSE",
* "WSWINBUT",
* "WSMIN",
*
*/
];
const _genImgFromBlob = async blob =>

View file

@ -324,19 +324,47 @@ LETTERS.forEach(character => {
});
export const cursorSelectors = {
PSIZE: ["#playlist-window #playlist-resize-target"],
CLOSE: ["#title-bar #close"],
MAINMENU: ["#main-window", "#main-window.shade #title-bar"],
TITLEBAR: ["#main-window #title-bar"],
POSBAR: ["#position"],
VOLBAL: ["#volume", "#balance"],
EQSLID: ["#equalizer-window .band"],
EQNORMAL: ["#equalizer-window"],
EQCLOSE: ["#equalizer-window #equalizer-close"],
EQTITLE: [
"#equalizer-window .title-bar",
"#equalizer-window.shade",
"#equalizer-window.shade input"
],
MAINMENU: ["#main-window #option"],
MIN: ["#main-window #minimize"],
NORMAL: [
// Use this as the default cursor.
".window",
"#main-window",
"#main-window.shade #title-bar"
],
MMENU: ["#main-window.shade #option"],
PNORMAL: ["#playlist-window"],
PVSCROLL: ["#playlist-window .playlist-scrollbar-wrapper"],
SONGNAME: ["#main-window #marquee"]
// TODO: This is should really only apply to the top part of the top.
// The chrome around the playlist window is larger than others. The
// cursor only applies to the same height as the other window's chrome.
PTBAR: ["#playlist-window .playlist-top"],
PCLOSE: [
"#playlist-window #playlist-close-button",
"#playlist-window-shade #playlist-close-button"
],
PWINBUT: [
"#playlist-window #playlist-shade-button",
"#playlist-window-shade #playlist-shade-button"
],
POSBAR: ["#main-window #position"],
PSIZE: ["#playlist-window #playlist-resize-target"],
PWSSIZE: ["#playlist-window-shade #playlist-resize-target"],
PWSNORM: ["#playlist-window-shade"],
// TODO: The target for this is not quite right.
PVSCROLL: ["#playlist-window .playlist-scrollbar"],
SONGNAME: ["#main-window #marquee"],
TITLEBAR: ["#main-window #title-bar"],
VOLBAL: ["#volume", "#balance"],
WINBUT: ["#main-window #shade"],
WSNORMAL: ["#main-window.shade #title-bar"],
WSPOSBAR: ["#main-window.shade #position"]
};

1
skins/.gitignore vendored
View file

@ -1,3 +1,2 @@
base-2.91.zip
base-2.91/
Skinner_Atlas/

Binary file not shown.

View file

Before

Width:  |  Height:  |  Size: 766 B

After

Width:  |  Height:  |  Size: 766 B

Before After
Before After

BIN
skins/base-2.91/PNORMAL.CUR Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 766 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 766 B