git-svn-id: svn://ultimatepp.org/upp/trunk@2509 f0d560ea-af0d-0410-9eb7-867de7ffcac7
This commit is contained in:
cxl 2010-06-25 13:14:49 +00:00
parent ec7d82f7c1
commit 658fa669f2
10 changed files with 190 additions and 54 deletions

View file

@ -0,0 +1,70 @@
topic "Morituri te Salutant";
[ $$0,0#00000000000000000000000000000000:Default]
[{_}
[s0;a83; [R6 Morituri te Salutant]&]
[s0; [R1 Cesta je prach]&]
[s0;a83; [R1 a štěrk]&]
[s0;a83; [R1 a udusaná hlína]&]
[s0; [R1 a šedé šmouhy]&]
[s0; [R1 kreslí do vlasů]&]
[s0; [R1 a z hvězdných drah]&]
[s0; [R1 šperk]&]
[s0; [R1 co kamením se spíná]&]
[s0; [R1 a pírka touhy]&]
[s0; [R1 z křídel Pegasů]&]
[s0;R1 &]
[s0; [R1 Cesta je bič]&]
[s0; [R1 Je zlá]&]
[s0; [R1 jak pouliční dáma]&]
[s0; [R1 v ruce štítky]&]
[s0; [R1 v pase staniol]&]
[s0; [R1 a z očí chtíč plá]&]
[s0; [R1 když háže do neznáma]&]
[s0; [R1 dvě křehké snítky]&]
[s0; [R1 rudých gladiol]&]
[s0;R1 &]
[s0; [R1 Seržante písek je bílý]&]
[s0; [R1 jak paže Daniely]&]
[s0; [R1 Počkejte chvíli!]&]
[s0;R1 &]
[s0; [R1 oči uviděly]&]
[s0; [R1 tu strašně dávnou]&]
[s0; [R1 vteřinu zapomnění]&]
[s0; [R1 Seržante! Mávnou]&]
[s0; [R1 a budem zasvěceni]&]
[s0; [R1 Morituri te salutant]&]
[s0; [R1 Morituri te salutant]&]
[s0;R1 &]
[s0; [R1 Tou cestou dál]&]
[s0; [R1 jsem šel]&]
[s0; [R1 kde na zemi se zmítá]&]
[s0; [R1 a písek víří]&]
[s0; [R1 křídlo holubí]&]
[s0; [R1 a marš mi hrál]&]
[s0; [R1 zvuk děl]&]
[s0; [R1 co uklidnění skýtá]&]
[s0; [R1 a zvedá chmýří]&]
[s0; [R1 které zahubí]&]
[s0;R1 &]
[s0; [R1 Cesta je tér a prach]&]
[s0; [R1 a udusaná hlína]&]
[s0; [R1 mosazná včelka]&]
[s0; [R1 od vlkodlaka]&]
[s0; [R1 rezavý kvér]&]
[s0; [R1 `- můj brach]&]
[s0; [R1 a sto let stará špína]&]
[s0; [R1 a děsně velká]&]
[s0; [R1 bílá oblaka]&]
[s0;R1 &]
[s0; [R1 Seržante]&]
[s0; [R1 písek je bílý]&]
[s0; [R1 jak paže Daniely]&]
[s0; [R1 Počkejte chvíli!]&]
[s0; [R1 oči uviděly]&]
[s0; [R1 tu strašně dávnou]&]
[s0; [R1 vteřinu zapomnění]&]
[s0; [R1 Seržante! Mávnou]&]
[s0; [R1 a budem zasvěceni]&]
[s0; [R1 Morituri te salutant]&]
[s0; [R1 Morituri te salutant ]&]
[s0;%% ]

View file

@ -0,0 +1,9 @@
topic "Honzík má 3 krát víc náklaďáků než Pepík a o 5 víc aut než Radek. Radek má polovinu náklaďáků než Honzík a dvojnásobek aut než Pepík. Pepík má 4 náklaďáky a 2 auta.";
[ $$0,0#00000000000000000000000000000000:Default]
[{_}%CS-CZ
[s0; Honzík 3 krát víc náklaďáků než Pepík a o 5 víc
aut než Radek. Radek polovinu náklaďáků než Honzík
a dvojnásobek aut než Pepík. Pepík 4 náklaďáky a 2
auta.&]
[s0; &]
[s0; Kolik aut a náklaďáků mají dohromady?]

View file

@ -1,9 +0,0 @@
uses
CtrlLib;
file
main.cpp;
mainconfig
"" = "GUI";

View file

@ -1,45 +0,0 @@
#include <CtrlLib/CtrlLib.h>
using namespace Upp;
Image ScreenShot(int x, int y, int cx, int cy)
{
HDC dcScreen = CreateDC("DISPLAY", NULL, NULL, NULL);
RGBA *pixels;
Buffer<byte> data;
data.Alloc(sizeof(BITMAPINFOHEADER) + sizeof(RGBQUAD)*256);
BITMAPINFOHEADER *hi = (BITMAPINFOHEADER *) ~data;;
memset(hi, 0, sizeof(BITMAPINFOHEADER));
hi->biSize = sizeof(BITMAPINFOHEADER);
hi->biPlanes = 1;
hi->biBitCount = 32;
hi->biCompression = BI_RGB;
hi->biSizeImage = 0;
hi->biClrUsed = 0;
hi->biClrImportant = 0;
hi->biWidth = cx;
hi->biHeight = -cy;
HBITMAP hbmp = CreateDIBSection(dcScreen, (BITMAPINFO *)hi, DIB_RGB_COLORS, (void **)&pixels, NULL, 0);
HDC dcMem = ::CreateCompatibleDC(dcScreen);
HBITMAP hbmpOld = (HBITMAP) ::SelectObject(dcMem, hbmp);
HDC hdcCompatible = CreateCompatibleDC(dcScreen);
::BitBlt(dcMem, 0, 0, cx, cy, dcScreen, x, y, SRCCOPY);
ImageBuffer ib(cx, cy);
memcpy(~ib, pixels, cx * cy * sizeof(RGBA));
::DeleteObject(::SelectObject(dcMem, hbmpOld));
::DeleteDC(dcMem);
::DeleteDC(dcScreen);
return ib;
};
GUI_APP_MAIN
{
Image m = ScreenShot(100, 100, 300, 300);
PNGEncoder().SaveFile("u:/test.png", m);
}

View file

@ -17,5 +17,19 @@ public:
ShowQtf();
};
void ShowQtf::Text()
{
qtf <<= ~text;
}
ShowQtf::ShowQtf()
{
qtf <<= "{{1:1:1:1:1:1:1:1:1:1:1:1:1:1:1:1:1:1:1:1@(192.192.192)-4 ICO:: :: :: :: ::@(255.255.255)-4 25613405:: :: :: :: ::@(192.192.192)-4 DIC:: :: :: :: ::@(255.255.255)-4 :: :: :: :: ::@(192.192.192)-4 Jm:: :: :: :: ::@(255.255.255)-14 Amida`, s`.r`.o`.:: :: :: :: :: :: :: :: :: :: :: :: :: :: ::@(192.192.192)-4 Of:: :: :: :: ::@(255.255.255)-14 :: :: :: :: :: :: :: :: :: :: :: :: :: :: }}";
text <<= THISBACK(Text);
split.Vert(text, qtf);
Add(split.SizePos());
Sizeable().Zoomable();
}
#endif

View file

@ -0,0 +1,74 @@
#include <windows.h>
#include "resource.h"
LRESULT CALLBACK WndProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam)
{
PAINTSTRUCT ps;
HDC hdc;
switch (message)
{
case WM_PAINT:
hdc = BeginPaint(hWnd, &ps);
/* Put your drawing code here */
EndPaint(hWnd, &ps);
break;
case WM_DESTROY:
PostQuitMessage(0);
break;
default:
return DefWindowProc(hWnd, message, wParam, lParam);
}
return 0;
}
extern "C" __declspec(dllimport) int capture_screen(int x, int y, int cx, int cy, char *filename);
int APIENTRY WinMain(HINSTANCE hInstance,
HINSTANCE hPrevInstance,
LPSTR lpCmdLine,
int nCmdShow)
{
capture_screen(100, 100, 400, 200, "u:/test.jpg");
WNDCLASSEX wcex;
wcex.cbSize = sizeof(WNDCLASSEX);
wcex.style = CS_HREDRAW | CS_VREDRAW;
wcex.lpfnWndProc = (WNDPROC) WndProc;
wcex.cbClsExtra = 0;
wcex.cbWndExtra = 0;
wcex.hInstance = hInstance;
wcex.hCursor = LoadCursor(NULL, IDC_ARROW);
wcex.hbrBackground = (HBRUSH) (COLOR_WINDOW + 1);
wcex.lpszMenuName = 0;
wcex.lpszClassName = "UPPW32APP";
if(RegisterClassEx(&wcex) == 0)
return FALSE;
HWND hWnd = CreateWindow(wcex.lpszClassName, "Ultimate application", WS_OVERLAPPEDWINDOW,
CW_USEDEFAULT, 0, CW_USEDEFAULT, 0,
NULL, NULL, hInstance, NULL);
if(!hWnd)
return FALSE;
ShowWindow(hWnd, nCmdShow);
UpdateWindow(hWnd);
MSG msg;
while(GetMessage(&msg, NULL, 0, 0))
{
TranslateMessage(&msg);
DispatchMessage(&msg);
}
return msg.wParam;
}

View file

@ -0,0 +1,5 @@
#include "resource.h"
#include <windows.h>

View file

@ -0,0 +1,13 @@
library
u:\capture_screen.lib;
library(WIN32) "kernel32 user32 advapi32 shell32 winmm";
file
resource.h,
captures.rc,
captures.cpp;
mainconfig
"" = "GUI";

3
uppdev/captures/init Normal file
View file

@ -0,0 +1,3 @@
#ifndef _captures_icpp_init_stub
#define _captures_icpp_init_stub
#endif

View file

@ -0,0 +1,2 @@