mirror of
https://github.com/Nexoniarz/Fry3DX.git
synced 2026-11-03 04:24:26 +00:00
Fry3DX 0.4: an easy 3D modeller
Shapes with live settings, shape editing, knife and hole tools, drawing shapes onto other objects, combining objects (add / subtract / overlap), copies, thickness, painting with stickers and layers, a Layout tab, a Print tab with checks, packed .fry files with autosave, export to GLB, glTF, FBX, OBJ, 3MF, STL and PLY, folders in Layers, its own crash screen, and a website for GitHub Pages in docs/. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01NMSrd5oe1GpUD7E6d825KP
This commit is contained in:
commit
f3e8eca87b
135 changed files with 23423 additions and 0 deletions
31
engine/platform/window.h
Normal file
31
engine/platform/window.h
Normal file
|
|
@ -0,0 +1,31 @@
|
|||
#pragma once
|
||||
#include <cstdint>
|
||||
|
||||
#include <cstdint>
|
||||
#include <utility>
|
||||
#include <vector>
|
||||
|
||||
struct SDL_Window;
|
||||
|
||||
namespace keel {
|
||||
|
||||
class Window {
|
||||
public:
|
||||
// opengl: a window for an OpenGL context (the backend creates it); otherwise Vulkan.
|
||||
bool init(const char* title, int width, int height, bool opengl = false);
|
||||
void shutdown();
|
||||
SDL_Window* handle() const { return window_; }
|
||||
// Size in pixels (not points); 0×0 while minimized.
|
||||
void pixelSize(uint32_t& w, uint32_t& h) const;
|
||||
// mode: 0 = windowed (width × height), 1 = borderless fullscreen (desktop size),
|
||||
// 2 = exclusive fullscreen at the display mode closest to width × height.
|
||||
void setMode(int mode, int width, int height);
|
||||
void setIcon(const uint8_t* rgba, int width, int height);
|
||||
// Fullscreen resolutions the display offers, largest first, no duplicates.
|
||||
std::vector<std::pair<int, int>> resolutions() const;
|
||||
|
||||
private:
|
||||
SDL_Window* window_ = nullptr;
|
||||
};
|
||||
|
||||
} // namespace keel
|
||||
Loading…
Reference in a new issue