mirror of https://github.com/buggins/dlangui.git
console backend - support async event queue, timers, tooltips
This commit is contained in:
parent
5fc7825c82
commit
380bc94f19
|
@ -1222,6 +1222,14 @@ class Window : CustomEventTarget {
|
|||
Log.d("override scheduleSystemTimer to support timers");
|
||||
}
|
||||
|
||||
/// poll expired timers; returns true if update is needed
|
||||
bool pollTimers() {
|
||||
bool res = _timerQueue.notify();
|
||||
if (res)
|
||||
update(false);
|
||||
return res;
|
||||
}
|
||||
|
||||
/// system timer interval expired - notify queue
|
||||
protected void onTimer() {
|
||||
//Log.d("window.onTimer");
|
||||
|
|
|
@ -68,6 +68,7 @@ class ConsolePlatform : Platform {
|
|||
_console.resizeEvent = &onConsoleResize;
|
||||
_console.inputIdleEvent = &onInputIdle;
|
||||
_console.init();
|
||||
_console.setCursorType(ConsoleCursorType.Invisible);
|
||||
_drawBuf = new ConsoleDrawBuf(_console);
|
||||
}
|
||||
|
||||
|
@ -154,7 +155,13 @@ class ConsolePlatform : Platform {
|
|||
}
|
||||
_needRedraw = false;
|
||||
}
|
||||
|
||||
protected bool onInputIdle() {
|
||||
checkClosedWindows();
|
||||
foreach(w; _windowList) {
|
||||
w.pollTimers();
|
||||
w.handlePostedEvents();
|
||||
}
|
||||
checkClosedWindows();
|
||||
redraw();
|
||||
_console.flush();
|
||||
|
|
|
@ -423,12 +423,12 @@
|
|||
padding="0,0,0,0"
|
||||
/>
|
||||
<style id="TOOLTIP"
|
||||
backgroundImageId="tooltip_background"
|
||||
backgroundColor="#808080"
|
||||
layoutWidth="WRAP_CONTENT"
|
||||
layoutHeight="WRAP_CONTENT"
|
||||
margins="0,0,0,0"
|
||||
padding="1,0,1,0"
|
||||
textColor="#404040"
|
||||
textColor="#00FFFF"
|
||||
/>
|
||||
<style id="TOOLBAR"
|
||||
backgroundColor="#000000"
|
||||
|
@ -443,6 +443,7 @@
|
|||
padding="0,0,0,0"
|
||||
backgroundImageId="{'┌─┐' '│ │' '└─┘' 0x808000 bc 0xFFFFFFFF ninepatch 1 1 1 1 padding 1 1 1 1}"
|
||||
>
|
||||
<state state_enabled="false" backgroundImageId="{'┌─┐' '│ │' '└─┘' 0x808080 bc 0xFFFFFFFF ninepatch 1 1 1 1 padding 1 1 1 1}"/>
|
||||
<state state_enabled="true" state_hover="true" backgroundImageId="{'┌─┐' '│ │' '└─┘' 0xFFFF00 bc 0xFFFFFFFF ninepatch 1 1 1 1 padding 1 1 1 1}"/>
|
||||
</style>
|
||||
<style id="TOOLBAR_CONTROL"
|
||||
|
|
Loading…
Reference in New Issue