Exemplo n.º 1
0
        public static IList <SongInfo> GetCurrentPlayingSong()
        {
            if (App.DebugMode)
            {
                App.Debug("===== Songinfo =====");
                App.Debug("===== Windows");
                App.Debug(OpenedWindow.GetOpenedWindows().Select(e => e.ToString()));

                App.Debug("===== Web Pages");
                var webPages = WBParser.Parse(Globals.Instance.WBDetailSearch);
                App.Debug(webPages.Select(e => e.ToString()));

                for (int i = 0; i < IParseRule.Rules.Length; ++i)
                {
                    App.Debug("===== " + IParseRule.Rules[i].Client);
                    IParseRule.Rules[i].GetCurrentPlayingSong(SongInfo.m_lastResult, webPages);
                }

                App.Debug("===== Result =====");
                SongInfo.m_lastResult.ForEach(e =>
                {
                    App.Debug("===== " + e.Rule.Client);
                    App.Debug("Title  : " + e.Title);
                    App.Debug("Artist : " + e.Artist);
                    App.Debug("Album  : " + e.Album);
                    App.Debug("Url    : " + e.Url);
                    App.Debug("Cover  : {0} Bytes", e.Cover != null ? e.Cover.Length : 0);
                    App.Debug("Local  : " + e.Local);
                    App.Debug("Handle : 0x" + e.Handle.ToString("X8"));
                    App.Debug("MainTab: " + (e.MainTab ? "1" : "0"));
                });
                App.Debug("===== END =====");
            }
            else
            {
                var webPages = WBParser.Parse(Globals.Instance.WBDetailSearch);
                Parallel.ForEach(IParseRule.Rules, e => e.GetCurrentPlayingSong(SongInfo.m_lastResult, webPages));
            }

            m_lastResult.Sort();

            return(SongInfo.m_lastResult);
        }
Exemplo n.º 2
0
 public void SetTopMode(OpenedWindow window, WindowTopMode mode)
 {
     LowLevel.SetWindowPos(window.Hwnd, (IntPtr)mode, 0, 0, 0, 0,
                           (uint)(WindowPositionParameters.NoMove | WindowPositionParameters.NoSize));
 }
Exemplo n.º 3
0
 public static void ChangeTopMode(this OpenedWindow window)
 {
     window.IsOnTop = !window.IsOnTop;
 }