Panda3D

Loading...
Searching...
No Matches
config_windisplay.cxx
Go to the documentation of this file.
1/**
2 * PANDA 3D SOFTWARE
3 * Copyright (c) Carnegie Mellon University. All rights reserved.
4 *
5 * All use of this software is subject to the terms of the revised BSD
6 * license. You should have received a copy of this license along
7 * with this source code in a file named "LICENSE."
8 *
9 * @file config_windisplay.cxx
10 * @author drose
11 * @date 2002-12-20
12 */
13
14#include "config_windisplay.h"
15#include "winGraphicsPipe.h"
16#include "winGraphicsWindow.h"
17#include "dconfig.h"
18
19#if !defined(CPPPARSER) && !defined(LINK_ALL_STATIC) && !defined(BUILDING_PANDAWIN)
20 #error Buildsystem error: BUILDING_PANDAWIN not defined
21#endif
22
23Configure(config_windisplay);
24NotifyCategoryDef(windisplay, "display");
25
26ConfigureFn(config_windisplay) {
27 init_libwindisplay();
28}
29
30 ConfigVariableBool responsive_minimized_fullscreen_window
31("responsive-minimized-fullscreen-window",false);
32
33 ConfigVariableBool hold_keys_across_windows
34("hold-keys-across-windows", false,
35 PRC_DESC("Set this true to remember the current state of the keyboard while "
36 "the window focus is lost, or false to pretend the user is not "
37 "holding down any keys while the window focus is lost. In either "
38 "case it should accurately restore the correct keyboard state when "
39 "the window focus is regained."));
40
41 ConfigVariableBool do_vidmemsize_check
42("do-vidmemsize-check", true,
43 PRC_DESC("if true, use ddraw's GetAvailVidMem to fail if driver says "
44 "it has too little video mem"));
45
46 ConfigVariableBool auto_cpu_data
47("auto-cpu-data", false,
48 PRC_DESC("Set this true to automatically get the CPU data at start; false to "
49 "require an explicit call to pipe->lookup_cpu_data(). Setting this "
50 "true may slow down startup time by 1-2 seconds."));
51
52 ConfigVariableBool ime_aware
53("ime-aware", false,
54 PRC_DESC("Set this true to show ime texts on the chat panel and hide the "
55 "IME default windows. This is a mechanism to work around DX8/9 "
56 "interface."));
57
58 ConfigVariableBool ime_hide
59("ime-hide", false,
60 PRC_DESC("Set this true to hide ime windows."));
61
62 ConfigVariableBool request_dxdisplay_information
63("request-dxdisplay-information", false,
64 PRC_DESC("Setting this to true enables lumberingly slow and evil code at "
65 "start-up that creates a Direct3D window and subsequently fills up "
66 "up the video memory with dummy textures in order to find out how "
67 "much video memory there actually is. Leave this disabled unless "
68 "you have a specific need for this information and don't mind "
69 "having a slow start-up."));
70
71 ConfigVariableBool dpi_aware
72("dpi-aware", true,
73 PRC_DESC("The default behavior is for Panda3D to disable DPI-virtualization "
74 "that is introduced in Windows 8.1. Set this to false if you are "
75 "experiencing problems with this setting."));
76
77 ConfigVariableBool dpi_window_resize
78("dpi-window-resize", false,
79 PRC_DESC("Set this to true to let Panda3D resize the window according to the "
80 "DPI settings whenever the window is dragged to a monitor with "
81 "different DPI, or when the DPI setting is changed in the control "
82 "panel. Only available in Windows 8.1 and later, and requires "
83 "dpi-aware to be set as well."));
84
85 ConfigVariableBool swapbuffer_framelock
86("swapbuffer-framelock", false,
87 PRC_DESC("Set this true to enable HW swapbuffer frame-lock on 3dlabs cards"));
88
89 ConfigVariableBool paste_emit_keystrokes
90("paste-emit-keystrokes", true,
91 PRC_DESC("Handle paste events (Ctrl-V) as separate keystroke events for each "
92 "pasted character."));
93
94 ConfigVariableBool disable_message_loop
95("disable-message-loop", false,
96 PRC_DESC("If this is false, Panda will process messages from the Windows "
97 "message loop, which is required for normal operation. You may set "
98 "this to true if some other UI framework (such as Tcl/Tk) needs "
99 "exclusive ownership of the message loop."));
100
101/**
102 * Initializes the library. This must be called at least once before any of
103 * the functions or classes in this library can be used. Normally it will be
104 * called by the static initializers and need not be called explicitly, but
105 * special cases exist.
106 */
107 void
108 init_libwindisplay() {
109 static bool initialized = false;
110 if (initialized) {
111 return;
112 }
113 initialized = true;
114
115 WinGraphicsPipe::init_type();
116 WinGraphicsWindow::init_type();
117}
ConfigVariableBool
This is a convenience class to specialize ConfigVariable as a boolean type.
Definition configVariableBool.h:23
init_libwindisplay
void init_libwindisplay()
Initializes the library.
Definition config_windisplay.cxx:108
config_windisplay.h
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.
dconfig.h
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.
winGraphicsPipe.h
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.
winGraphicsWindow.h
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.