another ugly cast removal
This commit is contained in:
@@ -186,9 +186,6 @@ int main(int argc, char *argv[])
|
|||||||
|
|
||||||
gettimeofday(&now, 0);
|
gettimeofday(&now, 0);
|
||||||
|
|
||||||
// this type of casting is absolutely hillarious lol
|
|
||||||
Screen<Window> *&myWindow = *(Screen<Window> **)(void *)&myScreen;
|
|
||||||
|
|
||||||
while (!main_exit)
|
while (!main_exit)
|
||||||
{
|
{
|
||||||
if (!Mpd->Connected())
|
if (!Mpd->Connected())
|
||||||
@@ -246,10 +243,9 @@ int main(int argc, char *argv[])
|
|||||||
// header stuff end
|
// header stuff end
|
||||||
|
|
||||||
myScreen->Update();
|
myScreen->Update();
|
||||||
|
myScreen->RefreshWindow();
|
||||||
|
myScreen->ReadKey(input);
|
||||||
|
|
||||||
myWindow->Main()->Display();
|
|
||||||
|
|
||||||
myWindow->Main()->ReadKey(input);
|
|
||||||
if (input == ERR)
|
if (input == ERR)
|
||||||
continue;
|
continue;
|
||||||
|
|
||||||
|
|||||||
14
src/screen.h
14
src/screen.h
@@ -43,6 +43,8 @@ class BasicScreen
|
|||||||
|
|
||||||
virtual void Update() { }
|
virtual void Update() { }
|
||||||
virtual void Refresh() = 0;
|
virtual void Refresh() = 0;
|
||||||
|
virtual void RefreshWindow() = 0;
|
||||||
|
virtual void ReadKey(int &) = 0;
|
||||||
virtual void Scroll(Where, const int * = 0) = 0;
|
virtual void Scroll(Where, const int * = 0) = 0;
|
||||||
|
|
||||||
virtual void EnterPressed() { }
|
virtual void EnterPressed() { }
|
||||||
@@ -70,6 +72,8 @@ template <class WindowType> class Screen : public BasicScreen
|
|||||||
WindowType *&Main();
|
WindowType *&Main();
|
||||||
|
|
||||||
virtual void Refresh();
|
virtual void Refresh();
|
||||||
|
virtual void RefreshWindow();
|
||||||
|
virtual void ReadKey(int &input);
|
||||||
virtual void Scroll(Where where, const int *);
|
virtual void Scroll(Where where, const int *);
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
@@ -91,6 +95,16 @@ template <class WindowType> void Screen<WindowType>::Refresh()
|
|||||||
w->Display();
|
w->Display();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
template <class WindowType> void Screen<WindowType>::RefreshWindow()
|
||||||
|
{
|
||||||
|
w->Display();
|
||||||
|
}
|
||||||
|
|
||||||
|
template <class WindowType> void Screen<WindowType>::ReadKey(int &input)
|
||||||
|
{
|
||||||
|
w->ReadKey(input);
|
||||||
|
}
|
||||||
|
|
||||||
template <class WindowType> void Screen<WindowType>::Scroll(Where where, const int *key)
|
template <class WindowType> void Screen<WindowType>::Scroll(Where where, const int *key)
|
||||||
{
|
{
|
||||||
if (!Config.fancy_scrolling && key)
|
if (!Config.fancy_scrolling && key)
|
||||||
|
|||||||
Reference in New Issue
Block a user