From 658fa669f2fd5261cf2a95474609e2e36645b99e Mon Sep 17 00:00:00 2001 From: cxl Date: Fri, 25 Jun 2010 13:14:49 +0000 Subject: [PATCH] .uppdev git-svn-id: svn://ultimatepp.org/upp/trunk@2509 f0d560ea-af0d-0410-9eb7-867de7ffcac7 --- uppdev/AccessKey/bak.tpp/morituri$en-us.tpp | 70 +++++++++++++++++++ uppdev/AccessKey/bak.tpp/uloha$en-us.tpp | 9 +++ uppdev/ScreenShotter/ScreenShotter.upp | 9 --- uppdev/ScreenShotter/main.cpp | 45 ------------- uppdev/ShowQtf/ShowQtf.h | 14 ++++ uppdev/captures/captures.cpp | 74 +++++++++++++++++++++ uppdev/captures/captures.rc | 5 ++ uppdev/captures/captures.upp | 13 ++++ uppdev/captures/init | 3 + uppdev/captures/resource.h | 2 + 10 files changed, 190 insertions(+), 54 deletions(-) create mode 100644 uppdev/AccessKey/bak.tpp/morituri$en-us.tpp create mode 100644 uppdev/AccessKey/bak.tpp/uloha$en-us.tpp delete mode 100644 uppdev/ScreenShotter/ScreenShotter.upp delete mode 100644 uppdev/ScreenShotter/main.cpp create mode 100644 uppdev/captures/captures.cpp create mode 100644 uppdev/captures/captures.rc create mode 100644 uppdev/captures/captures.upp create mode 100644 uppdev/captures/init create mode 100644 uppdev/captures/resource.h diff --git a/uppdev/AccessKey/bak.tpp/morituri$en-us.tpp b/uppdev/AccessKey/bak.tpp/morituri$en-us.tpp new file mode 100644 index 000000000..aa67a1b89 --- /dev/null +++ b/uppdev/AccessKey/bak.tpp/morituri$en-us.tpp @@ -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 má š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 Má v ruce štítky]&] +[s0; [R1 v pase staniol]&] +[s0; [R1 a z očí chtíč jí 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 Mé 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 Mé 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;%% ] \ No newline at end of file diff --git a/uppdev/AccessKey/bak.tpp/uloha$en-us.tpp b/uppdev/AccessKey/bak.tpp/uloha$en-us.tpp new file mode 100644 index 000000000..c594fae90 --- /dev/null +++ b/uppdev/AccessKey/bak.tpp/uloha$en-us.tpp @@ -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 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.&] +[s0; &] +[s0; Kolik aut a náklaďáků mají dohromady?] \ No newline at end of file diff --git a/uppdev/ScreenShotter/ScreenShotter.upp b/uppdev/ScreenShotter/ScreenShotter.upp deleted file mode 100644 index 5872304d3..000000000 --- a/uppdev/ScreenShotter/ScreenShotter.upp +++ /dev/null @@ -1,9 +0,0 @@ -uses - CtrlLib; - -file - main.cpp; - -mainconfig - "" = "GUI"; - diff --git a/uppdev/ScreenShotter/main.cpp b/uppdev/ScreenShotter/main.cpp deleted file mode 100644 index 6a5b8cc3b..000000000 --- a/uppdev/ScreenShotter/main.cpp +++ /dev/null @@ -1,45 +0,0 @@ -#include - -using namespace Upp; - -Image ScreenShot(int x, int y, int cx, int cy) -{ - HDC dcScreen = CreateDC("DISPLAY", NULL, NULL, NULL); - - RGBA *pixels; - - Buffer 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); -} diff --git a/uppdev/ShowQtf/ShowQtf.h b/uppdev/ShowQtf/ShowQtf.h index 1feb82768..dd3f564d7 100644 --- a/uppdev/ShowQtf/ShowQtf.h +++ b/uppdev/ShowQtf/ShowQtf.h @@ -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 diff --git a/uppdev/captures/captures.cpp b/uppdev/captures/captures.cpp new file mode 100644 index 000000000..69a8aec74 --- /dev/null +++ b/uppdev/captures/captures.cpp @@ -0,0 +1,74 @@ +#include +#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; +} diff --git a/uppdev/captures/captures.rc b/uppdev/captures/captures.rc new file mode 100644 index 000000000..2bacc52d9 --- /dev/null +++ b/uppdev/captures/captures.rc @@ -0,0 +1,5 @@ +#include "resource.h" +#include + + + diff --git a/uppdev/captures/captures.upp b/uppdev/captures/captures.upp new file mode 100644 index 000000000..9b0c14eee --- /dev/null +++ b/uppdev/captures/captures.upp @@ -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"; + diff --git a/uppdev/captures/init b/uppdev/captures/init new file mode 100644 index 000000000..6ad4bedab --- /dev/null +++ b/uppdev/captures/init @@ -0,0 +1,3 @@ +#ifndef _captures_icpp_init_stub +#define _captures_icpp_init_stub +#endif diff --git a/uppdev/captures/resource.h b/uppdev/captures/resource.h new file mode 100644 index 000000000..99a809136 --- /dev/null +++ b/uppdev/captures/resource.h @@ -0,0 +1,2 @@ + +