svision2
1.0.0
นี่คือ svision2 ห้องสมุด GUI อื่น ความต่อเนื่องของ SVISION สำหรับ MSDOS : SVISION สำหรับ MSDOS
ดูแหล่งข้อมูลเต็มรูปแบบสำหรับการสาธิต - src/main.cxx 
clang-formatstd::make_shared<Button> )src/buttonstates.h (ใช้โดย Button และ Checkbox )#ifdef )Timer ในทางปฏิบัติคุณจะได้รับ Win32Timer และคุณสามารถดูได้ที่ดีบักเกอร์ The UINT_PTR timer_idPosixTimer และคุณสามารถดู timer_t timeridauto func() -> const int; - สำหรับทุกสิ่งint foo = 0; Point location = {} ดังนั้นคุณสามารถค้นหา = และรู้ว่าเมื่อสมาชิกถูกกำหนดโดยค่าเริ่มต้นสถานะคือสิ่งนี้ยังไม่สามารถใช้งานได้และอยู่ระหว่างการพัฒนาอย่างหนัก
สำหรับคำแนะนำในการรวบรวมดูคำแนะนำในการรวบรวม
... ฉันไม่ได้เป็นเจ้าของ MAC ดังนั้น PR จึงได้รับการต้อนรับ หากคุณต้องการซื้อ Mac ให้ฉันติดต่อฉัน นี่คือการวางแผน - และควรเป็นพอร์ตที่ง่าย
การออกแบบชุดเครื่องมือนี้เป็นเรื่องเล็กน้อย: ทุกอย่างเป็นภาพแรสเตอร์ ไม่มี GPU วิดเจ็ตแต่ละตัวมีบัฟเฟอร์ของตัวเองที่เขียนไว้และมันจะถูกทาสีให้กับพ่อแม่
src/platform-foo.{h,cpp} : ใช้ struct PlatformFOO : Platform :open_window() ส่งคืนหน้าต่างแพลตฟอร์มของคุณ (ดู Bellow)invalidate(PlatformWindow &w) ก่อนไปที่หน้าต่างของคุณเอง: auto window = static_cast<PlatformWindowFOO *>(&w); (ไม่จำเป็นต้องตรวจสอบหากมีคนส่งคลาสที่แตกต่างออกไปโดยมีจุดประสงค์ - ปัญหาน่าเกลียดเกิดขึ้น)show_window() - อีกครั้งส่งไปยังชั้นเรียนของคุณเองเพื่อรับที่จับที่ถูกต้อง ( platformwin32.cpp เป็นตัวอย่างง่ายๆที่ดี)invalidate() - อีกครั้งส่งไปยังชั้นเรียนของคุณเองเพื่อรับที่จับที่ถูกต้อง สิ่งนี้จะวาดเนื้อหาหน้าต่างลงในระบบ windowing แพลตฟอร์มของคุณmain_loop() - โปรดทราบว่าคุณไม่ควรออกจากหน้าต่างสุดท้ายที่เปิดอยู่ ดู platformwin32.cpp สำหรับการอ้างอิงconvert_x11_key_event()using ThePlatform = PlatformFOOPlatformWindowFOO : คลาสนี้กำหนดหน้าต่างใหม่ คุณสามารถเพิ่มรหัสในเครื่องของคุณ ( HWND หรือ XID ) ทำสิ่งนี้ภายในในไฟล์ PlatformFOO.cpp - ไปข้างหน้าเท่านั้นประกาศสิ่งนี้ในส่วนหัวเนื่องจากนี่เป็นรายละเอียดการใช้งานที่บริสุทธิ์src/timer.{h,cpp} : คุณจะต้องใช้ตัวจับเวลาแพลตฟอร์ม Inside timer.h เพิ่ม define struct FooTimer : PlatformTimer - และในตอนท้าย using Timer = FooTimer