Add language tags for C code sections

This commit is contained in:
Camilla Löwy
2024-02-13 20:16:04 +01:00
parent d93868bcf3
commit fb10e95f78
9 changed files with 224 additions and 224 deletions
+67 -67
View File
@@ -32,7 +32,7 @@ A window and its OpenGL or OpenGL ES context are created with @ref
glfwCreateWindow, which returns a handle to the created window object. For
example, this creates a 640 by 480 windowed mode window:
@code
@code{.c}
GLFWwindow* window = glfwCreateWindow(640, 480, "My Title", NULL, NULL);
@endcode
@@ -50,7 +50,7 @@ To create a full screen window, you need to specify which monitor the window
should use. In most cases, the user's primary monitor is a good choice.
For more information about retrieving monitors, see @ref monitor_monitors.
@code
@code{.c}
GLFWwindow* window = glfwCreateWindow(640, 480, "My Title", glfwGetPrimaryMonitor(), NULL);
@endcode
@@ -101,7 +101,7 @@ switching much smoother. This is sometimes called _windowed full screen_ or
_borderless full screen_ window and counts as a full screen window. To create
such a window, request the current video mode.
@code
@code{.c}
const GLFWvidmode* mode = glfwGetVideoMode(monitor);
glfwWindowHint(GLFW_RED_BITS, mode->redBits);
@@ -114,7 +114,7 @@ GLFWwindow* window = glfwCreateWindow(mode->width, mode->height, "My Title", mon
This also works for windowed mode windows that are made full screen.
@code
@code{.c}
const GLFWvidmode* mode = glfwGetVideoMode(monitor);
glfwSetWindowMonitor(window, monitor, 0, 0, mode->width, mode->height, mode->refreshRate);
@@ -129,7 +129,7 @@ make windowed full screen, you need to have saved the desktop resolution before.
When a window is no longer needed, destroy it with @ref glfwDestroyWindow.
@code
@code{.c}
glfwDestroyWindow(window);
@endcode
@@ -598,7 +598,7 @@ The current state of the close flag is returned by @ref glfwWindowShouldClose
and can be set or cleared directly with @ref glfwSetWindowShouldClose. A common
pattern is to use the close flag as a main loop condition.
@code
@code{.c}
while (!glfwWindowShouldClose(window))
{
render(window);
@@ -611,7 +611,7 @@ while (!glfwWindowShouldClose(window))
If you wish to be notified when the user attempts to close a window, set a close
callback.
@code
@code{.c}
glfwSetWindowCloseCallback(window, window_close_callback);
@endcode
@@ -619,7 +619,7 @@ The callback function is called directly _after_ the close flag has been set.
It can be used for example to filter close requests and clear the close flag
again unless certain conditions are met.
@code
@code{.c}
void window_close_callback(GLFWwindow* window)
{
if (!time_to_close)
@@ -635,7 +635,7 @@ mode windows, this sets the size, in
[screen coordinates](@ref coordinate_systems) of the _content area_ or _content
area_ of the window. The window system may impose limits on window size.
@code
@code{.c}
glfwSetWindowSize(window, 640, 480);
@endcode
@@ -647,14 +647,14 @@ resolution of the set video mode.
If you wish to be notified when a window is resized, whether by the user, the
system or your own code, set a size callback.
@code
@code{.c}
glfwSetWindowSizeCallback(window, window_size_callback);
@endcode
The callback function receives the new size, in screen coordinates, of the
content area of the window when the window is resized.
@code
@code{.c}
void window_size_callback(GLFWwindow* window, int width, int height)
{
}
@@ -663,7 +663,7 @@ void window_size_callback(GLFWwindow* window, int width, int height)
There is also @ref glfwGetWindowSize for directly retrieving the current size of
a window.
@code
@code{.c}
int width, height;
glfwGetWindowSize(window, &width, &height);
@endcode
@@ -677,7 +677,7 @@ The above functions work with the size of the content area, but decorated
windows typically have title bars and window frames around this rectangle. You
can retrieve the extents of these with @ref glfwGetWindowFrameSize.
@code
@code{.c}
int left, top, right, bottom;
glfwGetWindowFrameSize(window, &left, &top, &right, &bottom);
@endcode
@@ -698,14 +698,14 @@ pixels, of the framebuffer of a window.
If you wish to be notified when the framebuffer of a window is resized, whether
by the user or the system, set a size callback.
@code
@code{.c}
glfwSetFramebufferSizeCallback(window, framebuffer_size_callback);
@endcode
The callback function receives the new size of the framebuffer when it is
resized, which can for example be used to update the OpenGL viewport.
@code
@code{.c}
void framebuffer_size_callback(GLFWwindow* window, int width, int height)
{
glViewport(0, 0, width, height);
@@ -715,7 +715,7 @@ void framebuffer_size_callback(GLFWwindow* window, int width, int height)
There is also @ref glfwGetFramebufferSize for directly retrieving the current
size of the framebuffer of a window.
@code
@code{.c}
int width, height;
glfwGetFramebufferSize(window, &width, &height);
glViewport(0, 0, width, height);
@@ -730,7 +730,7 @@ example if the window is dragged between a regular monitor and a high-DPI one.
The content scale for a window can be retrieved with @ref
glfwGetWindowContentScale.
@code
@code{.c}
float xscale, yscale;
glfwGetWindowContentScale(window, &xscale, &yscale);
@endcode
@@ -750,13 +750,13 @@ If you wish to be notified when the content scale of a window changes, whether
because of a system setting change or because it was moved to a monitor with
a different scale, set a content scale callback.
@code
@code{.c}
glfwSetWindowContentScaleCallback(window, window_content_scale_callback);
@endcode
The callback function receives the new content scale of the window.
@code
@code{.c}
void window_content_scale_callback(GLFWwindow* window, float xscale, float yscale)
{
set_interface_scale(xscale, yscale);
@@ -777,14 +777,14 @@ be enforced with @ref glfwSetWindowSizeLimits. The user may resize the window
to any size and aspect ratio within the specified limits, unless the aspect
ratio is also set.
@code
@code{.c}
glfwSetWindowSizeLimits(window, 200, 200, 400, 400);
@endcode
To specify only a minimum size or only a maximum one, set the other pair to
`GLFW_DONT_CARE`.
@code
@code{.c}
glfwSetWindowSizeLimits(window, 640, 480, GLFW_DONT_CARE, GLFW_DONT_CARE);
@endcode
@@ -795,7 +795,7 @@ with @ref glfwSetWindowAspectRatio. The user may resize the window freely
unless size limits are also set, but the size will be constrained to maintain
the aspect ratio.
@code
@code{.c}
glfwSetWindowAspectRatio(window, 16, 9);
@endcode
@@ -803,7 +803,7 @@ The aspect ratio is specified as a numerator and denominator, corresponding to
the width and height, respectively. If you want a window to maintain its
current aspect ratio, use its current size as the ratio.
@code
@code{.c}
int width, height;
glfwGetWindowSize(window, &width, &height);
glfwSetWindowAspectRatio(window, width, height);
@@ -824,7 +824,7 @@ This is most often the right choice. If you need to create a window at
a specific position, you can set the desired position with the @ref
GLFW_POSITION_X and @ref GLFW_POSITION_Y window hints.
@code
@code{.c}
glfwWindowHint(GLFW_POSITION_X, 70);
glfwWindowHint(GLFW_POSITION_Y, 83);
@endcode
@@ -836,21 +836,21 @@ glfwSetWindowPos. This moves the window so that the upper-left corner of its
content area has the specified [screen coordinates](@ref coordinate_systems).
The window system may put limitations on window placement.
@code
@code{.c}
glfwSetWindowPos(window, 100, 100);
@endcode
If you wish to be notified when a window is moved, whether by the user, the
system or your own code, set a position callback.
@code
@code{.c}
glfwSetWindowPosCallback(window, window_pos_callback);
@endcode
The callback function receives the new position, in screen coordinates, of the
upper-left corner of the content area when the window is moved.
@code
@code{.c}
void window_pos_callback(GLFWwindow* window, int xpos, int ypos)
{
}
@@ -859,7 +859,7 @@ void window_pos_callback(GLFWwindow* window, int xpos, int ypos)
There is also @ref glfwGetWindowPos for directly retrieving the current position
of the content area of the window.
@code
@code{.c}
int xpos, ypos;
glfwGetWindowPos(window, &xpos, &ypos);
@endcode
@@ -871,7 +871,7 @@ All GLFW windows have a title, although undecorated or full screen windows may
not display it or only display it in a task bar or similar interface. You can
set a UTF-8 encoded window title with @ref glfwSetWindowTitle.
@code
@code{.c}
glfwSetWindowTitle(window, "My Window");
@endcode
@@ -881,13 +881,13 @@ to keep it around.
As long as your source file is encoded as UTF-8, you can use any Unicode
characters directly in the source.
@code
@code{.c}
glfwSetWindowTitle(window, "ラストエグザイル");
@endcode
If you are using C++11 or C11, you can use a UTF-8 string literal.
@code
@code{.c}
glfwSetWindowTitle(window, u8"This is always a UTF-8 string");
@endcode
@@ -897,7 +897,7 @@ glfwSetWindowTitle(window, u8"This is always a UTF-8 string");
Decorated windows have icons on some platforms. You can set this icon by
specifying a list of candidate images with @ref glfwSetWindowIcon.
@code
@code{.c}
GLFWimage images[2];
images[0] = load_icon("my_icon.png");
images[1] = load_icon("my_icon_small.png");
@@ -911,7 +911,7 @@ sequential rows, starting from the top-left corner.
To revert to the default window icon, pass in an empty image array.
@code
@code{.c}
glfwSetWindowIcon(window, 0, NULL);
@endcode
@@ -921,7 +921,7 @@ glfwSetWindowIcon(window, 0, NULL);
Full screen windows are associated with a specific monitor. You can get the
handle for this monitor with @ref glfwGetWindowMonitor.
@code
@code{.c}
GLFWmonitor* monitor = glfwGetWindowMonitor(window);
@endcode
@@ -935,7 +935,7 @@ with @ref glfwSetWindowMonitor. When making a window full screen on the same or
on a different monitor, specify the desired monitor, resolution and refresh
rate. The position arguments are ignored.
@code
@code{.c}
const GLFWvidmode* mode = glfwGetVideoMode(monitor);
glfwSetWindowMonitor(window, monitor, 0, 0, mode->width, mode->height, mode->refreshRate);
@@ -944,7 +944,7 @@ glfwSetWindowMonitor(window, monitor, 0, 0, mode->width, mode->height, mode->ref
When making the window windowed, specify the desired position and size. The
refresh rate argument is ignored.
@code
@code{.c}
glfwSetWindowMonitor(window, NULL, xpos, ypos, width, height, 0);
@endcode
@@ -958,7 +958,7 @@ before making it full screen and then pass them in as above.
Windows can be iconified (i.e. minimized) with @ref glfwIconifyWindow.
@code
@code{.c}
glfwIconifyWindow(window);
@endcode
@@ -968,7 +968,7 @@ is restored until the user or application restores the window.
Iconified windows can be restored with @ref glfwRestoreWindow. This function
also restores windows from maximization.
@code
@code{.c}
glfwRestoreWindow(window);
@endcode
@@ -978,13 +978,13 @@ monitor as well.
If you wish to be notified when a window is iconified or restored, whether by
the user, system or your own code, set an iconify callback.
@code
@code{.c}
glfwSetWindowIconifyCallback(window, window_iconify_callback);
@endcode
The callback function receives changes in the iconification state of the window.
@code
@code{.c}
void window_iconify_callback(GLFWwindow* window, int iconified)
{
if (iconified)
@@ -1000,7 +1000,7 @@ void window_iconify_callback(GLFWwindow* window, int iconified)
You can also get the current iconification state with @ref glfwGetWindowAttrib.
@code
@code{.c}
int iconified = glfwGetWindowAttrib(window, GLFW_ICONIFIED);
@endcode
@@ -1009,7 +1009,7 @@ int iconified = glfwGetWindowAttrib(window, GLFW_ICONIFIED);
Windows can be maximized (i.e. zoomed) with @ref glfwMaximizeWindow.
@code
@code{.c}
glfwMaximizeWindow(window);
@endcode
@@ -1019,20 +1019,20 @@ function does nothing.
Maximized windows can be restored with @ref glfwRestoreWindow. This function
also restores windows from iconification.
@code
@code{.c}
glfwRestoreWindow(window);
@endcode
If you wish to be notified when a window is maximized or restored, whether by
the user, system or your own code, set a maximize callback.
@code
@code{.c}
glfwSetWindowMaximizeCallback(window, window_maximize_callback);
@endcode
The callback function receives changes in the maximization state of the window.
@code
@code{.c}
void window_maximize_callback(GLFWwindow* window, int maximized)
{
if (maximized)
@@ -1048,7 +1048,7 @@ void window_maximize_callback(GLFWwindow* window, int maximized)
You can also get the current maximization state with @ref glfwGetWindowAttrib.
@code
@code{.c}
int maximized = glfwGetWindowAttrib(window, GLFW_MAXIMIZED);
@endcode
@@ -1056,7 +1056,7 @@ By default, newly created windows are not maximized. You can change this
behavior by setting the [GLFW_MAXIMIZED](@ref GLFW_MAXIMIZED_hint) window hint
before creating the window.
@code
@code{.c}
glfwWindowHint(GLFW_MAXIMIZED, GLFW_TRUE);
@endcode
@@ -1065,7 +1065,7 @@ glfwWindowHint(GLFW_MAXIMIZED, GLFW_TRUE);
Windowed mode windows can be hidden with @ref glfwHideWindow.
@code
@code{.c}
glfwHideWindow(window);
@endcode
@@ -1075,7 +1075,7 @@ and calling @ref glfwHideWindow on a full screen window does nothing.
Hidden windows can be shown with @ref glfwShowWindow.
@code
@code{.c}
glfwShowWindow(window);
@endcode
@@ -1086,7 +1086,7 @@ existing window with @ref glfwSetWindowAttrib.
You can also get the current visibility state with @ref glfwGetWindowAttrib.
@code
@code{.c}
int visible = glfwGetWindowAttrib(window, GLFW_VISIBLE);
@endcode
@@ -1094,7 +1094,7 @@ By default, newly created windows are visible. You can change this behavior by
setting the [GLFW_VISIBLE](@ref GLFW_VISIBLE_hint) window hint before creating
the window.
@code
@code{.c}
glfwWindowHint(GLFW_VISIBLE, GLFW_FALSE);
@endcode
@@ -1108,7 +1108,7 @@ example moving it to a specific location.
Windows can be given input focus and brought to the front with @ref
glfwFocusWindow.
@code
@code{.c}
glfwFocusWindow(window);
@endcode
@@ -1119,13 +1119,13 @@ to the top. For a less disruptive way of getting the user's attention, see
If you wish to be notified when a window gains or loses input focus, whether by
the user, system or your own code, set a focus callback.
@code
@code{.c}
glfwSetWindowFocusCallback(window, window_focus_callback);
@endcode
The callback function receives changes in the input focus state of the window.
@code
@code{.c}
void window_focus_callback(GLFWwindow* window, int focused)
{
if (focused)
@@ -1141,7 +1141,7 @@ void window_focus_callback(GLFWwindow* window, int focused)
You can also get the current input focus state with @ref glfwGetWindowAttrib.
@code
@code{.c}
int focused = glfwGetWindowAttrib(window, GLFW_FOCUSED);
@endcode
@@ -1149,7 +1149,7 @@ By default, newly created windows are given input focus. You can change this
behavior by setting the [GLFW_FOCUSED](@ref GLFW_FOCUSED_hint) window hint
before creating the window.
@code
@code{.c}
glfwWindowHint(GLFW_FOCUSED, GLFW_FALSE);
@endcode
@@ -1159,7 +1159,7 @@ glfwWindowHint(GLFW_FOCUSED, GLFW_FALSE);
If you wish to notify the user of an event without interrupting, you can request
attention with @ref glfwRequestWindowAttention.
@code
@code{.c}
glfwRequestWindowAttention(window);
@endcode
@@ -1173,14 +1173,14 @@ attention, the system will automatically end the request.
If you wish to be notified when the contents of a window is damaged and needs
to be refreshed, set a window refresh callback.
@code
@code{.c}
glfwSetWindowRefreshCallback(m_handle, window_refresh_callback);
@endcode
The callback function is called when the contents of the window needs to be
refreshed.
@code
@code{.c}
void window_refresh_callback(GLFWwindow* window)
{
draw_editor_ui(window);
@@ -1207,7 +1207,7 @@ Window framebuffers can be made transparent on a per-pixel per-frame basis with
the [GLFW_TRANSPARENT_FRAMEBUFFER](@ref GLFW_TRANSPARENT_FRAMEBUFFER_hint)
window hint.
@code
@code{.c}
glfwWindowHint(GLFW_TRANSPARENT_FRAMEBUFFER, GLFW_TRUE);
@endcode
@@ -1220,7 +1220,7 @@ with the
[GLFW_TRANSPARENT_FRAMEBUFFER](@ref GLFW_TRANSPARENT_FRAMEBUFFER_attrib)
window attribute.
@code
@code{.c}
if (glfwGetWindowAttrib(window, GLFW_TRANSPARENT_FRAMEBUFFER))
{
// window framebuffer is currently transparent
@@ -1232,7 +1232,7 @@ GLFW comes with an example that enabled framebuffer transparency called `gears`.
The opacity of the whole window, including any decorations, can be set with @ref
glfwSetWindowOpacity.
@code
@code{.c}
glfwSetWindowOpacity(window, 0.5f);
@endcode
@@ -1242,7 +1242,7 @@ opacity value for newly created windows is 1.
The current opacity of a window can be queried with @ref glfwGetWindowOpacity.
@code
@code{.c}
float opacity = glfwGetWindowOpacity(window);
@endcode
@@ -1265,7 +1265,7 @@ interaction, (e.g. whether it has input focus), while others reflect inherent
properties of the window (e.g. what kind of border it has). Some are related to
the window and others to its OpenGL or OpenGL ES context.
@code
@code{.c}
if (glfwGetWindowAttrib(window, GLFW_FOCUSED))
{
// window has input focus
@@ -1279,7 +1279,7 @@ The [GLFW_DECORATED](@ref GLFW_DECORATED_attrib),
[GLFW_FOCUS_ON_SHOW](@ref GLFW_FOCUS_ON_SHOW_attrib) window attributes can be
changed with @ref glfwSetWindowAttrib.
@code
@code{.c}
glfwSetWindowAttrib(window, GLFW_RESIZABLE, GLFW_FALSE);
@endcode
@@ -1465,7 +1465,7 @@ When the entire frame has been rendered, it is time to swap the back and the
front buffers in order to display what has been rendered and begin rendering
a new frame. This is done with @ref glfwSwapBuffers.
@code
@code{.c}
glfwSwapBuffers(window);
@endcode
@@ -1474,7 +1474,7 @@ function @ref glfwSwapInterval it is possible to select the minimum number of
monitor refreshes the driver should wait from the time @ref glfwSwapBuffers was
called before swapping the buffers:
@code
@code{.c}
glfwSwapInterval(1);
@endcode