Made window hinting/param system easier
This commit is contained in:
@@ -48,16 +48,6 @@ bool OGLWindow::TerminateGLFW() {
|
||||
return !IsGLFWInitialized();
|
||||
}
|
||||
|
||||
void OGLWindow::SetHintInteger(const std::array<int, 2>& hint) {
|
||||
CheckForMainThread();
|
||||
glfwWindowHint(hint[0], hint[1]);
|
||||
}
|
||||
|
||||
void OGLWindow::SetHintString(const std::tuple<int, std::string>& hint) {
|
||||
CheckForMainThread();
|
||||
glfwWindowHintString(std::get<0>(hint), std::get<1>(hint).c_str());
|
||||
}
|
||||
|
||||
GLFWwindow* OGLWindow::MakeCurrent(const std::shared_ptr<OGLWindow>& window) {
|
||||
auto tmp = _currWindow;
|
||||
if (window) {
|
||||
@@ -71,56 +61,14 @@ GLFWwindow* OGLWindow::MakeCurrent(const std::shared_ptr<OGLWindow>& window) {
|
||||
return tmp;
|
||||
}
|
||||
|
||||
std::shared_ptr<OGLWindow> OGLWindow::CreateWindow(
|
||||
unsigned int x,
|
||||
unsigned int y,
|
||||
const std::string& title,
|
||||
const std::vector<std::array<int, 2>>& integerHints,
|
||||
const std::vector<std::tuple<int, std::string>>& stringHints
|
||||
) {
|
||||
return std::shared_ptr<OGLWindow>( new OGLWindow(
|
||||
x,
|
||||
y,
|
||||
title,
|
||||
integerHints,
|
||||
stringHints
|
||||
) );
|
||||
}
|
||||
|
||||
std::shared_ptr<OGLWindow> OGLWindow::CreateSharedWindow(
|
||||
unsigned int x,
|
||||
unsigned int y,
|
||||
const std::string& title,
|
||||
std::shared_ptr<OGLWindow> sharingWindow,
|
||||
const std::vector<std::array<int, 2>>& integerHints,
|
||||
const std::vector<std::tuple<int, std::string>>& stringHints
|
||||
) {
|
||||
return std::shared_ptr<OGLWindow>( new OGLWindow(
|
||||
x,
|
||||
y,
|
||||
title,
|
||||
integerHints,
|
||||
stringHints,
|
||||
sharingWindow->getWindowPtr()
|
||||
) );
|
||||
}
|
||||
|
||||
OGLWindow::OGLWindow(
|
||||
unsigned int x,
|
||||
unsigned int y,
|
||||
const std::string& title,
|
||||
const std::vector<std::array<int, 2>>& integerHints,
|
||||
const std::vector<std::tuple<int, std::string>>& stringHints,
|
||||
const std::string&,
|
||||
GLFWwindow* sharingContext
|
||||
) : _title(title) {
|
||||
) {
|
||||
CheckForMainThread();
|
||||
InitGLFW();
|
||||
for (const auto& hint : integerHints) {
|
||||
SetHintInteger(hint);
|
||||
}
|
||||
for (const auto& hint : stringHints) {
|
||||
SetHintString(hint);
|
||||
}
|
||||
_window_ptr = glfwCreateWindow(
|
||||
x,
|
||||
y,
|
||||
|
||||
Reference in New Issue
Block a user