summaryrefslogtreecommitdiff
path: root/libs/litehtml/containers/windows
diff options
context:
space:
mode:
Diffstat (limited to 'libs/litehtml/containers/windows')
-rw-r--r--libs/litehtml/containers/windows/cairo/windows_container.h1
-rw-r--r--libs/litehtml/containers/windows/gdiplus/gdiplus_container.cpp8
-rw-r--r--libs/litehtml/containers/windows/gdiplus/gdiplus_container.h2
-rw-r--r--libs/litehtml/containers/windows/win32/win32_container.cpp60
-rw-r--r--libs/litehtml/containers/windows/win32/win32_container.h10
5 files changed, 43 insertions, 38 deletions
diff --git a/libs/litehtml/containers/windows/cairo/windows_container.h b/libs/litehtml/containers/windows/cairo/windows_container.h
index b9cb3c6deb..daae519cab 100644
--- a/libs/litehtml/containers/windows/cairo/windows_container.h
+++ b/libs/litehtml/containers/windows/cairo/windows_container.h
@@ -13,6 +13,7 @@
#include "cairo-win32.h"
#include <litehtml.h>
#include <dib.h>
+#include <txdib.h>
#include "../../libs/litehtml/containers/cairo/container_cairo.h"
class windows_container : public container_cairo
diff --git a/libs/litehtml/containers/windows/gdiplus/gdiplus_container.cpp b/libs/litehtml/containers/windows/gdiplus/gdiplus_container.cpp
index 3c4dcaa84c..5950b01882 100644
--- a/libs/litehtml/containers/windows/gdiplus/gdiplus_container.cpp
+++ b/libs/litehtml/containers/windows/gdiplus/gdiplus_container.cpp
@@ -1,7 +1,6 @@
#ifndef NOMINMAX
#define NOMINMAX
#endif
-#include <algorithm>
#include <windows.h>
#include <gdiplus.h>
#include "gdiplus_container.h"
@@ -26,7 +25,7 @@ static Color gdiplus_color(web_color color)
return Color(color.alpha, color.red, color.green, color.blue);
}
-void gdiplus_container::draw_ellipse(HDC hdc, int x, int y, int width, int height, web_color color, int line_width)
+void gdiplus_container::draw_ellipse(HDC hdc, int x, int y, int width, int height, web_color color, int)
{
Graphics graphics(hdc);
@@ -71,7 +70,7 @@ void gdiplus_container::free_image(uint_ptr img)
Bitmap* bmp = (Bitmap*)img;
delete bmp;
}
-
+/*
void gdiplus_container::draw_img_bg(HDC hdc, uint_ptr img, const background_paint& bg)
{
Bitmap* bgbmp = (Bitmap*)img;
@@ -143,6 +142,7 @@ void gdiplus_container::draw_img_bg(HDC hdc, uint_ptr img, const background_pain
delete scaled_img;
}
+*/
// length of dash and space for "dashed" style, in multiples of pen width
const float dash = 3;
@@ -216,7 +216,7 @@ static void draw_vert_border(Graphics& graphics, const border& border, int x, in
}
}
-void gdiplus_container::draw_borders(uint_ptr hdc, const borders& borders, const position& draw_pos, bool root)
+void gdiplus_container::draw_borders(uint_ptr hdc, const borders& borders, const position& draw_pos, bool)
{
apply_clip((HDC) hdc);
Graphics graphics((HDC)hdc);
diff --git a/libs/litehtml/containers/windows/gdiplus/gdiplus_container.h b/libs/litehtml/containers/windows/gdiplus/gdiplus_container.h
index a5a61382c3..cb0e0337dc 100644
--- a/libs/litehtml/containers/windows/gdiplus/gdiplus_container.h
+++ b/libs/litehtml/containers/windows/gdiplus/gdiplus_container.h
@@ -17,7 +17,7 @@ protected:
void fill_rect(HDC hdc, int x, int y, int width, int height, litehtml::web_color color) override;
void get_img_size(uint_ptr img, litehtml::size& sz) override;
void free_image(uint_ptr img) override;
- void draw_img_bg(HDC hdc, uint_ptr img, const litehtml::background_paint& bg) override;
+
// litehtml::document_container members
void draw_borders(uint_ptr hdc, const litehtml::borders& borders, const litehtml::position& draw_pos, bool root) override;
};
diff --git a/libs/litehtml/containers/windows/win32/win32_container.cpp b/libs/litehtml/containers/windows/win32/win32_container.cpp
index 520b1ed234..bbcbfe53dc 100644
--- a/libs/litehtml/containers/windows/win32/win32_container.cpp
+++ b/libs/litehtml/containers/windows/win32/win32_container.cpp
@@ -24,7 +24,7 @@ win32_container::~win32_container()
ReleaseDC(NULL, m_tmp_hdc);
}
-int CALLBACK win32_container::EnumFontsProc(const LOGFONT* lplf, const TEXTMETRIC* lptm, DWORD dwType, LPARAM lpData)
+int CALLBACK win32_container::EnumFontsProc(const LOGFONT* lplf, const TEXTMETRIC*, DWORD, LPARAM lpData)
{
win32_container* container = (win32_container*)lpData;
container->m_installed_fonts.insert(lplf->lfFaceName);
@@ -147,6 +147,32 @@ int win32_container::pt_to_px( int pt ) const
return MulDiv(pt, GetDeviceCaps(m_tmp_hdc, LOGPIXELSY), 72);
}
+void win32_container::draw_image(litehtml::uint_ptr, const litehtml::background_layer &, const std::string &, const std::string &)
+{
+}
+
+void win32_container::draw_solid_fill(litehtml::uint_ptr _hdc, const litehtml::background_layer &bg, const litehtml::web_color &color)
+{
+ HDC hdc = (HDC)_hdc;
+ apply_clip(hdc);
+
+ fill_rect(hdc, bg.border_box.x, bg.border_box.y, bg.border_box.width, bg.border_box.height, color);
+
+ release_clip(hdc);
+}
+
+void win32_container::draw_linear_gradient(litehtml::uint_ptr, const litehtml::background_layer &, const litehtml::background_layer::linear_gradient &)
+{
+}
+
+void win32_container::draw_radial_gradient(litehtml::uint_ptr, const litehtml::background_layer &, const litehtml::background_layer::radial_gradient &)
+{
+}
+
+void win32_container::draw_conic_gradient(litehtml::uint_ptr, const litehtml::background_layer &, const litehtml::background_layer::conic_gradient &)
+{
+}
+
void win32_container::draw_list_marker(uint_ptr hdc, const litehtml::list_marker& marker)
{
apply_clip((HDC)hdc);
@@ -252,33 +278,7 @@ void win32_container::unlock_images_cache()
LeaveCriticalSection(&m_img_sync);
}
-void win32_container::draw_background( uint_ptr _hdc, const std::vector<litehtml::background_paint>& bg )
-{
- HDC hdc = (HDC)_hdc;
- apply_clip(hdc);
-
- auto border_box = bg.back().border_box;
- auto color = bg.back().color;
- fill_rect(hdc, border_box.x, border_box.y, border_box.width, border_box.height, color);
-
- for (int i = (int)bg.size() - 1; i >= 0; i--)
- {
- std::wstring url;
- make_url_utf8(bg[i].image.c_str(), bg[i].baseurl.c_str(), url);
-
- lock_images_cache();
- images_map::iterator img = m_images.find(url);
- if (img != m_images.end() && img->second)
- {
- draw_img_bg(hdc, img->second, bg[i]);
- }
- unlock_images_cache();
- }
-
- release_clip(hdc);
-}
-
-void win32_container::set_clip( const litehtml::position& pos, const litehtml::border_radiuses& bdr_radius )
+void win32_container::set_clip( const litehtml::position& pos, const litehtml::border_radiuses&)
{
m_clips.push_back(pos);
}
@@ -321,7 +321,7 @@ void win32_container::release_clip(HDC hdc)
}
}
-litehtml::element::ptr win32_container::create_element(const char* tag_name, const litehtml::string_map& attributes, const litehtml::document::ptr& doc)
+litehtml::element::ptr win32_container::create_element(const char*, const litehtml::string_map&, const litehtml::document::ptr&)
{
return 0;
}
@@ -369,7 +369,7 @@ void win32_container::transform_text(litehtml::string& text, litehtml::text_tran
free(txt);
}
-void win32_container::link(const litehtml::document::ptr& doc, const litehtml::element::ptr& el)
+void win32_container::link(const litehtml::document::ptr&, const litehtml::element::ptr&)
{
}
diff --git a/libs/litehtml/containers/windows/win32/win32_container.h b/libs/litehtml/containers/windows/win32/win32_container.h
index 93a9d81086..888a52d2e3 100644
--- a/libs/litehtml/containers/windows/win32/win32_container.h
+++ b/libs/litehtml/containers/windows/win32/win32_container.h
@@ -33,12 +33,17 @@ public:
void draw_text(uint_ptr hdc, const char* text, uint_ptr hFont, litehtml::web_color color, const litehtml::position& pos) override;
void transform_text(litehtml::string& text, litehtml::text_transform tt) override;
+ void draw_image(litehtml::uint_ptr, const litehtml::background_layer &, const std::string &, const std::string &) override;
+ void draw_solid_fill(litehtml::uint_ptr, const litehtml::background_layer &, const litehtml::web_color &) override;
+ void draw_linear_gradient(litehtml::uint_ptr, const litehtml::background_layer &, const litehtml::background_layer::linear_gradient &) override;
+ void draw_radial_gradient(litehtml::uint_ptr, const litehtml::background_layer &, const litehtml::background_layer::radial_gradient &) override;
+ void draw_conic_gradient(litehtml::uint_ptr, const litehtml::background_layer &, const litehtml::background_layer::conic_gradient &) override;
+
int pt_to_px(int pt) const override;
void draw_list_marker(uint_ptr hdc, const litehtml::list_marker& marker) override;
void load_image(const char* src, const char* baseurl, bool redraw_on_ready) override;
void get_image_size(const char* src, const char* baseurl, litehtml::size& sz) override;
- void draw_background(uint_ptr hdc, const std::vector<litehtml::background_paint>& bg) override;
-
+
void set_clip(const litehtml::position& pos, const litehtml::border_radiuses& bdr_radius) override;
void del_clip() override;
litehtml::element::ptr create_element(const char* tag_name, const litehtml::string_map& attributes, const litehtml::document::ptr& doc) override;
@@ -62,7 +67,6 @@ protected:
void clear_images();
virtual void free_image(uint_ptr img) = 0;
virtual void get_img_size(uint_ptr img, litehtml::size& sz) = 0;
- virtual void draw_img_bg(HDC hdc, uint_ptr img, const litehtml::background_paint& bg) = 0;
virtual void draw_ellipse(HDC hdc, int x, int y, int width, int height, litehtml::web_color color, int line_width) = 0;
virtual void fill_ellipse(HDC hdc, int x, int y, int width, int height, litehtml::web_color color) = 0;