aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/Editor.h
diff options
context:
space:
mode:
authorNeil Hodgson <nyamatongwe@gmail.com>2014-07-15 12:04:54 +1000
committerNeil Hodgson <nyamatongwe@gmail.com>2014-07-15 12:04:54 +1000
commita4d36c2b76d188199d9b16b4556d9aa88c412731 (patch)
treeb79d163e39dcfcc214e3c4c95111cba90b664203 /src/Editor.h
parenta04e3bb80fe893b98f7bd4d66d4bb44ad50b5b13 (diff)
downloadscintilla-mirror-a4d36c2b76d188199d9b16b4556d9aa88c412731.tar.gz
Implement separate timers for each type of periodic activity and turn them on and off
as required. This saves power as there are fewer wake ups. A tolerance value is provided so that platforms that support coalescing timers, Windows 8+ and OS X 10.9+, can use them. The previous global 100 millisecond timer may still be used by non-core platforms.
Diffstat (limited to 'src/Editor.h')
-rw-r--r--src/Editor.h8
1 files changed, 7 insertions, 1 deletions
diff --git a/src/Editor.h b/src/Editor.h
index 53da90906..d80292a0a 100644
--- a/src/Editor.h
+++ b/src/Editor.h
@@ -500,7 +500,13 @@ protected: // ScintillaBase subclass needs access to much of Editor
void Tick();
bool Idle();
- virtual void SetTicking(bool on) = 0;
+ virtual void SetTicking(bool on);
+ enum TickReason { tickCaret, tickScroll, tickWiden, tickDwell, tickPlatform };
+ virtual void TickFor(TickReason reason);
+ virtual bool FineTickerAvailable();
+ virtual bool FineTickerRunning(TickReason reason);
+ virtual void FineTickerStart(TickReason reason, int millis, int tolerance);
+ virtual void FineTickerCancel(TickReason reason);
virtual bool SetIdle(bool) { return false; }
virtual void SetMouseCapture(bool on) = 0;
virtual bool HaveMouseCapture() = 0;