12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576 |
- /**
- * Marlin 3D Printer Firmware
- * Copyright (c) 2021 MarlinFirmware [https://github.com/MarlinFirmware/Marlin]
- *
- * Based on Sprinter and grbl.
- * Copyright (c) 2011 Camiel Gubbels / Erik van der Zalm
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <https://www.gnu.org/licenses/>.
- *
- */
- #pragma once
-
- /**
- * DWIN Enhanced implementation for PRO UI
- * Author: Miguel A. Risco-Castillo (MRISCOC)
- * Version: 3.10.1
- * Date: 2022/03/06
- */
-
- #include "../common/dwin_api.h"
-
- // Display QR code
- // The size of the QR code is (46*QR_Pixel)*(46*QR_Pixel) dot matrix
- // QR_Pixel: The pixel size occupied by each point of the QR code: 0x01-0x0F (1-16)
- // (Nx, Ny): The coordinates of the upper left corner displayed by the QR code
- // str: multi-bit data
- void DWIN_Draw_QR(uint8_t QR_Pixel, uint16_t x, uint16_t y, char *string);
-
- inline void DWIN_Draw_QR(uint8_t QR_Pixel, uint16_t x, uint16_t y, FSTR_P title) {
- DWIN_Draw_QR(QR_Pixel, x, y, (char *)title);
- }
-
- // Copy area from virtual display area to current screen
- // cacheID: virtual area number
- // xStart/yStart: Upper-left of virtual area
- // xEnd/yEnd: Lower-right of virtual area
- // x/y: Screen paste point
- void DWIN_Frame_AreaCopy(uint8_t cacheID, uint16_t xStart, uint16_t yStart, uint16_t xEnd, uint16_t yEnd, uint16_t x, uint16_t y);
-
- // Copy area from current virtual display area to current screen
- // xStart/yStart: Upper-left of virtual area
- // xEnd/yEnd: Lower-right of virtual area
- // x/y: Screen paste point
- void DWIN_Frame_AreaCopy(uint16_t xStart, uint16_t yStart, uint16_t xEnd, uint16_t yEnd, uint16_t x, uint16_t y);
-
- // Copy area from virtual display area to current screen
- // IBD: background display: 0=Background filtering is not displayed, 1=Background display \\When setting the background filtering not to display, the background must be pure black
- // BIR: Background image restoration: 0=Background image is not restored, 1=Automatically use virtual display area image for background restoration
- // BFI: Background filtering strength: 0=normal, 1=enhanced, (only valid when the icon background display=0)
- // cacheID: virtual area number
- // xStart/yStart: Upper-left of virtual area
- // xEnd/yEnd: Lower-right of virtual area
- // x/y: Screen paste point
- void DWIN_Frame_AreaCopy(bool IBD, bool BIR, bool BFI, uint8_t cacheID, uint16_t xStart, uint16_t yStart, uint16_t xEnd, uint16_t yEnd, uint16_t x, uint16_t y);
-
- // Write buffer data to the SRAM or Flash
- // mem: 0x5A=32KB SRAM, 0xA5=16KB Flash
- // addr: start address
- // length: Bytes to write
- // data: address of the buffer with data
- void DWIN_WriteToMem(uint8_t mem, uint16_t addr, uint16_t length, uint8_t *data);
-
- // Write the contents of the 32KB SRAM data memory into the designated image memory space.
- // picID: Picture memory space location, 0x00-0x0F, each space is 32Kbytes
- void DWIN_SRAMToPic(uint8_t picID);
|