aboutsummaryrefslogtreecommitdiffhomepage
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/Platform.h13
1 files changed, 13 insertions, 0 deletions
diff --git a/src/Platform.h b/src/Platform.h
index 568c571cc..3afa24c92 100644
--- a/src/Platform.h
+++ b/src/Platform.h
@@ -163,6 +163,17 @@ public:
};
/**
+ * Parameters for surfaces.
+ */
+struct SurfaceMode {
+ int codePage = 0;
+ bool bidiR2L = false;
+ SurfaceMode() = default;
+ explicit SurfaceMode(int codePage_, bool bidiR2L_) noexcept : codePage(codePage_), bidiR2L(bidiR2L_) {
+ }
+};
+
+/**
* A surface abstracts a place to draw.
*/
class Surface {
@@ -179,6 +190,8 @@ public:
virtual void Init(SurfaceID sid, WindowID wid)=0;
virtual void InitPixMap(int width, int height, Surface *surface_, WindowID wid)=0;
+ virtual void SetMode(SurfaceMode mode)=0;
+
enum class Ends {
semiCircles = 0x0,
leftFlat = 0x1,