remove paint::gadget
This commit is contained in:
@@ -1,108 +0,0 @@
|
||||
/*
|
||||
* Graphics Gadget Implementation
|
||||
* Nana C++ Library(http://www.nanapro.org)
|
||||
* Copyright(C) 2003-2015 Jinhao(cnjinhao@hotmail.com)
|
||||
*
|
||||
* Distributed under the Boost Software License, Version 1.0.
|
||||
* (See accompanying file LICENSE_1_0.txt or copy at
|
||||
* http://www.boost.org/LICENSE_1_0.txt)
|
||||
*
|
||||
* @file: nana/paint/gadget.cpp
|
||||
*/
|
||||
|
||||
#include <nana/paint/graphics.hpp>
|
||||
#include <nana/paint/gadget.hpp>
|
||||
|
||||
namespace nana
|
||||
{
|
||||
namespace paint
|
||||
{
|
||||
namespace gadget
|
||||
{
|
||||
void close_16_pixels(::nana::paint::graphics& graph, int x, int y, unsigned style, const ::nana::color& clr)
|
||||
{
|
||||
graph.set_color(clr);
|
||||
if(0 == style)
|
||||
{
|
||||
x += 3;
|
||||
y += 3;
|
||||
|
||||
graph.line({ x, y }, { x + 9, y + 9 });
|
||||
graph.line({ x + 1, y }, { x + 9, y + 8 });
|
||||
graph.line({ x, y + 1 }, { x + 8, y + 9 });
|
||||
|
||||
graph.line({ x + 9, y }, { x, y + 9 });
|
||||
graph.line({ x + 8, y }, { x, y + 8 });
|
||||
graph.line({ x + 9, y + 1 }, { x + 1, y + 9 });
|
||||
}
|
||||
else
|
||||
{
|
||||
x += 4;
|
||||
y += 4;
|
||||
|
||||
graph.line({ x, y }, { x + 7, y + 7 });
|
||||
graph.line({ x + 1, y }, { x + 7, y + 6 });
|
||||
graph.line({ x, y + 1 }, { x + 6, y + 7 });
|
||||
|
||||
graph.line({ x + 7, y }, { x, y + 7 });
|
||||
graph.line({ x + 6, y }, { x, y + 6 });
|
||||
graph.line({ x + 7, y + 1 }, { x + 1, y + 7 });
|
||||
}
|
||||
}
|
||||
|
||||
void cross(graphics& graph, int x, int y, unsigned size, unsigned thickness, const ::nana::color& clr)
|
||||
{
|
||||
if (thickness + 2 <= size)
|
||||
{
|
||||
int gap = (size - thickness) / 2;
|
||||
|
||||
nana::point ps[12];
|
||||
ps[0].x = x + gap;
|
||||
ps[1].x = ps[0].x + thickness - 1;
|
||||
ps[1].y = ps[0].y = y;
|
||||
|
||||
ps[2].x = ps[1].x;
|
||||
ps[2].y = y + gap;
|
||||
|
||||
ps[3].x = ps[2].x + gap;
|
||||
ps[3].y = ps[2].y;
|
||||
|
||||
ps[4].x = ps[3].x;
|
||||
ps[4].y = ps[3].y + thickness - 1;
|
||||
|
||||
ps[5].x = ps[1].x;
|
||||
ps[5].y = ps[4].y;
|
||||
|
||||
ps[6].x = ps[5].x;
|
||||
ps[6].y = ps[5].y + gap;
|
||||
|
||||
ps[7].x = x + gap;
|
||||
ps[7].y = ps[6].y;
|
||||
|
||||
ps[8].x = ps[7].x;
|
||||
ps[8].y = ps[4].y;
|
||||
|
||||
ps[9].x = x;
|
||||
ps[9].y = ps[4].y;
|
||||
|
||||
ps[10].x = x;
|
||||
ps[10].y = y + gap;
|
||||
|
||||
ps[11].x = x + gap;
|
||||
ps[11].y = y + gap;
|
||||
|
||||
graph.set_color(clr.blend(colors::black, true));
|
||||
|
||||
for (int i = 0; i < 11; ++i)
|
||||
graph.line(ps[i], ps[i + 1]);
|
||||
graph.line(ps[11], ps[0]);
|
||||
|
||||
graph.set_color(clr);
|
||||
graph.rectangle(rectangle{ ps[10].x + 1, ps[10].y + 1, (gap << 1) + thickness - 2, thickness - 2 }, true);
|
||||
graph.rectangle(rectangle{ ps[0].x + 1, ps[0].y + 1, thickness - 2, (gap << 1) + thickness - 2 }, true);
|
||||
}
|
||||
}
|
||||
}//end namespace gadget
|
||||
|
||||
}//end namespace paint
|
||||
}//end namespace nana
|
||||
@@ -845,13 +845,13 @@ namespace paint
|
||||
BITMAPFILEHEADER bmFileHeader = { 0 };
|
||||
bmFileHeader.bfType = 0x4d42; //bmp
|
||||
bmFileHeader.bfOffBits = sizeof(BITMAPFILEHEADER) + sizeof(BITMAPINFOHEADER);
|
||||
bmFileHeader.bfSize = bmFileHeader.bfOffBits + imageBytes;
|
||||
bmFileHeader.bfSize = bmFileHeader.bfOffBits + static_cast<DWORD>(imageBytes);
|
||||
|
||||
HANDLE hFile = ::CreateFileW(static_cast<std::wstring>(::nana::charset(file_utf8, ::nana::unicode::utf8)).data(), GENERIC_WRITE, 0, nullptr, CREATE_ALWAYS, FILE_ATTRIBUTE_NORMAL, NULL);
|
||||
DWORD dwWrite = 0;
|
||||
::WriteFile(hFile, &bmFileHeader, sizeof(BITMAPFILEHEADER), &dwWrite, nullptr);
|
||||
::WriteFile(hFile, &bmpInfo.bmiHeader, sizeof(BITMAPINFOHEADER), &dwWrite, nullptr);
|
||||
::WriteFile(hFile, pData, imageBytes, &dwWrite, nullptr);
|
||||
::WriteFile(hFile, pData, static_cast<DWORD>(imageBytes), &dwWrite, nullptr);
|
||||
::CloseHandle(hFile);
|
||||
|
||||
::DeleteObject(hBmp);
|
||||
|
||||
Reference in New Issue
Block a user