summaryrefslogtreecommitdiff
path: root/src/drivers/WinAPI
diff options
context:
space:
mode:
Diffstat (limited to 'src/drivers/WinAPI')
-rw-r--r--src/drivers/WinAPI/Fl_WinAPI_Screen_Driver.cxx24
-rw-r--r--src/drivers/WinAPI/Fl_WinAPI_Window_Driver.cxx16
2 files changed, 21 insertions, 19 deletions
diff --git a/src/drivers/WinAPI/Fl_WinAPI_Screen_Driver.cxx b/src/drivers/WinAPI/Fl_WinAPI_Screen_Driver.cxx
index 998d4f9b9..9720c2594 100644
--- a/src/drivers/WinAPI/Fl_WinAPI_Screen_Driver.cxx
+++ b/src/drivers/WinAPI/Fl_WinAPI_Screen_Driver.cxx
@@ -146,10 +146,10 @@ void Fl_WinAPI_Screen_Driver::screen_work_area(int &X, int &Y, int &W, int &H, i
{
if (num_screens < 0) init();
if (n < 0 || n >= num_screens) n = 0;
- X = work_area[n].left/scale_of_screen[n];
- Y = work_area[n].top/scale_of_screen[n];
- W = (work_area[n].right - work_area[n].left)/scale_of_screen[n];
- H = (work_area[n].bottom - work_area[n].top)/scale_of_screen[n];
+ X = int(work_area[n].left/scale_of_screen[n]);
+ Y = int(work_area[n].top/scale_of_screen[n]);
+ W = int((work_area[n].right - work_area[n].left)/scale_of_screen[n]);
+ H = int((work_area[n].bottom - work_area[n].top)/scale_of_screen[n]);
}
@@ -161,10 +161,10 @@ void Fl_WinAPI_Screen_Driver::screen_xywh(int &X, int &Y, int &W, int &H, int n)
n = 0;
if (num_screens > 0) {
- X = screens[n].left/scale_of_screen[n];
- Y = screens[n].top/scale_of_screen[n];
- W = (screens[n].right - screens[n].left)/scale_of_screen[n];
- H = (screens[n].bottom - screens[n].top)/scale_of_screen[n];
+ X = int(screens[n].left/scale_of_screen[n]);
+ Y = int(screens[n].top/scale_of_screen[n]);
+ W = int((screens[n].right - screens[n].left)/scale_of_screen[n]);
+ H = int((screens[n].bottom - screens[n].top)/scale_of_screen[n]);
} else {
/* Fallback if something is broken... */
X = 0;
@@ -501,14 +501,14 @@ Fl_WinAPI_Screen_Driver::read_win_rectangle(
{
float s = Fl_Surface_Device::surface()->driver()->scale();
int ws, hs;
- if (int(s) == s) { ws = w * s; hs = h * s;}
+ if (int(s) == s) { ws = int(w * s); hs = int(h * s);}
else {
- ws = (w+1)*s; // approximates what Fl_Graphics_Driver::cache_size() does
- hs = (h+1)*s;
+ ws = int((w+1) * s); // approximates what Fl_Graphics_Driver::cache_size() does
+ hs = int((h+1) * s);
if (ws < 1) ws = 1;
if (hs < 1) hs = 1;
}
- return read_win_rectangle_unscaled(X*s, Y*s, ws, hs, win);
+ return read_win_rectangle_unscaled(int(X*s), int(Y*s), ws, hs, win);
}
Fl_RGB_Image *Fl_WinAPI_Screen_Driver::read_win_rectangle_unscaled(int X, int Y, int w, int h, Fl_Window *win)
diff --git a/src/drivers/WinAPI/Fl_WinAPI_Window_Driver.cxx b/src/drivers/WinAPI/Fl_WinAPI_Window_Driver.cxx
index 5b50b64b1..8d0fddcd4 100644
--- a/src/drivers/WinAPI/Fl_WinAPI_Window_Driver.cxx
+++ b/src/drivers/WinAPI/Fl_WinAPI_Window_Driver.cxx
@@ -121,7 +121,7 @@ int Fl_WinAPI_Window_Driver::decorated_w()
int bt, bx, by;
float s = Fl::screen_driver()->scale(screen_num());
border_width_title_bar_height(bx, by, bt);
- int mini_bx = bx/s; if (mini_bx < 1) mini_bx = 1;
+ int mini_bx = int(bx/s); if (mini_bx < 1) mini_bx = 1;
return w() + 2 * mini_bx;
}
@@ -130,8 +130,8 @@ int Fl_WinAPI_Window_Driver::decorated_h()
int bt, bx, by;
border_width_title_bar_height(bx, by, bt);
float s = Fl::screen_driver()->scale(screen_num());
- int mini_by = by/s; if (mini_by < 1) mini_by = 1;
- return h() + (bt + by)/s + mini_by;
+ int mini_by = int(by / s); if (mini_by < 1) mini_by = 1;
+ return h() + int((bt + by) / s) + mini_by;
}
@@ -285,8 +285,8 @@ void Fl_WinAPI_Window_Driver::draw_begin()
float s = Fl::screen_driver()->scale(screen_num());
if ((shape_data_->lw_ != s*w() || shape_data_->lh_ != s*h()) && shape_data_->shape_) {
// size of window has changed since last time
- shape_data_->lw_ = s*w();
- shape_data_->lh_ = s*h();
+ shape_data_->lw_ = int(s * w());
+ shape_data_->lh_ = int(s * h());
Fl_Image* temp = shape_data_->effective_bitmap_ ? shape_data_->effective_bitmap_ : shape_data_->shape_;
temp = temp->copy(shape_data_->lw_, shape_data_->lh_);
HRGN region = bitmap2region(temp);
@@ -601,7 +601,7 @@ void Fl_WinAPI_Window_Driver::fullscreen_off(int X, int Y, int W, int H) {
Fl_X::i(pWindow)->xid = xid;
// compute window position and size in scaled units
float s = Fl::screen_driver()->scale(screen_num());
- int scaledX = ceil(X*s), scaledY= ceil(Y*s), scaledW = ceil(W*s), scaledH = ceil(H*s);
+ int scaledX = int(ceil(X*s)), scaledY= int(ceil(Y*s)), scaledW = int(ceil(W*s)), scaledH = int(ceil(H*s));
// Adjust for decorations (but not if that puts the decorations
// outside the screen)
if ((X != x()) || (Y != y())) {
@@ -649,7 +649,9 @@ int Fl_WinAPI_Window_Driver::scroll(int src_x, int src_y, int src_w, int src_h,
first_time = 0;
}
float s = Fl::screen_driver()->scale(screen_num());
- src_x *= s; src_y *= s; src_w *= s; src_h *= s; dest_x *= s; dest_y *= s;
+ src_x = int(src_x * s); src_y = int(src_y * s);
+ src_w = int(src_w * s); src_h = int(src_h * s);
+ dest_x = int(dest_x * s); dest_y = int(dest_y * s);
// Now check if the source scrolling area is fully visible.
// If it is, we will do a quick scroll and just update the
// newly exposed area. If it is not, we go the safe route and