adjusts VideoMode and associated function to pull request change requests.

This commit is contained in:
David Linus Briemann 2018-05-04 18:03:25 +02:00
parent 2a1ab90ad5
commit 446247e369
2 changed files with 13 additions and 16 deletions

View File

@ -10,13 +10,15 @@ type Monitor struct {
monitor *glfw.Monitor
}
// VideoMode represents all properties of a video mode and is attached
// to a monitor if it is a fullscreen mode.
// VideoMode represents all properties of a video mode and is
// associated with a monitor if it is used in fullscreen mode.
type VideoMode struct {
*glfw.VidMode
// Monitor is a pointer to the monitor that owns this video mode.
// If Monitor is nil the video mode is windowed.
Monitor *Monitor
// Width is the width of the vide mode in pixels.
Width int
// Height is the height of the video mode in pixels.
Height int
// RefreshRate holds the refresh rate of the associated monitor in Hz.
RefreshRate int
}
// PrimaryMonitor returns the main monitor (usually the one with the taskbar and stuff).
@ -106,15 +108,16 @@ func (m *Monitor) RefreshRate() (rate float64) {
}
// VideoModes returns all available video modes for the monitor.
func (m *Monitor) VideoModes() (vmodes []*VideoMode) {
func (m *Monitor) VideoModes() (vmodes []VideoMode) {
var modes []*glfw.VidMode
mainthread.Call(func() {
modes = m.monitor.GetVideoModes()
})
for _, mode := range modes {
vmodes = append(vmodes, &VideoMode{
VidMode: mode,
Monitor: m,
vmodes = append(vmodes, VideoMode{
Width: mode.Width,
Height: mode.Height,
RefreshRate: mode.RefreshRate,
})
}
return

View File

@ -424,9 +424,3 @@ func (w *Window) Clear(c color.Color) {
func (w *Window) Color(at pixel.Vec) pixel.RGBA {
return w.canvas.Color(at)
}
// SetVideoMode applies the given video mode to this window.
func (w *Window) SetVideoMode(vm VideoMode) {
w.SetMonitor(vm.Monitor)
w.SetBounds(pixel.R(0, 0, float64(vm.Width), float64(vm.Height)))
}