Qt
Internal/Contributor docs for the Qt SDK. Note: These are NOT official API docs; those are found at https://doc.qt.io/
Loading...
Searching...
No Matches
qnamespace.qdoc
Go to the documentation of this file.
1// Copyright (C) 2022 The Qt Company Ltd.
2// Copyright (C) 2020 Klaralvdalens Datakonsult AB, a KDAB Group company, info@kdab.com, author Giuseppe D'Angelo <giuseppe.dangelo@kdab.com>
3// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GFDL-1.3-no-invariants-only
4
5/*!
6 \namespace Qt
7 \inmodule QtCore
8 \keyword Qt Namespace
9
10 \brief The Qt namespace contains miscellaneous identifiers
11 used throughout the Qt library.
12*/
13
14/*!
15 \enum Qt::Orientation
16
17 This type is used to signify an object's orientation.
18
19 \value Horizontal
20 \value Vertical
21
22 Orientation is used with QScrollBar for example.
23*/
24
25/*!
26 \enum Qt::AlignmentFlag
27
28 This enum type is used to describe alignment. It contains
29 horizontal and vertical flags that can be combined to produce
30 the required effect.
31
32 The \l{TextElideMode} enum can also be used in many situations
33 to fine-tune the appearance of aligned text.
34
35 The horizontal flags are:
36
37 \value AlignLeft Aligns with the left edge.
38 \value AlignRight Aligns with the right edge.
39 \value AlignHCenter Centers horizontally in the available space.
40 \value AlignJustify Justifies the text in the available space.
41
42 The vertical flags are:
43
44 \value AlignTop Aligns with the top.
45 \value AlignBottom Aligns with the bottom.
46 \value AlignVCenter Centers vertically in the available space.
47 \value AlignBaseline Aligns with the baseline.
48
49 You can use only one of the horizontal flags at a time. There is
50 one two-dimensional flag:
51
52 \value AlignCenter Centers in both dimensions.
53
54 You can use at most one horizontal and one vertical flag at a
55 time. Qt::AlignCenter counts as both horizontal and vertical.
56
57 Three enum values are useful in applications that can be run in
58 right-to-left mode:
59
60 \value AlignAbsolute If the widget's layout direction is
61 Qt::RightToLeft (instead of Qt::LeftToRight, the default),
62 Qt::AlignLeft refers to the \e right edge and Qt::AlignRight
63 to the \e left edge. This is normally the desired behavior.
64 If you want Qt::AlignLeft to always mean "left" and
65 Qt::AlignRight to always mean "right", combine the flag with
66 Qt::AlignAbsolute.
67 \value AlignLeading Synonym for Qt::AlignLeft.
68 \value AlignTrailing Synonym for Qt::AlignRight.
69
70 Masks:
71
72 \value AlignHorizontal_Mask
73 \value AlignVertical_Mask
74
75 Conflicting combinations of flags have undefined meanings.
76*/
77
78/*!
79 \enum Qt::ApplicationAttribute
80
81 This enum describes attributes that change the behavior of
82 application-wide features. These are enabled and disabled using
83 QCoreApplication::setAttribute(), and can be tested for with
84 QCoreApplication::testAttribute().
85
86
87 \value [since 6.7] AA_QtQuickUseDefaultSizePolicy Qt Quick Layouts use the built-in size
88 policy of \l Item. For example, when this is set, \l Button fills the available
89 width, but has a fixed height. When this is not set, it will use the default
90 sizing behavior of the layout it's in, which is to use its implicit size as the
91 preferred size. This is explained in detail in \l {Specifying preferred size} and
92 \l {Size constraints}. When this is set, the default size policy of the item
93 with the layout can be overridden by explicitly setting
94 \l{Layout::fillWidth}{Layout.fillWidth} or
95 \l{Layout::fillHeight}{Layout.fillHeight}.
96
97 \value AA_DontShowIconsInMenus Actions with the Icon property won't be
98 shown in any menus unless specifically set by the
99 QAction::iconVisibleInMenu property. The default value of this
100 attribute depends on the platform. To override the default
101 behavior, set the attribute after QGuiApplication has been
102 instantiated.
103 Menus that are currently open or menus already created in the native
104 \macos menubar \e{may not} pick up a change in this attribute. Changes
105 in the QAction::iconVisibleInMenu property will always be picked up.
106
107 \value AA_DontShowShortcutsInContextMenus Actions with the Shortcut property
108 won't be shown in any shortcut menus unless specifically set by the
109 QAction::shortcutVisibleInContextMenu property. This value was added
110 in Qt 5.10, and is by default based on the value reported by
111 QStyleHints::showShortcutsInContextMenus(). To override the default
112 behavior, set the style hint before QCoreApplication has been
113 instantiated, or set this attribute after QCoreApplication has
114 been instantiated.
115
116 \value AA_NativeWindows Ensures that widgets have native windows.
117
118 \value AA_DontCreateNativeWidgetSiblings Ensures that siblings of native
119 widgets stay non-native unless specifically set by the
120 Qt::WA_NativeWindow attribute.
121
122 \value AA_PluginApplication Indicates that Qt is used to author a plugin. Depending
123 on the operating system, it suppresses specific initializations that do not
124 necessarily make sense in the plugin case.
125 For example on \macos, this includes avoiding loading our nib for the main
126 menu and not taking possession of the native menu bar. Setting this
127 attribute to true will also set the AA_DontUseNativeMenuBar attribute
128 to true. It also disables native event filters.
129 This attribute must be set before QGuiApplication constructed.
130 This value was added in Qt 5.7.
131
132 \value AA_DontUseNativeMenuBar All menubars created while this attribute is
133 set to true won't be used as a native menubar (e.g, the menubar at
134 the top of the main screen on \macos).
135
136 \value AA_MacDontSwapCtrlAndMeta Keyboard shortcuts on Apple platforms are typically
137 based on the Command (or Cmd) keyboard modifier, represented by
138 the ⌘ symbol. For example, the 'Copy' action is Command+C (⌘+C).
139 To ease cross platform development Qt will by default remap Command
140 to the Qt::ControlModifier, to align with other platforms. This
141 allows creating keyboard shortcuts such as "Ctrl+J", which on
142 \macos will then map to Command+J, as expected by \macos users. The
143 actual Control (or Ctrl) modifier on Apple platforms, represented by ⌃,
144 is mapped to Qt::MetaModifier.
145
146 When this attribute is true Qt will not do the remapping, and pressing
147 the Command modifier will result in Qt::MetaModifier, while pressing
148 the Control modifier will result in Qt::ControlModifier.
149
150 Note that the \l QKeySequence::StandardKey sequences will always be
151 based on the same modifier (i.e., QKeySequence::Copy will be
152 Command+C regardless of the value set), but what is output for
153 QKeySequence::toString() will be different.
154
155 \value AA_Use96Dpi Assume the screen has a resolution of 96 DPI rather
156 than using the OS-provided resolution. This will cause font rendering
157 to be consistent in pixels-per-point across devices rather than
158 defining 1 point as 1/72 inch.
159
160 \value AA_SynthesizeTouchForUnhandledMouseEvents All mouse events
161 that are not accepted by the application will be translated
162 to touch events instead.
163
164 \value AA_SynthesizeMouseForUnhandledTouchEvents All touch events
165 that are not accepted by the application will be translated
166 to left button mouse events instead. This attribute is enabled
167 by default.
168
169 \value AA_ForceRasterWidgets Make top-level widgets use pure raster surfaces,
170 and do not support non-native GL-based child widgets.
171
172 \value AA_UseDesktopOpenGL Forces the usage of desktop OpenGL (for example,
173 \e opengl32.dll or \e libGL.so) on platforms that use dynamic loading
174 of the OpenGL implementation. This attribute must be set before
175 QGuiApplication is constructed.
176 This value was added in Qt 5.3.
177
178 \value AA_UseOpenGLES Forces the usage of OpenGL ES 2.0 or higher on
179 platforms that use dynamic loading of the OpenGL implementation.
180 This attribute must be set before QGuiApplication is constructed.
181 This value was added in Qt 5.3.
182
183 \value AA_UseSoftwareOpenGL Forces the usage of a software based OpenGL
184 implementation on platforms that use dynamic loading of the OpenGL
185 implementation. This will typically be a patched build of
186 \l{http://www.mesa3d.org/llvmpipe.html}{Mesa llvmpipe}, providing
187 OpenGL 2.1. The value may have no effect if no such OpenGL
188 implementation is available. The default name of this library is
189 \c opengl32sw.dll and can be overridden by setting the environment
190 variable \e QT_OPENGL_DLL. See the platform-specific pages, for
191 instance \l{Qt for Windows}, for more information. This attribute
192 must be set before QGuiApplication is constructed.
193 This value was added in Qt 5.4.
194
195 \value AA_ShareOpenGLContexts Enables resource sharing between the OpenGL
196 contexts used by classes like QOpenGLWidget and QQuickWidget. This
197 allows sharing OpenGL resources, like textures, between QOpenGLWidget
198 instances that belong to different top-level windows.
199 This value was added in Qt 5.4.
200
201 \value AA_SetPalette Indicates whether a palette was explicitly set on the
202 QGuiApplication. This value was added in Qt 5.5.
203
204 \value AA_UseStyleSheetPropagationInWidgetStyles By default, Qt Style Sheets
205 disable regular QWidget palette and font propagation. When this flag
206 is enabled, font and palette changes done from a style sheet will propagate
207 a single time, when the style sheet is set.
208 See \l{The Style Sheet Syntax#Inheritance}{The Style Sheet Syntax - Inheritance}
209 for more details.
210 This value was added in Qt 5.7.
211
212 \value AA_DontUseNativeDialogs All dialogs created while this attribute is
213 set to true won't use the native dialogs provided by the platform.
214 This value was added in Qt 5.7.
215
216 \value AA_SynthesizeMouseForUnhandledTabletEvents All tablet events
217 that are not accepted by the application will be translated
218 to mouse events instead. This attribute is enabled
219 by default.
220 This value was added in Qt 5.7.
221
222 \value AA_CompressHighFrequencyEvents Enables compression of certain frequent events.
223 On the X11 windowing system, the default value is true, which means that
224 QEvent::MouseMove, QEvent::TouchUpdate, and changes in window size and
225 position will be combined whenever they occur more frequently than the
226 application handles them, so that they don't accumulate and overwhelm the
227 application later.
228 On Windows 8 and above the default value is also true, but it only applies
229 to touch events. Mouse and window events remain unaffected by this flag.
230 On Wayland the default value is also true, but it only applies to mouse events.
231 On other platforms, the default is false.
232 (In the future, the compression feature may be implemented across platforms.)
233 You can test the attribute to see whether compression is enabled.
234 If your application needs to handle all events with no compression,
235 you can unset this attribute. Notice that input events from tablet devices
236 will not be compressed. See AA_CompressTabletEvents if you want these to be
237 compressed as well.
238 This value was added in Qt 5.7.
239
240 \value AA_CompressTabletEvents Enables compression of input events from tablet devices.
241 Notice that AA_CompressHighFrequencyEvents must be true for events compression
242 to be enabled, and that this flag extends the former to tablet events.
243 Currently supported on the X11 windowing system, Windows 8 and above.
244 The default value is false.
245 This value was added in Qt 5.10.
246
247 \value AA_DontCheckOpenGLContextThreadAffinity When making a context
248 current using QOpenGLContext, do not check that the
249 \l{QObject#Thread Affinity}{QObject thread affinity}
250 of the QOpenGLContext object is the same thread calling
251 \l{QOpenGLContext::makeCurrent}{makeCurrent()}.
252 This value was added in Qt 5.8.
253
254 \value AA_DisableShaderDiskCache Disables caching of shader program binaries
255 on disk. By default Qt Quick, QPainter's OpenGL backend, and any
256 application using QOpenGLShaderProgram with one of its
257 \e addCacheableShaderFromSource overloads will employ a disk-based
258 program binary cache in either the shared or per-process cache storage
259 location, on systems that support \e glProgramBinary(). In the unlikely
260 event of this being problematic, set this attribute to disable all
261 disk-based caching of shaders.
262
263 \value AA_DisableSessionManager Disables the QSessionManager.
264 By default Qt will connect to a running session manager for a GUI
265 application on supported platforms, use of a session manager may be
266 redundant for system services.
267 This attribute must be set before QGuiApplication is constructed.
268 This value was added in 5.14
269
270 \value AA_DisableNativeVirtualKeyboard When this attribute is set, the native
271 on-screen virtual keyboard will not be shown automatically when a
272 text input widget gains focus on a system without a physical keyboard.
273 Currently supported on the Windows platform only.
274 This value was added in 5.15
275
276 \value AA_DontUseNativeMenuWindows Menu popup windows (e.g. context menus,
277 combo box menus, and non-native menubar menus) created while this
278 attribute is set to true will not be represented as native top
279 level windows, unless required by the implementation.
280 This value was added in Qt 6.8.
281
282 \omitvalue AA_AttributeCount
283 \omitvalue AA_EnableHighDpiScaling
284 \omitvalue AA_UseHighDpiPixmaps
285 \omitvalue AA_DisableHighDpiScaling
286*/
287
288/*!
289 \enum Qt::MouseButton
290
291 This enum type describes the different mouse buttons.
292
293 \value NoButton The button state does not refer to any
294 button (see QMouseEvent::button()).
295
296 \value AllButtons This value corresponds to a mask of all
297 possible mouse buttons. Use to set the 'acceptedButtons'
298 property of a MouseArea to accept ALL mouse buttons.
299
300 \value LeftButton The left button is pressed, or an event refers
301 to the left button. (The left button may be the right button on
302 left-handed mice.)
303 \value RightButton The right button.
304 \value MiddleButton The middle button.
305
306 \value BackButton The 'Back' button. (Typically present on
307 the 'thumb' side of a mouse with extra buttons. This is NOT
308 the tilt wheel.)
309 \value XButton1 The 'Back' Button.
310 \value ExtraButton1 The 'Back' Button.
311
312 \value ForwardButton The 'Forward' Button. (Typically present
313 beside the 'Back' button, and also pressed by the thumb.)
314 \value XButton2 The 'Forward Button.
315 \value ExtraButton2 The 'Forward' Button.
316
317 \value TaskButton The 'Task' Button.
318 \value ExtraButton3 The 'Task' Button.
319
320 \value ExtraButton4 The 7th non-wheel Mouse Button.
321 \value ExtraButton5 The 8th non-wheel Mouse Button.
322 \value ExtraButton6 The 9th non-wheel Mouse Button.
323 \value ExtraButton7 The 10th non-wheel Mouse Button.
324 \value ExtraButton8 The 11th non-wheel Mouse Button.
325 \value ExtraButton9 The 12th non-wheel Mouse Button.
326 \value ExtraButton10 The 13th non-wheel Mouse Button.
327 \value ExtraButton11 The 14th non-wheel Mouse Button.
328 \value ExtraButton12 The 15th non-wheel Mouse Button.
329 \value ExtraButton13 The 16th non-wheel Mouse Button.
330 \value ExtraButton14 The 17th non-wheel Mouse Button.
331 \value ExtraButton15 The 18th non-wheel Mouse Button.
332 \value ExtraButton16 The 19th non-wheel Mouse Button.
333 \value ExtraButton17 The 20th non-wheel Mouse Button.
334 \value ExtraButton18 The 21st non-wheel Mouse Button.
335 \value ExtraButton19 The 22nd non-wheel Mouse Button.
336 \value ExtraButton20 The 23rd non-wheel Mouse Button.
337 \value ExtraButton21 The 24th non-wheel Mouse Button.
338 \value ExtraButton22 The 25th non-wheel Mouse Button.
339 \value ExtraButton23 The 26th non-wheel Mouse Button.
340 \value ExtraButton24 The 27th non-wheel Mouse Button.
341
342 \omitvalue MaxMouseButton
343 \omitvalue MouseButtonMask
344
345 \note Some models of multi-button mice are pre-configured with
346 high-numbered Buttons emulating keyboard sequences, for use in
347 specific games. In order for these Buttons to be seen as
348 actual 'Mouse Buttons', the device must be re-configured (using
349 the vendor's configuration tool).
350
351 \sa KeyboardModifier, Modifier
352*/
353
354/*!
355 \enum Qt::KeyboardModifier
356
357 This enum describes the modifier keys.
358
359 \value NoModifier No modifier key is pressed.
360 \value ShiftModifier A Shift key on the keyboard is pressed.
361 \value ControlModifier A Ctrl key on the keyboard is pressed.
362 \value AltModifier An Alt key on the keyboard is pressed.
363 \value MetaModifier A Meta key on the keyboard is pressed.
364 \value KeypadModifier A keypad button is pressed.
365 \value GroupSwitchModifier X11 only (unless activated on Windows by a command line argument).
366 A Mode_switch key on the keyboard is pressed.
367
368 \omitvalue KeyboardModifierMask
369
370 \note On \macos, the \c ControlModifier value corresponds to
371 the Command keys on the keyboard, and the \c MetaModifier value
372 corresponds to the Control keys. The \c KeypadModifier value will also be set
373 when an arrow key is pressed as the arrow keys are considered part of the
374 keypad.
375
376 \note On Windows Keyboards, Qt::MetaModifier and Qt::Key_Meta are mapped
377 to the Windows key.
378
379 \sa MouseButton, Modifier
380*/
381
382/*!
383 \enum Qt::Modifier
384
385 This enum provides shorter names for the keyboard modifier keys
386 supported by Qt.
387
388 \note On \macos, the \c CTRL value corresponds to
389 the Command keys on the keyboard, and the \c META value
390 corresponds to the Control keys.
391
392 \value SHIFT The Shift keys provided on all standard keyboards.
393 \value META The Meta keys.
394 \value CTRL The Ctrl keys.
395 \value ALT The normal Alt keys, but not keys like AltGr.
396 \omitvalue MODIFIER_MASK
397
398 \sa KeyboardModifier, MouseButton
399*/
400
401/*!
402 \enum Qt::GlobalColor
403
404 Qt's predefined QColor objects:
405
406 \value white \span {id="color-white"} {White (#ffffff) }
407 \value black \span {id="color-black"} {Black (#000000) }
408 \value red \span {id="color-red"} {Red (#ff0000) }
409 \value darkRed \span {id="color-darkRed"} {Dark red (#800000) }
410 \value green \span {id="color-green"} {Green (#00ff00) }
411 \value darkGreen \span {id="color-darkGreen"} {Dark green (#008000) }
412 \value blue \span {id="color-blue"} {Blue (#0000ff) }
413 \value darkBlue \span {id="color-darkBlue"} {Dark blue (#000080) }
414 \value cyan \span {id="color-cyan"} {Cyan (#00ffff) }
415 \value darkCyan \span {id="color-darkCyan"} {Dark cyan (#008080) }
416 \value magenta \span {id="color-magenta"} {Magenta (#ff00ff) }
417 \value darkMagenta \span {id="color-darkMagenta"} {Dark magenta (#800080) }
418 \value yellow \span {id="color-yellow"} {Yellow (#ffff00) }
419 \value darkYellow \span {id="color-darkYellow"} {Dark yellow (#808000) }
420 \value gray \span {id="color-gray"} {Gray (#a0a0a4) }
421 \value darkGray \span {id="color-darkGray"} {Dark gray (#808080) }
422 \value lightGray \span {id="color-lightGray"} {Light gray (#c0c0c0) }
423 \value transparent a transparent black value (i.e., QColor(0, 0, 0, 0))
424 \value color0 0 pixel value (for bitmaps)
425 \value color1 1 pixel value (for bitmaps)
426
427 \sa QColor
428
429*/
430
431/*!
432 \enum Qt::PenStyle
433
434 This enum type defines the pen styles that can be drawn using
435 QPainter. The styles are:
436
437 \table
438 \row
439 \li \inlineimage qpen-solid.png
440 \li \inlineimage qpen-dash.png
441 \li \inlineimage qpen-dot.png
442 \row
443 \li Qt::SolidLine
444 \li Qt::DashLine
445 \li Qt::DotLine
446 \row
447 \li \inlineimage qpen-dashdot.png
448 \li \inlineimage qpen-dashdotdot.png
449 \li \inlineimage qpen-custom.png
450 \row
451 \li Qt::DashDotLine
452 \li Qt::DashDotDotLine
453 \li Qt::CustomDashLine
454 \endtable
455
456 \value NoPen no line at all. For example, QPainter::drawRect()
457 fills but does not draw any boundary line.
458
459 \value SolidLine A plain line.
460 \value DashLine Dashes separated by a few pixels.
461 \value DotLine Dots separated by a few pixels.
462 \value DashDotLine Alternate dots and dashes.
463 \value DashDotDotLine One dash, two dots, one dash, two dots.
464 \value CustomDashLine A custom pattern defined using
465 QPainterPathStroker::setDashPattern().
466
467 \omitvalue MPenStyle
468
469 \sa QPen
470*/
471
472/*!
473 \enum Qt::PenCapStyle
474
475 This enum type defines the pen cap styles supported by Qt, i.e.
476 the line end caps that can be drawn using QPainter.
477
478 \table
479 \row
480 \li \inlineimage qpen-square.png
481 \li \inlineimage qpen-flat.png
482 \li \inlineimage qpen-roundcap.png
483 \row
484 \li Qt::SquareCap
485 \li Qt::FlatCap
486 \li Qt::RoundCap
487 \endtable
488
489 \value FlatCap a square line end that does not cover the end
490 point of the line.
491 \value SquareCap a square line end that covers the end point and
492 extends beyond it by half the line width.
493 \value RoundCap a rounded line end.
494 \omitvalue MPenCapStyle
495
496 \sa QPen
497*/
498
499/*!
500 \enum Qt::PenJoinStyle
501
502 This enum type defines the pen join styles supported by Qt, i.e.
503 which joins between two connected lines can be drawn using
504 QPainter.
505
506 \table
507 \row
508 \li \inlineimage qpen-bevel.png
509 \li \inlineimage qpen-miter.png
510 \li \inlineimage qpen-roundjoin.png
511 \row
512 \li Qt::BevelJoin
513 \li Qt::MiterJoin
514 \li Qt::RoundJoin
515 \endtable
516
517 \value MiterJoin The outer edges of the lines are extended to
518 meet at an angle, and this area is filled.
519 \value BevelJoin The triangular notch between the two lines is filled.
520 \value RoundJoin A circular arc between the two lines is filled.
521 \value SvgMiterJoin A miter join corresponding to the definition of
522 a miter join in the \l{http://www.w3.org/TR/SVGMobile12/}{SVG 1.2 Tiny} specification.
523 \omitvalue MPenJoinStyle
524
525 \sa QPen
526*/
527
528/*!
529 \enum Qt::BrushStyle
530
531 This enum type defines the brush styles supported by Qt, i.e. the
532 fill pattern of shapes drawn using QPainter.
533
534 \image brush-styles.png Brush Styles
535
536 \value NoBrush No brush pattern.
537 \value SolidPattern Uniform color.
538 \value Dense1Pattern Extremely dense brush pattern.
539 \value Dense2Pattern Very dense brush pattern.
540 \value Dense3Pattern Somewhat dense brush pattern.
541 \value Dense4Pattern Half dense brush pattern.
542 \value Dense5Pattern Somewhat sparse brush pattern.
543 \value Dense6Pattern Very sparse brush pattern.
544 \value Dense7Pattern Extremely sparse brush pattern.
545 \value HorPattern Horizontal lines.
546 \value VerPattern Vertical lines.
547 \value CrossPattern Crossing horizontal and vertical lines.
548 \value BDiagPattern Backward diagonal lines.
549 \value FDiagPattern Forward diagonal lines.
550 \value DiagCrossPattern Crossing diagonal lines.
551 \value LinearGradientPattern Linear gradient (set using a dedicated QBrush constructor).
552 \value ConicalGradientPattern Conical gradient (set using a dedicated QBrush constructor).
553 \value RadialGradientPattern Radial gradient (set using a dedicated QBrush constructor).
554 \value TexturePattern Custom pattern (see QBrush::setTexture()).
555
556 \sa QBrush
557*/
558
559/*!
560 \enum Qt::TextFlag
561
562 This enum type is used to define some modifier flags. Some of
563 these flags only make sense in the context of printing:
564
565 \value TextSingleLine Treats all whitespace as spaces and prints just
566 one line.
567 \value TextDontClip If it's impossible to stay within the given bounds,
568 it prints outside.
569 \value TextExpandTabs Makes the U+0009 (ASCII tab) character move to
570 the next tab stop.
571 \value TextShowMnemonic Displays the string "\&P" as \underline{P}
572 For an ampersand, use "\&\&".
573 \value TextWordWrap Breaks lines at appropriate points, e.g. at word
574 boundaries.
575 \value TextWrapAnywhere Breaks lines anywhere, even within words.
576 \value TextHideMnemonic Same as Qt::TextShowMnemonic but doesn't draw
577 the underlines.
578 \value TextDontPrint Treat this text as "hidden" and don't print it.
579 \value TextIncludeTrailingSpaces When this option is set,
580 QTextLine::naturalTextWidth() and QTextLine::naturalTextRect() will
581 return a value that includes the width of trailing spaces in the
582 text; otherwise this width is excluded.
583 \value TextJustificationForced Ensures that text lines are justified.
584
585 \omitvalue TextLongestVariant
586 \omitvalue TextForceLeftToRight
587 \omitvalue TextForceRightToLeft
588
589 You can use as many modifier flags as you want, except that
590 Qt::TextSingleLine and Qt::TextWordWrap cannot be combined.
591
592 Flags that are inappropriate for a given use are generally
593 ignored.
594*/
595
596/*!
597 \enum Qt::BGMode
598
599 Background mode:
600
601 \value TransparentMode
602 \value OpaqueMode
603*/
604
605/*!
606 \enum Qt::ConnectionType
607
608 This enum describes the types of connection that can be used
609 between signals and slots. In particular, it determines whether a
610 particular signal is delivered to a slot immediately or queued for
611 delivery at a later time.
612
613 \value AutoConnection
614 \b (Default) If the receiver \l{QObject#Thread Affinity}{lives in} the
615 thread that emits the signal, Qt::DirectConnection is used. Otherwise,
616 Qt::QueuedConnection is used. The connection type is
617 determined when the signal is emitted.
618
619 \value DirectConnection
620 The slot is invoked immediately when the signal is
621 emitted. The slot is executed in the signalling thread.
622
623 \value QueuedConnection
624 The slot is invoked when control returns to the event loop
625 of the receiver's thread. The slot is executed in the
626 receiver's thread.
627
628 \value BlockingQueuedConnection
629 Same as Qt::QueuedConnection, except that the signalling thread blocks
630 until the slot returns. This connection must \e not be used if the
631 receiver lives in the signalling thread, or else the application
632 will deadlock.
633
634 \value UniqueConnection
635 This is a flag that can be combined with any one of the above
636 connection types, using a bitwise OR. When Qt::UniqueConnection is
637 set, QObject::connect() will fail if the connection already exists
638 (i.e. if the same signal is already connected to the same slot
639 for the same pair of objects).
640
641 \value SingleShotConnection
642 This is a flag that can be combined with any one of the above
643 connection types, using a bitwise OR. When Qt::SingleShotConnection
644 is set, the slot is going to be called only once; the connection
645 will be automatically broken when the signal is emitted.
646 This flag was introduced in Qt 6.0.
647
648 With queued connections, the parameters must be of types that are
649 known to Qt's meta-object system, because Qt needs to copy the
650 arguments to store them in an event behind the scenes. If you try
651 to use a queued connection and get the error message:
652
653 \snippet code/doc_src_qnamespace.qdoc 0
654
655 Call qRegisterMetaType() to register the data type before you
656 establish the connection.
657
658 When using signals and slots with multiple threads, see \l{Signals and Slots Across Threads}.
659
660 \sa {Multi-threading in Qt}, QObject::connect(), qRegisterMetaType(), Q_DECLARE_METATYPE()
661*/
662
663/*!
664 \enum Qt::DateFormat
665
666 \value TextDate The default Qt format, which includes the day and month
667 name, the day number in the month, and the year in full. The day and month
668 names will be short names in English (C locale). This effectively uses, for
669 a date, format \c{ddd MMM d yyyy}, for a time \c{HH:mm:ss} and combines
670 these as \c{ddd MMM d HH:mm:ss yyyy} for a date-time, with an optional
671 zone-offset suffix, where relevant. When reading from a string, a
672 fractional part is also recognized on the seconds of a time part, as
673 \c{HH:mm:ss.zzz}, and some minor variants on the format may be recognized,
674 for compatibility with earlier versions of Qt and with changes to the format
675 planned for the future. In particular, the zone-offset suffix presently uses
676 \c{GMT[±tzoff]} with a \c{tzoff} in \c{HH[[:]mm]} format (two-digit hour and
677 optional two-digit minutes, with optional colon separator); this shall
678 change to use \c{UTC} in place of \c{GMT} in a future release of Qt, so the
679 planned \c{UTC} format is recognized.
680
681 \value ISODateWithMs \l{ISO 8601} extended format: uses \c{yyyy-MM-dd} for
682 dates, \c{HH:mm:ss.zzz} for times or \c{yyyy-MM-ddTHH:mm:ss.zzz}
683 (e.g. 2017-07-24T15:46:29.739) for combined dates and times, optionally with
684 a time-zone suffix (Z for UTC otherwise an offset as ±HH:mm) where
685 appropriate. When parsed, a single space, \c{' '}, may be used in place of
686 the \c{'T'} separator between date and time; no other spacing characters are
687 permitted. This format also accepts \c{HH:mm} and plain \c{HH} formats for
688 the time part, either of which may include a fractional part, \c{HH:mm.zzz}
689 or \c{HH.zzz}, applied to the last field present (hour or minute).
690
691 \value ISODate \l{ISO 8601} extended format, as for \c ISODateWithMs, but
692 omitting the milliseconds (\c{.zzz}) part when converting to a string. There
693 is no difference when reading from a string: if a fractional part is present
694 on the last time field, either format will accept it.
695
696 \value RFC2822Date \l{RFC 2822}, \l{RFC 850} and \l{RFC 1036} format: when
697 converting dates to string form, format \c{dd MMM yyyy} is used, for times
698 the format is \c{HH:mm:ss}. For combined date and time, these are combined
699 as \c{dd MMM yyyy HH:mm:ss ±tzoff} (omitting the optional leading day of the
700 week from the first format recognized). When reading from a string either
701 \c{[ddd,] dd MMM yyyy [HH:mm[:ss]][ ±tzoff]} or \c{ddd MMM dd[ HH:mm:ss]
702 yyyy[ ±tzoff]} will be recognized for combined dates and times, where
703 \c{tzoff} is a timezone offset in \c{HHmm} format. Arbitrary spacing may
704 appear before or after the text and any non-empty spacing may replace the
705 spaces in this format. For dates and times separately, the same formats are
706 matched and the unwanted parts are ignored. In particular, note that a time
707 is not recognized without an accompanying date.
708
709 \note For \c ISODate formats, each \c y, \c M and \c d represents a single
710 digit of the year, month, and day used to specify the date. Each \c H, \c m,
711 and \c s represents a single digit of the hour (up to 24), minute and second
712 used to specify the time. An hour of 24, with zero for all other time
713 fields, is understood as the start of the next day. A \c{.zzz} stands for a
714 fractional part suffix on the preceding field, which may be separated from
715 that field either by a comma \c{','} or the dot \c{'.'} shown. Precision
716 beyond milliseconds is accepted but discarded, rounding to the nearest
717 representable millisecond. The presence of a literal \c T character is used
718 to separate the date and time when both are specified. For the \c TextDate
719 and \c RFC2822Date formats, \c{ddd} stands for the first three letters of
720 the name of the day of the week and \c{MMM} stands for the first three
721 letters of the month name. The names of days and months are always in
722 English (C locale) regardless of user preferences or system settings. The
723 other format characters have the same meaning as for the ISODate format,
724 except that 24 is not accepted as an hour. Parts of a format enclosed in
725 square brackets \c{[...]} are optional; the square brackets do not form part
726 of the format. The plus-or-minus character \c{'±'} here stands for either
727 sign character, \c{'-'} for minus or \c{'+'} for plus.
728
729 \note Zone offsets are measured positive to the east of Greenwich, negative
730 to the west, as is usual for UTC-based offset notations (conflicting with
731 some GMT-based zones-names, such as \c{Etc/GMT+3}, which use the opposite
732 convention).
733
734 \sa QDate::toString(), QTime::toString(), QDateTime::toString(),
735 QDate::fromString(), QTime::fromString(), QDateTime::fromString()
736*/
737
738/*!
739 \enum Qt::TimeSpec
740
741 \value LocalTime Local time, controlled by a system time-zone setting.
742 \value UTC Coordinated Universal Time.
743 \value OffsetFromUTC An offset in seconds from Coordinated Universal Time.
744 \value TimeZone A named time zone.
745
746 Both LocalTime and TimeZone will take care of transitions, such as
747 the start and end of daylight-saving time. UTC is the standard
748 time relative to which time-zones are usually specified: Greenwich
749 Mean Time has zero offset from it. Neither UTC nor OffsetFromUTC
750 has any transitions.
751
752 When specifying a datetime using OffsetFromUTC, the offset from UTC must
753 also be supplied (it is measured in seconds). To specify a datetime using
754 TimeZone, a QTimeZone must be supplied. From Qt 6.5, a QTimeZone can now
755 package a timespec with, where needed, an offset as a lightweight time
756 description, so that passing a QTimeZone now provides a uniform way to use
757 datetime APIs, saving the need to call them differently for different
758 timespecs.
759
760 \note After a change to the system time-zone setting, the behavior
761 of LocalTime-based QDateTime objects created before the change is
762 undefined: QDateTime may have cached data that the change
763 invalidates. (This is not triggered by \e transitions of the system
764 time-zone.) In long-running processes, updates to the system's
765 time-zone data (e.g. when politicians change the rules for a zone)
766 may likewise lead to conflicts between the updated time-zone
767 information and data cached by QDateTime objects created before
768 the update, using either LocalTime or TimeZone.
769
770 \sa QTimeZone, QDateTime
771*/
772
773/*!
774 \enum Qt::DayOfWeek
775
776 \value Monday
777 \value Tuesday
778 \value Wednesday
779 \value Thursday
780 \value Friday
781 \value Saturday
782 \value Sunday
783*/
784
785/*!
786 \enum Qt::CaseSensitivity
787
788 \value CaseInsensitive
789 \value CaseSensitive
790*/
791
792/*!
793 \enum Qt::ToolBarArea
794
795 \value LeftToolBarArea
796 \value RightToolBarArea
797 \value TopToolBarArea
798 \value BottomToolBarArea
799 \value AllToolBarAreas
800 \value NoToolBarArea
801
802 \omitvalue ToolBarArea_Mask
803*/
804
805/*!
806 \enum Qt::DockWidgetArea
807
808 Represents the areas a QDockWidget can be plugged to.
809 \note A floating dock widget with tabs can be docked anywhere.
810
811 \value LeftDockWidgetArea The left dock area of a QMainWindow.
812 \value RightDockWidgetArea The right dock area of a QMainWindow.
813 \value TopDockWidgetArea The top dock area of a QMainWindow.
814 \value BottomDockWidgetArea The bottom dock area of a QMainWindow.
815 \value AllDockWidgetAreas All dock widget areas (default).
816 \value NoDockWidgetArea No dock widget areas.
817
818 \omitvalue DockWidgetArea_Mask
819 \sa QDockWidget::setAllowedAreas, QDockWidget::isAreaAllowed
820*/
821
822/*!
823 \enum Qt::ColorScheme
824
825 Represents the appearance of an application's theme,
826 defined by QGuiApplication::palette().
827
828 \value Unknown The appearance is unknown.
829 \value Light The background colors are lighter than the text color, i.e. the theme is light.
830 \value Dark The background colors are darker than the text color, i.e. the theme is dark.
831*/
832
833/*!
834 \enum Qt::ImageConversionFlag
835
836 The options marked "(default)" are set if no other values from
837 the list are included (since the defaults are zero):
838
839 Color/Mono preference (ignored for QBitmap):
840
841 \value AutoColor (default) - If the image has \l{QImage::depth()}{depth} 1 and contains only
842 black and white pixels, the pixmap becomes monochrome.
843 \value ColorOnly The pixmap is dithered/converted to the
844 \l{QPixmap::defaultDepth()}{native display depth}.
845 \value MonoOnly The pixmap becomes monochrome. If necessary,
846 it is dithered using the chosen dithering algorithm.
847
848 Dithering mode preference:
849
850 \value DiffuseDither (default) - A high-quality dither using error diffusion.
851 \value OrderedDither A faster, ordered dither.
852 \value ThresholdDither No dithering; closest color is used.
853
854 Dithering mode preference for 1-bit alpha masks:
855
856 \value ThresholdAlphaDither (default) - No dithering.
857 \value OrderedAlphaDither A faster, ordered dither.
858 \value DiffuseAlphaDither A high-quality dither using error diffusion.
859 \omitvalue NoAlpha
860
861 Color matching versus dithering preference:
862
863 \value PreferDither Always dither images when converting to smaller color-spaces.
864 \value AvoidDither Only dither to indexed formats if the source image uses more
865 different colors than the size of the color table of the destination format.
866 \value AutoDither (default) - Only dither when down-converting to 1 or 8-bit indexed formats.
867
868 \value NoOpaqueDetection Do not check whether the image contains non-opaque
869 pixels. Use this if you know that the image is semi-transparent and
870 you want to avoid the overhead of checking the pixels in the image
871 until a non-opaque pixel is found, or if you want the pixmap to
872 retain an alpha channel for some other reason. If the image has no
873 alpha channel this flag has no effect.
874
875 \value NoFormatConversion Don't do any format conversions on the image.
876 Can be useful when converting a QImage to a QPixmap for a one-time
877 rendering operation for example. Note that a QPixmap not in the
878 preferred format will be much slower as a paint device.
879
880 \omitvalue ColorMode_Mask
881 \omitvalue Dither_Mask
882 \omitvalue AlphaDither_Mask
883 \omitvalue DitherMode_Mask
884*/
885
886/*!
887 \enum Qt::UIEffect
888
889 This enum describes the available UI effects.
890
891 By default, Qt will try to use the platform specific desktop
892 settings for each effect. Use the
893 QApplication::setDesktopSettingsAware() function (passing \c false
894 as argument) to prevent this, and the
895 QApplication::setEffectEnabled() to enable or disable a particular
896 effect.
897
898 Note that all effects are disabled on screens running at less than
899 16-bit color depth.
900
901 \omitvalue UI_General
902
903 \value UI_AnimateMenu Show animated menus.
904 \value UI_FadeMenu Show faded menus.
905 \value UI_AnimateCombo Show animated comboboxes.
906 \value UI_AnimateTooltip Show tooltip animations.
907 \value UI_FadeTooltip Show tooltip fading effects.
908 \value UI_AnimateToolBox Reserved
909
910 \sa QApplication::setEffectEnabled(), QGuiApplication::setDesktopSettingsAware()
911*/
912
913/*! \enum Qt::AspectRatioMode
914
915 This enum type defines what happens to the aspect ratio when
916 scaling an rectangle.
917
918 \image qimage-scaling.png {Illustration showing three different
919 ways to scale images with Aspect Ratio Mode}
920
921 \value IgnoreAspectRatio The size is scaled freely. The aspect
922 ratio is not preserved.
923 \value KeepAspectRatio The size is scaled to a rectangle as
924 large as possible inside a given
925 rectangle, preserving the aspect ratio.
926 \value KeepAspectRatioByExpanding The size is scaled to a
927 rectangle as small as possible
928 outside a given rectangle,
929 preserving the aspect ratio.
930
931 \sa QSize::scale(), QImage::scaled()
932*/
933
934/*! \enum Qt::TransformationMode
935
936 This enum type defines whether image transformations (e.g.,
937 scaling) should be smooth or not.
938
939 \value FastTransformation The transformation is performed
940 quickly, with no smoothing.
941 \value SmoothTransformation The resulting image is transformed
942 using bilinear filtering.
943
944 \sa QImage::scaled()
945*/
946
947/*! \enum Qt::Axis
948
949 This enum type defines three values to represent the three
950 axes in the cartesian coordinate system.
951
952 \value XAxis The X axis.
953 \value YAxis The Y axis.
954 \value ZAxis The Z axis.
955
956 \sa QTransform::rotate(), QTransform::rotateRadians()
957 */
958
959/*!
960 \enum Qt::WidgetAttribute
961
962 \keyword widget attributes
963
964 This enum type is used to specify various widget attributes.
965 Attributes are set and cleared with QWidget::setAttribute(), and
966 queried with QWidget::testAttribute(), although some have special
967 convenience functions which are mentioned below.
968
969 \value WA_AcceptDrops Allows data from drag and drop operations
970 to be dropped onto the widget (see QWidget::setAcceptDrops()).
971
972 \value WA_AlwaysShowToolTips Enables tooltips for inactive windows.
973
974 \value WA_CustomWhatsThis Indicates that the widget wants to
975 continue operating normally in "What's This?" mode. This is set by the
976 widget's author.
977
978 \value WA_DeleteOnClose Makes Qt delete this widget when the
979 widget has accepted the close event (see QWidget::closeEvent()).
980
981 \value WA_Disabled Indicates that the widget is disabled, i.e.
982 it does not receive any mouse or keyboard events. There is also a
983 getter functions QWidget::isEnabled(). This is set/cleared by the
984 Qt kernel.
985
986 \value WA_DontShowOnScreen Indicates that the widget is hidden or is
987 not a part of the viewable Desktop.
988
989 \value WA_ForceDisabled Indicates that the widget is
990 explicitly disabled, i.e. it will remain disabled even when all
991 its ancestors are set to the enabled state. This implies
992 WA_Disabled. This is set/cleared by QWidget::setEnabled() and
993 QWidget::setDisabled().
994
995 \value WA_ForceUpdatesDisabled Indicates that updates are
996 explicitly disabled for the widget; i.e. it will remain disabled
997 even when all its ancestors are set to the updates-enabled state.
998 This implies WA_UpdatesDisabled. This is set/cleared by
999 QWidget::setUpdatesEnabled().
1000
1001 \value WA_Hover Forces Qt to generate paint events when the mouse
1002 enters or leaves the widget. This feature is typically used when
1003 implementing custom styles.
1004
1005 \value WA_InputMethodEnabled Enables input methods for Asian languages.
1006 Must be set when creating custom text editing widgets.
1007
1008 \value WA_KeyboardFocusChange Set on a toplevel window when
1009 the users changes focus with the keyboard (tab, backtab, or shortcut).
1010
1011 \value WA_KeyCompression Enables key event compression if set,
1012 and disables it if not set. By default key compression is off, so
1013 widgets receive one key press event for each key press (or more,
1014 since autorepeat is usually on). If you turn it on and your
1015 program doesn't keep up with key input, Qt may try to compress key
1016 events so that more than one character can be processed in each
1017 event.
1018 For example, a word processor widget might receive 2, 3 or more
1019 characters in each QKeyEvent::text(), if the layout recalculation
1020 takes too long for the CPU.
1021 If a widget supports multiple character unicode input, it is
1022 always safe to turn the compression on.
1023 Qt performs key event compression only for printable characters.
1024 Qt::Modifier keys, cursor movement keys, function keys and
1025 miscellaneous action keys (e.g. Escape, Enter, Backspace,
1026 PrintScreen) will stop key event compression, even if there are
1027 more compressible key events available.
1028 Platforms other than Mac and X11 do not support this compression,
1029 in which case turning it on will have no effect.
1030 This is set/cleared by the widget's author.
1031
1032 \value WA_LayoutOnEntireRect Indicates that the widget
1033 wants QLayout to operate on the entire QWidget::rect(), not only
1034 on QWidget::contentsRect(). This is set by the widget's author.
1035
1036 \value WA_LayoutUsesWidgetRect Ignore the layout item rect from the style
1037 when laying out this widget with QLayout.
1038
1039 \value WA_MacOpaqueSizeGrip Indicates that the native size grip
1040 should be opaque instead of transparent (the default). This attribute
1041 is only applicable to \macos and is set by the widget's author.
1042
1043 \value WA_MacShowFocusRect Indicates that this widget should get a
1044 QFocusFrame around it. Some widgets draw their own focus halo
1045 regardless of this attribute. Not that the QWidget::focusPolicy
1046 also plays the main role in whether something is given focus or
1047 not, this only controls whether or not this gets the focus
1048 frame. This attribute is only applicable to \macos.
1049
1050 \value WA_MacNormalSize Indicates the widget should have the
1051 normal size for widgets in \macos. This attribute is only
1052 applicable to \macos.
1053
1054 \value WA_MacSmallSize Indicates the widget should have the small
1055 size for widgets in \macos. This attribute is only applicable to
1056 \macos.
1057
1058 \value WA_MacMiniSize Indicates the widget should have the mini
1059 size for widgets in \macos. This attribute is only applicable to
1060 \macos.
1061
1062 \value WA_Mapped Indicates that the widget is mapped on screen.
1063 This is set/cleared by the Qt kernel.
1064
1065 \value WA_MouseNoMask Makes the widget receive mouse events for
1066 the entire widget regardless of the currently set mask,
1067 overriding QWidget::setMask(). This is not applicable for
1068 top-level windows.
1069
1070 \value WA_MouseTracking Indicates that the widget has mouse
1071 tracking enabled. See QWidget::mouseTracking.
1072
1073 \value WA_Moved Indicates that the widget has an explicit
1074 position. This is set/cleared by QWidget::move() and
1075 by QWidget::setGeometry().
1076
1077 \value WA_NoChildEventsForParent Indicates that the widget does
1078 not want \l{QEvent::}{ChildAdded} or \l{QEvent::}{ChildRemoved} events sent to its
1079 parent. This is rarely necessary but can help to avoid automatic
1080 insertion widgets like splitters and layouts. This is set by a
1081 widget's author.
1082
1083 \value WA_NoChildEventsFromChildren Indicates that the widget does
1084 not want to receive \l{QEvent::}{ChildAdded} or \l{QEvent::}{ChildRemoved} events sent from its
1085 children. This is set by a widget's author.
1086
1087 \value WA_NoMouseReplay Used for pop-up widgets. Indicates that the most
1088 recent mouse press event should not be replayed when the pop-up widget
1089 closes. The flag is set by the widget's author and cleared by the Qt kernel
1090 every time the widget receives a new mouse event.
1091
1092 \value WA_NoMousePropagation Prohibits mouse events from being propagated
1093 to the widget's parent. This attribute is disabled by default.
1094
1095 \value WA_TransparentForMouseEvents When enabled, this attribute disables
1096 the delivery of mouse events to the widget and its children. Mouse events
1097 are delivered to other widgets as if the widget and its children were not
1098 present in the widget hierarchy; mouse clicks and other events effectively
1099 "pass through" them. This attribute is disabled by default.
1100
1101 \value WA_NoSystemBackground Indicates that the widget has no background,
1102 i.e. when the widget receives paint events, the background is not
1103 automatically repainted. \b Note: Unlike WA_OpaquePaintEvent, newly exposed
1104 areas are \b never filled with the background (e.g., after showing a
1105 window for the first time the user can see "through" it until the
1106 application processes the paint events). This flag is set or cleared by the
1107 widget's author.
1108
1109 \value WA_OpaquePaintEvent Indicates that the widget paints all its pixels
1110 when it receives a paint event. Thus, it is not required for operations
1111 like updating, resizing, scrolling and focus changes to erase the widget
1112 before generating paint events. The use of WA_OpaquePaintEvent provides a
1113 small optimization by helping to reduce flicker on systems that do not
1114 support double buffering and avoiding computational cycles necessary to
1115 erase the background prior to painting. \b Note: Unlike
1116 WA_NoSystemBackground, WA_OpaquePaintEvent makes an effort to avoid
1117 transparent window backgrounds. This flag is set or cleared by the widget's
1118 author.
1119
1120 \value WA_OutsideWSRange Indicates that the widget is outside
1121 the valid range of the window system's coordinate system. A widget
1122 outside the valid range cannot be mapped on screen. This is
1123 set/cleared by the Qt kernel.
1124
1125 \value WA_PaintOnScreen Indicates that the widget wants to draw directly
1126 onto the screen. Widgets with this attribute set do not participate in
1127 composition management, i.e. they cannot be semi-transparent or shine
1128 through semi-transparent overlapping widgets. \b Note: This flag is only
1129 supported on X11 and it disables double buffering. On Qt for Embedded
1130 Linux, the flag only works when set on a top-level widget and it relies on
1131 support from the active screen driver. This flag is set or cleared by the
1132 widget's author. To render outside of Qt's paint system, e.g., if you
1133 require native painting primitives, you need to reimplement
1134 QWidget::paintEngine() to return 0 and set this flag.
1135
1136 \value WA_PaintUnclipped Makes all painters operating on this widget
1137 unclipped. Children of this widget or other widgets in front of it do not
1138 clip the area the painter can paint on. This flag is only supported for
1139 widgets with the WA_PaintOnScreen flag set. The preferred way to do this in
1140 a cross platform way is to create a transparent widget that lies in front
1141 of the other widgets.
1142
1143 \value WA_PendingMoveEvent Indicates that a move event is pending, e.g.,
1144 when a hidden widget was moved. This flag is set or cleared by the Qt
1145 kernel.
1146
1147 \value WA_PendingResizeEvent Indicates that a resize event is pending,
1148 e.g., when a hidden widget was resized. This flag is set or cleared by the
1149 Qt kernel.
1150
1151 \value WA_QuitOnClose Indicates that the widget should be taken into account
1152 when deciding whether to quit the application when the last window is closed.
1153 This behavior can be modified with the QGuiApplication::quitOnLastWindowClosed
1154 property. By default this attribute is set for all widgets of type Qt::Window.
1155
1156 \value WA_Resized Indicates that the widget has an explicit size. This flag
1157 is set or cleared by QWidget::resize() and QWidget::setGeometry().
1158
1159 \value WA_RightToLeft Indicates that the layout direction for the widget
1160 is right to left.
1161
1162 \value WA_SetCursor Indicates that the widget has a cursor of its own. This
1163 flag is set or cleared by QWidget::setCursor() and QWidget::unsetCursor().
1164
1165 \value WA_SetFont Indicates that the widget has a font of its own. This
1166 flag is set or cleared by QWidget::setFont().
1167
1168 \value WA_SetPalette Indicates that the widget has a palette of its own.
1169 This flag is set or cleared by QWidget::setPalette().
1170
1171 \value WA_SetStyle Indicates that the widget has a style of its own. This
1172 flag is set or cleared by QWidget::setStyle().
1173
1174 \value WA_ShowModal \e{This attribute has been deprecated.} Use
1175 QWidget::windowModality instead.
1176
1177 \value WA_StaticContents Indicates that the widget contents are north-west
1178 aligned and static. On resize, such a widget will receive paint events only
1179 for parts of itself that are newly visible. This flag is set or cleared by
1180 the widget's author.
1181
1182 \value WA_StyleSheet Indicates that the widget is styled using a
1183 \l{Qt Style Sheets}{style sheet}. WA_StyleSheet is set whenever a widget
1184 is subject to a style sheet, even if the style sheet did not affect the
1185 widget appearance.
1186
1187 \value WA_StyleSheetTarget Indicates that the widget appearance was modified
1188 by a \l{Qt Style Sheets}{style sheet}. WA_StyleSheet will also be set.
1189 This value was introduced in Qt 5.12.
1190
1191 \value WA_TabletTracking Indicates that the widget has tablet
1192 tracking enabled. See QWidget::tabletTracking.
1193
1194 \value WA_TranslucentBackground Indicates that the widget should have a
1195 translucent background, i.e., any non-opaque regions of the widgets will be
1196 translucent because the widget will have an alpha channel. Setting this
1197 flag causes WA_NoSystemBackground to be set. On Windows the widget also
1198 needs the Qt::FramelessWindowHint window flag to be set. This flag is set
1199 or cleared by the widget's author. As of Qt 5.0, toggling this attribute
1200 after the widget has been shown is not uniformly supported across
1201 platforms. When translucent background is desired, set the attribute early
1202 when creating the widget, and avoid altering it afterwards.
1203
1204 \value WA_UnderMouse Indicates that the widget is under the mouse cursor.
1205 The value is not updated correctly during drag and drop operations. There
1206 is also a getter function, QWidget::underMouse(). This flag is set or
1207 cleared by the Qt kernel.
1208
1209 \value WA_UpdatesDisabled Indicates that updates are blocked (including the
1210 system background). This flag is set or cleared by the Qt kernel.
1211 \b Warning: This flag must \e never be set or cleared by the widget's author.
1212
1213 \value WA_WindowModified Indicates that the window is marked as modified.
1214 On some platforms this flag will do nothing, on others (including \macos
1215 and Windows) the window will take a modified appearance. This flag is set
1216 or cleared by QWidget::setWindowModified().
1217
1218 \value WA_WindowPropagation Makes a toplevel window inherit font, palette
1219 and locale from its parent.
1220
1221 \value WA_MacAlwaysShowToolWindow On \macos, show the tool window even
1222 when the application is not active. By default, all tool windows are
1223 hidden when the application is inactive.
1224
1225 \value WA_SetLocale Indicates the locale should be taken into consideration
1226 in the widget.
1227
1228 \value WA_StyledBackground Indicates the widget should be drawn using a
1229 styled background.
1230
1231 \value WA_ShowWithoutActivating Show the widget without making it active.
1232
1233 \value WA_NativeWindow Indicates that a native window is created for the
1234 widget. Enabling this flag will also force a native window for the widget's
1235 ancestors unless Qt::WA_DontCreateNativeAncestors is set.
1236
1237 \value WA_DontCreateNativeAncestors Indicates that the widget's ancestors
1238 are kept non-native even though the widget itself is native.
1239
1240 \value WA_X11NetWmWindowTypeDesktop Adds _NET_WM_WINDOW_TYPE_DESKTOP to the
1241 window's _NET_WM_WINDOW_TYPE X11 window property. See
1242 http://standards.freedesktop.org/wm-spec/ for more details. This attribute
1243 has no effect on non-X11 platforms.
1244
1245 \value WA_X11NetWmWindowTypeDock Adds _NET_WM_WINDOW_TYPE_DOCK to the
1246 window's _NET_WM_WINDOW_TYPE X11 window property. See
1247 http://standards.freedesktop.org/wm-spec/ for more details. This attribute
1248 has no effect on non-X11 platforms.
1249
1250 \value WA_X11NetWmWindowTypeToolBar Adds _NET_WM_WINDOW_TYPE_TOOLBAR to the
1251 window's _NET_WM_WINDOW_TYPE X11 window property. See
1252 http://standards.freedesktop.org/wm-spec/ for more details. This attribute
1253 has no effect on non-X11 platforms. \b Note: Qt automatically sets this
1254 attribute for QToolBar.
1255
1256 \value WA_X11NetWmWindowTypeMenu Adds _NET_WM_WINDOW_TYPE_MENU to the
1257 window's _NET_WM_WINDOW_TYPE X11 window property. See
1258 http://standards.freedesktop.org/wm-spec/ for more details. This attribute
1259 has no effect on non-X11 platforms. \b Note: Qt automatically sets this
1260 attribute for QMenu when torn-off.
1261
1262 \value WA_X11NetWmWindowTypeUtility Adds _NET_WM_WINDOW_TYPE_UTILITY to the
1263 window's _NET_WM_WINDOW_TYPE X11 window property. See
1264 http://standards.freedesktop.org/wm-spec/ for more details. This attribute
1265 has no effect on non-X11 platforms. \b Note: Qt automatically sets this
1266 attribute for the Qt::Tool window type.
1267
1268 \value WA_X11NetWmWindowTypeSplash Adds _NET_WM_WINDOW_TYPE_SPLASH to the
1269 window's _NET_WM_WINDOW_TYPE X11 window property. See
1270 http://standards.freedesktop.org/wm-spec/ for more details. This attribute
1271 has no effect on non-X11 platforms. \b Note: Qt automatically sets this
1272 attribute for the Qt::SplashScreen window type.
1273
1274 \value WA_X11NetWmWindowTypeDialog Adds _NET_WM_WINDOW_TYPE_DIALOG
1275 to the window's _NET_WM_WINDOW_TYPE X11 window property. See
1276 http://standards.freedesktop.org/wm-spec/ for more details. This
1277 attribute has no effect on non-X11 platforms. \b Note: Qt automatically sets
1278 this attribute for the Qt::Dialog and Qt::Sheet window types.
1279
1280 \value WA_X11NetWmWindowTypeDropDownMenu Adds
1281 _NET_WM_WINDOW_TYPE_DROPDOWN_MENU to the window's
1282 _NET_WM_WINDOW_TYPE X11 window property. See
1283 http://standards.freedesktop.org/wm-spec/ for more details. This
1284 attribute has no effect on non-X11 platforms. \b Note: Qt
1285 automatically sets this attribute for QMenu objects added to a QMenuBar.
1286
1287 \value WA_X11NetWmWindowTypePopupMenu Adds _NET_WM_WINDOW_TYPE_POPUP_MENU
1288 to the window's _NET_WM_WINDOW_TYPE X11 window property. See
1289 http://standards.freedesktop.org/wm-spec/ for more details. This attribute
1290 has no effect on non-X11 platforms. \b Note: Qt automatically sets this
1291 attribute for QMenu.
1292
1293 \value WA_X11NetWmWindowTypeToolTip Adds _NET_WM_WINDOW_TYPE_TOOLTIP to the
1294 window's _NET_WM_WINDOW_TYPE X11 window property. See
1295 http://standards.freedesktop.org/wm-spec/ for more details. This attribute
1296 has no effect on non-X11 platforms. \b Note: Qt automatically sets this
1297 attribute for the Qt::ToolTip window type.
1298
1299 \value WA_X11NetWmWindowTypeNotification Adds
1300 _NET_WM_WINDOW_TYPE_NOTIFICATION to the window's _NET_WM_WINDOW_TYPE X11
1301 window property. See http://standards.freedesktop.org/wm-spec/ for more
1302 details. This attribute has no effect on non-X11 platforms.
1303
1304 \value WA_X11NetWmWindowTypeCombo Adds _NET_WM_WINDOW_TYPE_COMBO
1305 to the window's _NET_WM_WINDOW_TYPE X11 window property. See
1306 http://standards.freedesktop.org/wm-spec/ for more details. This attribute
1307 has no effect on non-X11 platforms. \b Note: Qt automatically sets this
1308 attribute for the QComboBox pop-up.
1309
1310 \value WA_X11NetWmWindowTypeDND Adds _NET_WM_WINDOW_TYPE_DND to
1311 the window's _NET_WM_WINDOW_TYPE X11 window property. See
1312 http://standards.freedesktop.org/wm-spec/ for more details. This attribute
1313 has no effect on non-X11 platforms. \b Note: Qt automatically sets this
1314 attribute on the feedback widget used during a drag.
1315
1316 \value WA_AcceptTouchEvents Allows touch events (see QTouchEvent)
1317 to be sent to the widget. Must be set on all widgets that can
1318 handle touch events. Without this attribute set, events from a
1319 touch device will be sent as mouse events.
1320
1321 \value WA_TouchPadAcceptSingleTouchEvents Allows touchpad single
1322 touch events to be sent to the widget.
1323
1324 \value WA_X11DoNotAcceptFocus Asks the window manager to not give focus
1325 to this top level window. This attribute has no effect on non-X11
1326 platforms.
1327
1328 \value [since 5.4] WA_AlwaysStackOnTop Forces QOpenGLWidget and
1329 QQuickWidget to be drawn last, on top of other widgets. Ignored for other
1330 type of widgets. Setting this attribute breaks the stacking order, but
1331 allows having a semi-transparent OpenGL widget with other widgets visible
1332 underneath. It is strongly recommended to call \l{QWidget::}{update()} on the widget's
1333 top-level window after enabling or disabling this attribute.
1334
1335 \value WA_ContentsMarginsRespectsSafeArea A QWidget respects the safe
1336 area margins of a window by incorporating the margins into its contents'
1337 margins by default. This means, that a QLayout will use the content area
1338 of a widget for its layout, unless the Qt::WA_LayoutOnEntireRect attribute
1339 is set. This along with a contents margin of 0 can be used on the actual
1340 layout, to allow for example a background image to underlay the status bar and other
1341 system areas on an iOS device, while still allowing child widgets of
1342 that background to be inset based on the safe area.
1343
1344 \omitvalue WA_LaidOut
1345 \omitvalue WA_WState_Visible
1346 \omitvalue WA_WState_Hidden
1347 \omitvalue WA_PendingUpdate
1348 \omitvalue WA_InvalidSize
1349 \omitvalue WA_GrabbedShortcut
1350 \omitvalue WA_SetWindowIcon
1351 \omitvalue WA_SetLayoutDirection
1352 \omitvalue WA_ForceUpdatesDisabled
1353 \omitvalue WA_WState_Created
1354 \omitvalue WA_WState_CompressKeys
1355 \omitvalue WA_WState_InPaintEvent
1356 \omitvalue WA_WState_Reparented
1357 \omitvalue WA_WState_ConfigPending
1358 \omitvalue WA_WState_Polished
1359 \omitvalue WA_WState_OwnSizePolicy
1360 \omitvalue WA_WState_ExplicitShowHide
1361 \omitvalue WA_InputMethodTransparent
1362 \omitvalue WA_DropSiteRegistered
1363 \omitvalue WA_NoX11EventCompression
1364 \omitvalue WA_TintedBackground
1365 \omitvalue WA_X11OpenGLOverlay
1366 \omitvalue WA_CanHostQMdiSubWindowTitleBar
1367 \omitvalue WA_X11BypassTransientForHint
1368 \omitvalue WA_DontShowOnScreen
1369 \omitvalue WA_SetWindowModality
1370 \omitvalue WA_WState_WindowOpacitySet
1371 \omitvalue WA_WState_AcceptedTouchBeginEvent
1372 \omitvalue WA_StyleSheet
1373 \omitvalue WA_AttributeCount
1374*/
1375
1376/*! \typedef Qt::HANDLE
1377
1378 A handle type for system objects, defined as \c{void *}
1379 on all platforms.
1380*/
1381
1382/*!
1383 \enum Qt::Key
1384
1385 The key names used by Qt.
1386
1387 \value Key_Escape
1388 \value Key_Tab
1389 \value Key_Backtab
1390 \value Key_Backspace
1391 \value Key_Return
1392 \value Key_Enter Typically located on the keypad.
1393 \value Key_Insert
1394 \value Key_Delete
1395 \value Key_Pause The Pause/Break key (\b Note: Not related to pausing media)
1396 \value Key_Print
1397 \value Key_SysReq
1398 \value Key_Clear Corresponds to the \b Clear key on selected Apple
1399 keyboard models. On other systems it is commonly mapped
1400 to the numeric keypad key \b 5, when \b {Num Lock} is
1401 \c off.
1402 \value Key_Home
1403 \value Key_End
1404 \value Key_Left
1405 \value Key_Up
1406 \value Key_Right
1407 \value Key_Down
1408 \value Key_PageUp
1409 \value Key_PageDown
1410 \value Key_Shift
1411 \value Key_Control On \macos, this corresponds to the Command keys.
1412 \value Key_Meta On \macos, this corresponds to the Control keys.
1413 On Windows keyboards, this key is mapped to the
1414 Windows key.
1415 \value Key_Alt
1416 \value Key_AltGr On Windows, when the \c KeyDown event for this key is
1417 sent, the Ctrl+Alt modifiers are also set.
1418 \value Key_CapsLock
1419 \value Key_NumLock
1420 \value Key_ScrollLock
1421 \value Key_F1
1422 \value Key_F2
1423 \value Key_F3
1424 \value Key_F4
1425 \value Key_F5
1426 \value Key_F6
1427 \value Key_F7
1428 \value Key_F8
1429 \value Key_F9
1430 \value Key_F10
1431 \value Key_F11
1432 \value Key_F12
1433 \value Key_F13
1434 \value Key_F14
1435 \value Key_F15
1436 \value Key_F16
1437 \value Key_F17
1438 \value Key_F18
1439 \value Key_F19
1440 \value Key_F20
1441 \value Key_F21
1442 \value Key_F22
1443 \value Key_F23
1444 \value Key_F24
1445 \value Key_F25
1446 \value Key_F26
1447 \value Key_F27
1448 \value Key_F28
1449 \value Key_F29
1450 \value Key_F30
1451 \value Key_F31
1452 \value Key_F32
1453 \value Key_F33
1454 \value Key_F34
1455 \value Key_F35
1456 \value Key_Super_L
1457 \value Key_Super_R
1458 \value Key_Menu
1459 \value Key_Hyper_L
1460 \value Key_Hyper_R
1461 \value Key_Help
1462 \value Key_Direction_L
1463 \value Key_Direction_R
1464
1465 \value Key_Space
1466 \value Key_Any
1467 \value Key_Exclam
1468 \value Key_QuoteDbl
1469 \value Key_NumberSign
1470 \value Key_Dollar
1471 \value Key_Percent
1472 \value Key_Ampersand
1473 \value Key_Apostrophe
1474 \value Key_ParenLeft
1475 \value Key_ParenRight
1476 \value Key_Asterisk
1477 \value Key_Plus
1478 \value Key_Comma
1479 \value Key_Minus
1480 \value Key_Period
1481 \value Key_Slash
1482 \value Key_0
1483 \value Key_1
1484 \value Key_2
1485 \value Key_3
1486 \value Key_4
1487 \value Key_5
1488 \value Key_6
1489 \value Key_7
1490 \value Key_8
1491 \value Key_9
1492 \value Key_Colon
1493 \value Key_Semicolon
1494 \value Key_Less
1495 \value Key_Equal
1496 \value Key_Greater
1497 \value Key_Question
1498 \value Key_At
1499 \value Key_A
1500 \value Key_B
1501 \value Key_C
1502 \value Key_D
1503 \value Key_E
1504 \value Key_F
1505 \value Key_G
1506 \value Key_H
1507 \value Key_I
1508 \value Key_J
1509 \value Key_K
1510 \value Key_L
1511 \value Key_M
1512 \value Key_N
1513 \value Key_O
1514 \value Key_P
1515 \value Key_Q
1516 \value Key_R
1517 \value Key_S
1518 \value Key_T
1519 \value Key_U
1520 \value Key_V
1521 \value Key_W
1522 \value Key_X
1523 \value Key_Y
1524 \value Key_Z
1525 \value Key_BracketLeft
1526 \value Key_Backslash
1527 \value Key_BracketRight
1528 \value Key_AsciiCircum
1529 \value Key_Underscore
1530 \value Key_QuoteLeft
1531 \value Key_BraceLeft
1532 \value Key_Bar
1533 \value Key_BraceRight
1534 \value Key_AsciiTilde
1535 \value Key_nobreakspace
1536 \value Key_exclamdown
1537 \value Key_cent
1538 \value Key_sterling
1539 \value Key_currency
1540 \value Key_yen
1541 \value Key_brokenbar
1542 \value Key_section
1543 \value Key_diaeresis
1544 \value Key_copyright
1545 \value Key_ordfeminine
1546 \value Key_guillemotleft
1547 \value Key_notsign
1548 \value Key_hyphen
1549 \value Key_registered
1550 \value Key_macron
1551 \value Key_degree
1552 \value Key_plusminus
1553 \value Key_twosuperior
1554 \value Key_threesuperior
1555 \value Key_acute
1556 \value [since 6.7] Key_micro
1557 \value Key_mu Deprecated alias for Key_micro
1558 \value Key_paragraph
1559 \value Key_periodcentered
1560 \value Key_cedilla
1561 \value Key_onesuperior
1562 \value Key_masculine
1563 \value Key_guillemotright
1564 \value Key_onequarter
1565 \value Key_onehalf
1566 \value Key_threequarters
1567 \value Key_questiondown
1568 \value Key_Agrave
1569 \value Key_Aacute
1570 \value Key_Acircumflex
1571 \value Key_Atilde
1572 \value Key_Adiaeresis
1573 \value Key_Aring
1574 \value Key_AE
1575 \value Key_Ccedilla
1576 \value Key_Egrave
1577 \value Key_Eacute
1578 \value Key_Ecircumflex
1579 \value Key_Ediaeresis
1580 \value Key_Igrave
1581 \value Key_Iacute
1582 \value Key_Icircumflex
1583 \value Key_Idiaeresis
1584 \value Key_ETH
1585 \value Key_Ntilde
1586 \value Key_Ograve
1587 \value Key_Oacute
1588 \value Key_Ocircumflex
1589 \value Key_Otilde
1590 \value Key_Odiaeresis
1591 \value Key_multiply
1592 \value Key_Ooblique
1593 \value Key_Ugrave
1594 \value Key_Uacute
1595 \value Key_Ucircumflex
1596 \value Key_Udiaeresis
1597 \value Key_Yacute
1598 \value Key_THORN
1599 \value Key_ssharp
1600 \value Key_division
1601 \value Key_ydiaeresis
1602
1603 \value Key_Multi_key
1604 \value Key_Codeinput
1605 \value Key_SingleCandidate
1606 \value Key_MultipleCandidate
1607 \value Key_PreviousCandidate
1608 \value Key_Mode_switch
1609 \value Key_Kanji
1610 \value Key_Muhenkan
1611 \value Key_Henkan
1612 \value Key_Romaji
1613 \value Key_Hiragana
1614 \value Key_Katakana
1615 \value Key_Hiragana_Katakana
1616 \value Key_Zenkaku
1617 \value Key_Hankaku
1618 \value Key_Zenkaku_Hankaku
1619 \value Key_Touroku
1620 \value Key_Massyo
1621 \value Key_Kana_Lock
1622 \value Key_Kana_Shift
1623 \value Key_Eisu_Shift
1624 \value Key_Eisu_toggle
1625 \value Key_Hangul
1626 \value Key_Hangul_Start
1627 \value Key_Hangul_End
1628 \value Key_Hangul_Hanja
1629 \value Key_Hangul_Jamo
1630 \value Key_Hangul_Romaja
1631 \value Key_Hangul_Jeonja
1632 \value Key_Hangul_Banja
1633 \value Key_Hangul_PreHanja
1634 \value Key_Hangul_PostHanja
1635 \value Key_Hangul_Special
1636 \value Key_Dead_Grave
1637 \value Key_Dead_Acute
1638 \value Key_Dead_Circumflex
1639 \value Key_Dead_Tilde
1640 \value Key_Dead_Macron
1641 \value Key_Dead_Breve
1642 \value Key_Dead_Abovedot
1643 \value Key_Dead_Diaeresis
1644 \value Key_Dead_Abovering
1645 \value Key_Dead_Doubleacute
1646 \value Key_Dead_Caron
1647 \value Key_Dead_Cedilla
1648 \value Key_Dead_Ogonek
1649 \value Key_Dead_Iota
1650 \value Key_Dead_Voiced_Sound
1651 \value Key_Dead_Semivoiced_Sound
1652 \value Key_Dead_Belowdot
1653 \value Key_Dead_Hook
1654 \value Key_Dead_Horn
1655 \value Key_Dead_Stroke
1656 \value Key_Dead_Abovecomma
1657 \value Key_Dead_Abovereversedcomma
1658 \value Key_Dead_Doublegrave
1659 \value Key_Dead_Belowring
1660 \value Key_Dead_Belowmacron
1661 \value Key_Dead_Belowcircumflex
1662 \value Key_Dead_Belowtilde
1663 \value Key_Dead_Belowbreve
1664 \value Key_Dead_Belowdiaeresis
1665 \value Key_Dead_Invertedbreve
1666 \value Key_Dead_Belowcomma
1667 \value Key_Dead_Currency
1668 \value Key_Dead_a
1669 \value Key_Dead_A
1670 \value Key_Dead_e
1671 \value Key_Dead_E
1672 \value Key_Dead_i
1673 \value Key_Dead_I
1674 \value Key_Dead_o
1675 \value Key_Dead_O
1676 \value Key_Dead_u
1677 \value Key_Dead_U
1678 \value Key_Dead_Small_Schwa
1679 \value Key_Dead_Capital_Schwa
1680 \value Key_Dead_Greek
1681 \value Key_Dead_Lowline
1682 \value Key_Dead_Aboveverticalline
1683 \value Key_Dead_Belowverticalline
1684 \value Key_Dead_Longsolidusoverlay
1685 \value Key_Back
1686 \value Key_Forward
1687 \value Key_Stop
1688 \value Key_Refresh
1689 \value Key_VolumeDown
1690 \value Key_VolumeMute
1691 \value Key_VolumeUp
1692 \value Key_BassBoost
1693 \value Key_BassUp
1694 \value Key_BassDown
1695 \value Key_TrebleUp
1696 \value Key_TrebleDown
1697 \value Key_MediaPlay A key setting the state of the media player to play
1698 \value Key_MediaStop A key setting the state of the media player to stop
1699 \value Key_MediaPrevious
1700 \value Key_MediaNext
1701 \value Key_MediaRecord
1702 \value Key_MediaPause A key setting the state of the media player to pause (\b Note: not the pause/break key)
1703 \value Key_MediaTogglePlayPause A key to toggle the play/pause state in the media player (rather than setting an absolute state)
1704 \value Key_HomePage
1705 \value Key_Favorites
1706 \value Key_Search
1707 \value Key_Standby
1708 \value Key_OpenUrl
1709 \value Key_LaunchMail
1710 \value Key_LaunchMedia
1711 \value Key_Launch0
1712 \value Key_Launch1
1713 \value Key_Launch2
1714 \value Key_Launch3
1715 \value Key_Launch4
1716 \value Key_Launch5
1717 \value Key_Launch6
1718 \value Key_Launch7
1719 \value Key_Launch8
1720 \value Key_Launch9
1721 \value Key_LaunchA
1722 \value Key_LaunchB
1723 \value Key_LaunchC
1724 \value Key_LaunchD
1725 \value Key_LaunchE
1726 \value Key_LaunchF
1727 \value Key_LaunchG
1728 \value Key_LaunchH
1729 \value Key_MonBrightnessUp
1730 \value Key_MonBrightnessDown
1731 \value Key_KeyboardLightOnOff
1732 \value Key_KeyboardBrightnessUp
1733 \value Key_KeyboardBrightnessDown
1734 \value Key_PowerOff
1735 \value Key_WakeUp
1736 \value Key_Eject
1737 \value Key_ScreenSaver
1738 \value Key_WWW
1739 \value Key_Memo
1740 \value Key_LightBulb
1741 \value Key_Shop
1742 \value Key_History
1743 \value Key_AddFavorite
1744 \value Key_HotLinks
1745 \value Key_BrightnessAdjust
1746 \value Key_Finance
1747 \value Key_Community
1748 \value Key_AudioRewind
1749 \value Key_BackForward
1750 \value Key_ApplicationLeft
1751 \value Key_ApplicationRight
1752 \value Key_Book
1753 \value Key_CD
1754 \value Key_Calculator
1755 \value Key_ToDoList
1756 \value Key_ClearGrab
1757 \value Key_Close
1758 \value Key_Copy
1759 \value Key_Cut
1760 \value Key_Display
1761 \value Key_DOS
1762 \value Key_Documents
1763 \value Key_Excel
1764 \value Key_Explorer
1765 \value Key_Game
1766 \value Key_Go
1767 \value Key_iTouch
1768 \value Key_LogOff
1769 \value Key_Market
1770 \value Key_Meeting
1771 \value Key_MenuKB
1772 \value Key_MenuPB
1773 \value Key_MySites
1774 \value Key_News
1775 \value Key_OfficeHome
1776 \value Key_Option
1777 \value Key_Paste
1778 \value Key_Phone
1779 \value Key_Calendar
1780 \value Key_Reply
1781 \value Key_Reload
1782 \value Key_RotateWindows
1783 \value Key_RotationPB
1784 \value Key_RotationKB
1785 \value Key_Save
1786 \value Key_Send
1787 \value Key_Spell
1788 \value Key_SplitScreen
1789 \value Key_Support
1790 \value Key_TaskPane
1791 \value Key_Terminal
1792 \value Key_Tools
1793 \value Key_Travel
1794 \value Key_Video
1795 \value Key_Word
1796 \value Key_Xfer
1797 \value Key_ZoomIn
1798 \value Key_ZoomOut
1799 \value Key_Away
1800 \value Key_Messenger
1801 \value Key_WebCam
1802 \value Key_MailForward
1803 \value Key_Pictures
1804 \value Key_Music
1805 \value Key_Battery
1806 \value Key_Bluetooth
1807 \value Key_WLAN
1808 \value Key_UWB
1809 \value Key_AudioForward
1810 \value Key_AudioRepeat
1811 \value Key_AudioRandomPlay
1812 \value Key_Subtitle
1813 \value Key_AudioCycleTrack
1814 \value Key_Time
1815 \value Key_Hibernate
1816 \value Key_View
1817 \value Key_TopMenu
1818 \value Key_PowerDown
1819 \value Key_Suspend
1820 \value Key_ContrastAdjust
1821 \value Key_TouchpadToggle
1822 \value Key_TouchpadOn
1823 \value Key_TouchpadOff
1824 \value Key_MicMute
1825 \value Key_Red
1826 \value Key_Green
1827 \value Key_Yellow
1828 \value Key_Blue
1829 \value Key_ChannelUp
1830 \value Key_ChannelDown
1831 \value Key_Guide
1832 \value Key_Info
1833 \value Key_Settings
1834 \value Key_MicVolumeUp
1835 \value Key_MicVolumeDown
1836 \value Key_Keyboard
1837 \value Key_New
1838 \value Key_Open
1839 \value Key_Find
1840 \value Key_Undo
1841 \value Key_Redo
1842 \value Key_MediaLast
1843 \value Key_unknown
1844
1845 \value Key_Call A key to answer or initiate a call (see Qt::Key_ToggleCallHangup for a key to toggle current call state)
1846 \value Key_Camera A key to activate the camera shutter. On Windows Runtime, the environment variable QT_QPA_ENABLE_CAMERA_KEYS must be set to receive the event.
1847 \value Key_CameraFocus A key to focus the camera. On Windows Runtime, the environment variable QT_QPA_ENABLE_CAMERA_KEYS must be set to receive the event.
1848 \value Key_Context1
1849 \value Key_Context2
1850 \value Key_Context3
1851 \value Key_Context4
1852 \value Key_Flip
1853 \value Key_Hangup A key to end an ongoing call (see Qt::Key_ToggleCallHangup for a key to toggle current call state)
1854 \value Key_No
1855 \value Key_Select
1856 \value Key_Yes
1857 \value Key_ToggleCallHangup A key to toggle the current call state (ie. either answer, or hangup) depending on current call state
1858 \value Key_VoiceDial
1859 \value Key_LastNumberRedial
1860
1861 \value Key_Execute
1862 \value Key_Printer
1863 \value Key_Play
1864 \value Key_Sleep
1865 \value Key_Zoom
1866 \value Key_Exit
1867 \value Key_Cancel
1868
1869 \sa QKeyEvent::key()
1870*/
1871
1872/*!
1873 \enum Qt::HitTestAccuracy
1874
1875 This enum contains the types of accuracy that can be used by the
1876 QTextDocument class when testing for mouse clicks on text documents.
1877
1878 \value ExactHit The point at which input occurred must coincide
1879 exactly with input-sensitive parts of the document.
1880 \value FuzzyHit The point at which input occurred can lie close to
1881 input-sensitive parts of the document.
1882*/
1883
1884/*!
1885 \enum Qt::WhiteSpaceMode
1886
1887 This enum describes the types of whitespace mode that are used by
1888 the QTextDocument class to meet the requirements of different kinds
1889 of textual information.
1890
1891 \value WhiteSpaceNormal The whitespace mode used to display
1892 normal word wrapped text in paragraphs.
1893 \value WhiteSpacePre A preformatted text mode in which
1894 whitespace is reproduced exactly.
1895 \value WhiteSpaceNoWrap
1896
1897 \omitvalue WhiteSpaceModeUndefined
1898*/
1899
1900/*!
1901 \enum Qt::CheckState
1902
1903 This enum describes the state of checkable items, controls, and widgets.
1904
1905 \value Unchecked The item is unchecked.
1906 \value PartiallyChecked The item is partially checked. Items in hierarchical models
1907 may be partially checked if some, but not all, of their
1908 children are checked.
1909 \value Checked The item is checked.
1910
1911 \sa QCheckBox, Qt::ItemFlags, Qt::ItemDataRole
1912*/
1913
1914
1915/*!
1916 \enum Qt::ToolButtonStyle
1917
1918 The style of the tool button, describing how the button's text and
1919 icon should be displayed.
1920
1921 \value ToolButtonIconOnly Only display the icon.
1922 \value ToolButtonTextOnly Only display the text.
1923 \value ToolButtonTextBesideIcon The text appears beside the icon.
1924 \value ToolButtonTextUnderIcon The text appears under the icon.
1925 \value ToolButtonFollowStyle Follow the \l{QStyle::SH_ToolButtonStyle}{style}.
1926*/
1927
1928/*!
1929 \enum Qt::Corner
1930
1931 This enum type specifies a corner in a rectangle:
1932
1933 \value TopLeftCorner The top-left corner of the rectangle.
1934 \value TopRightCorner The top-right corner of the rectangle.
1935 \value BottomLeftCorner The bottom-left corner of the rectangle.
1936 \value BottomRightCorner The bottom-right corner of the rectangle.
1937*/
1938
1939/*!
1940 \enum Qt::Edge
1941
1942 This enum type specifies an edge in a rectangle:
1943
1944 \value TopEdge The top edge of the rectangle.
1945 \value LeftEdge The left edge of the rectangle.
1946 \value RightEdge The right edge of the rectangle.
1947 \value BottomEdge The bottom edge of the rectangle.
1948
1949 \since 5.1
1950*/
1951
1952/*!
1953 \enum Qt::ScrollBarPolicy
1954
1955 This enum type describes the various modes of QAbstractScrollArea's scroll
1956 bars.
1957
1958 \value ScrollBarAsNeeded QAbstractScrollArea shows a scroll bar when the
1959 content is too large to fit and not otherwise. This is the
1960 default.
1961
1962 \value ScrollBarAlwaysOff QAbstractScrollArea never shows a scroll bar.
1963
1964 \value ScrollBarAlwaysOn QAbstractScrollArea always shows a scroll bar. This
1965 property is ignored on systems with transient scroll bars (e.g., on Mac from
1966 version 10.7).
1967
1968 (The modes for the horizontal and vertical scroll bars are
1969 independent.)
1970*/
1971
1972/*!
1973 \enum Qt::ArrowType
1974
1975 \value NoArrow
1976 \value UpArrow
1977 \value DownArrow
1978 \value LeftArrow
1979 \value RightArrow
1980*/
1981
1982/*!
1983 \enum Qt::FocusReason
1984
1985 This enum specifies why the focus changed. It will be passed
1986 through QWidget::setFocus and can be retrieved in the QFocusEvent
1987 sent to the widget upon focus change.
1988
1989 \value MouseFocusReason A mouse action occurred.
1990 \value TabFocusReason The Tab key was pressed.
1991 \value BacktabFocusReason A Backtab occurred. The input for this may
1992 include the Shift or Control keys;
1993 e.g. Shift+Tab.
1994 \value ActiveWindowFocusReason The window system made this window either
1995 active or inactive.
1996 \value PopupFocusReason The application opened/closed a pop-up that
1997 grabbed/released the keyboard focus.
1998 \value ShortcutFocusReason The user typed a label's buddy shortcut
1999 \value MenuBarFocusReason The menu bar took focus.
2000 \value OtherFocusReason Another reason, usually application-specific.
2001
2002 \omitvalue NoFocusReason
2003
2004 \sa {Keyboard Focus in Widgets}
2005*/
2006
2007/*!
2008 \enum Qt::WindowState
2009
2010 \keyword window state
2011
2012 This enum type is used to specify the current state of a top-level
2013 window.
2014
2015 The states are
2016
2017 \value WindowNoState The window has no state set (in normal state).
2018 \value WindowMinimized The window is minimized (i.e. iconified).
2019 \value WindowMaximized The window is maximized with a frame around it.
2020 \value WindowFullScreen The window fills the entire screen without any frame around it.
2021 \value WindowActive The window is the active window, i.e. it has keyboard focus.
2022
2023*/
2024
2025/*!
2026 \enum Qt::ApplicationState
2027
2028 \keyword application state
2029
2030 This enum type is used to specify the current state of the application.
2031
2032 The states are
2033
2034 \value ApplicationSuspended The application is about to suspend. When entering this state, the
2035 application should save its state, cease all activities, and be
2036 prepared for code execution to stop. While suspended, the
2037 application can be killed at any time without further warnings
2038 (e.g. when low memory forces the OS to purge suspended applications).
2039 \value ApplicationHidden The application is hidden and runs in the background. This
2040 is the normal state for applications that need to do background
2041 processing, like playing music, while the user interacts with
2042 other applications. The application should free up all graphical
2043 resources when entering this state.
2044 \value ApplicationInactive The application is visible, but not selected to be in front.
2045 On desktop platforms, this typically means that the user
2046 activated another application. On mobile platforms, it is
2047 more common to enter this state when the OS is interrupting
2048 the user with e.g. incoming calls or SMS-messages.
2049 While in this state, consider reducing CPU-intensive tasks.
2050 \value ApplicationActive The application is visible and selected to be in front.
2051
2052 \since 5.1
2053*/
2054
2055/*!
2056 \enum Qt::ScreenOrientation
2057
2058 This enum type specifies the various orientations a screen might have.
2059
2060 \value PrimaryOrientation The display's primary orientation.
2061 \value LandscapeOrientation Landscape orientation, display width is greater than display height.
2062 \value PortraitOrientation Portrait orientation, display height is greater than display width,
2063 rotated 90 degree clockwise relative to landscape.
2064 \value InvertedLandscapeOrientation Inverted landscape orientation, rotated 180 degrees relative to landscape.
2065 \value InvertedPortraitOrientation Inverted portrait orientation, rotated 180 degrees relative to portrait.
2066*/
2067
2068/*!
2069 \enum Qt::ContextMenuPolicy
2070
2071 This enum type defines the various policies a widget can have with
2072 respect to showing a context menu.
2073
2074 \value NoContextMenu the widget does not feature a context menu,
2075 context menu handling is deferred to the widget's parent.
2076 \value PreventContextMenu the widget does not feature a context
2077 menu, and in contrast to \c NoContextMenu, the handling is \e not
2078 deferred to the widget's parent. This means that all right mouse
2079 button events are guaranteed to be delivered to the widget itself
2080 through QWidget::mousePressEvent(), and QWidget::mouseReleaseEvent().
2081 \value DefaultContextMenu the widget's QWidget::contextMenuEvent() handler is called.
2082 \value ActionsContextMenu the widget displays its QWidget::actions() as context menu.
2083 \value CustomContextMenu the widget emits the QWidget::customContextMenuRequested() signal.
2084*/
2085
2086/*!
2087 \enum Qt::ContextMenuTrigger
2088 \since 6.8
2089
2090 This enum type defines the mouse event used to trigger a context menu event.
2091
2092 \value Press context menu on mouse press event, default on UNIX systems.
2093 \value Release context menu on mouse release event, default on Windows.
2094
2095 \sa QStyleHints::contextMenuTrigger
2096*/
2097
2098/*!
2099 \enum Qt::FocusPolicy
2100
2101 This enum type defines the various policies a widget can have with
2102 respect to acquiring keyboard focus.
2103
2104 \value TabFocus the widget accepts focus by tabbing.
2105 \value ClickFocus the widget accepts focus by clicking.
2106 \value StrongFocus the widget accepts focus by both tabbing
2107 and clicking. On \macos this will also
2108 be indicate that the widget accepts tab focus
2109 when in 'Text/List focus mode'.
2110 \value WheelFocus like Qt::StrongFocus plus the widget accepts
2111 focus by using the mouse wheel.
2112 \value NoFocus the widget does not accept focus.
2113
2114*/
2115
2116/*!
2117 \enum Qt::TabFocusBehavior
2118 \since 5.5
2119
2120 This enum type provides different focus behaviors for tab navigation.
2121
2122 \value NoTabFocus iterate nothing.
2123 \value TabFocusTextControls iterate text controls and widgets.
2124 \value TabFocusListControls iterate list controls and widgets.
2125 \value TabFocusAllControls iterate all controls and widgets.
2126
2127*/
2128
2129/*!
2130 \enum Qt::ShortcutContext
2131
2132 For a QEvent::Shortcut event to occur, the shortcut's key sequence
2133 must be entered by the user in a context where the shortcut is
2134 active. The possible contexts are these:
2135
2136 \value WidgetShortcut The shortcut is active when its
2137 parent widget has focus.
2138 \value WidgetWithChildrenShortcut The shortcut is active
2139 when its parent widget, or any of its children has focus.
2140 Children which are top-level widgets, except pop-ups, are
2141 not affected by this shortcut context.
2142 \value WindowShortcut The shortcut is active when its
2143 parent widget is a logical subwidget of the
2144 active top-level window.
2145 \value ApplicationShortcut The shortcut is active when one of
2146 the applications windows are active.
2147*/
2148
2149/*!
2150 \enum Qt::WindowType
2151
2152 \keyword window flag
2153
2154 This enum type is used to specify various window-system properties
2155 for the widget. They are fairly unusual but necessary in a few
2156 cases. Some of these flags depend on whether the underlying window
2157 manager supports them.
2158
2159 The main types are
2160
2161 \value Widget This is the default type for QWidget. Widgets of
2162 this type are child widgets if they have a parent,
2163 and independent windows if they have no parent.
2164 See also Qt::Window and Qt::SubWindow.
2165
2166 \value Window Indicates that the widget is a window, usually
2167 with a window system frame and a title bar,
2168 irrespective of whether the widget has a parent or
2169 not. Note that it is not possible to unset this
2170 flag if the widget does not have a parent.
2171
2172 \value Dialog Indicates that the widget is a window that should
2173 be decorated as a dialog (i.e., typically no
2174 maximize or minimize buttons in the title bar).
2175 This is the default type for QDialog. If you want
2176 to use it as a modal dialog, it should be launched
2177 from another window, or have a parent and used
2178 with the QWidget::windowModality property. If you make
2179 it modal, the dialog will prevent other top-level
2180 windows in the application from getting any input.
2181 We refer to a top-level window that has a parent
2182 as a \e secondary window.
2183
2184 \value Sheet Indicates that the window is a sheet on \macos. Since
2185 using a sheet implies window modality, the recommended
2186 way is to use QWidget::setWindowModality(), or
2187 QDialog::open(), instead.
2188
2189 \value Drawer Indicates that the widget is a drawer on \macos.
2190 This feature is obsolete. Setting the flag
2191 has no effect.
2192
2193 \value Popup Indicates that the widget is a pop-up top-level
2194 window, i.e. that it is modal, but has a window
2195 system frame appropriate for pop-up menus.
2196
2197 \value Tool Indicates that the widget is a tool window. A tool
2198 window is often a small window with a smaller than
2199 usual title bar and decoration, typically used for
2200 collections of tool buttons. If there is a parent,
2201 the tool window will always be kept on top of it.
2202 If there isn't a parent, you may consider using
2203 Qt::WindowStaysOnTopHint as well. If the window
2204 system supports it, a tool window can be decorated
2205 with a somewhat lighter frame. It can also be
2206 combined with Qt::FramelessWindowHint.
2207 On \macos, tool windows correspond to the
2208 \l{https://developer.apple.com/documentation/appkit/nspanel}{NSPanel}
2209 class of windows. This means that the window lives on a
2210 level above normal windows making it impossible to put a normal
2211 window on top of it. By default, tool windows will disappear
2212 when the application is inactive. This can be controlled by
2213 the Qt::WA_MacAlwaysShowToolWindow attribute.
2214
2215 \value ToolTip Indicates that the widget is a tooltip. This is
2216 used internally to implement
2217 \l{QWidget::toolTip}{tooltips}.
2218
2219 \value SplashScreen Indicates that the window is a splash screen.
2220 This is the default type for QSplashScreen.
2221
2222 \omitvalue Desktop Indicates that this widget is the desktop.
2223
2224 \value SubWindow Indicates that this widget is a sub-window, such
2225 as a QMdiSubWindow widget.
2226
2227 \value ForeignWindow Indicates that this window object is a handle
2228 representing a native platform window created by
2229 another process or by manually using native code.
2230
2231 \value CoverWindow Indicates that the window represents a cover window,
2232 which is shown when the application is minimized on
2233 some platforms.
2234
2235 There are also a number of flags which you can use to customize
2236 the appearance of top-level windows. These have no effect on other
2237 windows:
2238
2239 \value MSWindowsFixedSizeDialogHint Gives the window a thin dialog border on Windows.
2240 This style is traditionally used for fixed-size dialogs.
2241
2242 \note The use of this flag is not recommended in multi-monitor
2243 environments. This is because the system will enforce that the window
2244 maintains its native size when moving it across screens. This is
2245 particularly undesirable when using monitors with different
2246 resolutions.
2247
2248 \value MSWindowsOwnDC Gives the window its own display
2249 context on Windows.
2250
2251 \value BypassWindowManagerHint This flag can be used to indicate to the platform plugin
2252 that "all" window manager protocols should be disabled. This flag will behave
2253 different depending on what operating system the application is running on and
2254 what window manager is running. The flag can be used to get a native window
2255 with no configuration set.
2256
2257 \value X11BypassWindowManagerHint Bypass the window
2258 manager completely. This results in a borderless window
2259 that is not managed at all (i.e., no keyboard input unless
2260 you call QWidget::activateWindow() manually).
2261
2262 \value FramelessWindowHint Produces a borderless window.
2263
2264 On X11, the result of the flag is dependent on the window manager and its
2265 ability to understand Motif and/or NETWM hints. Most existing
2266 modern window managers can handle this.
2267
2268 \note If the window manager relies on the frame to interactively manipulate
2269 the window, the user can no longer move or resize the window via the window
2270 system, but this side effect should not be relied on. To produce a fixed
2271 size window that can not be resized, please set QWindow::setMinimumSize()
2272 and QWindow::setMaximumSize() to the same size.
2273
2274 \value NoDropShadowWindowHint Disables window drop shadow on supporting platforms.
2275
2276 The \c CustomizeWindowHint flag is used to enable customization of
2277 the window controls. This flag must be set to allow the \c
2278 WindowTitleHint, \c WindowSystemMenuHint, \c
2279 WindowMinimizeButtonHint, \c WindowMaximizeButtonHint and \c
2280 WindowCloseButtonHint flags to be changed.
2281
2282 \value CustomizeWindowHint Turns off the default window title hints.
2283
2284 \value WindowTitleHint Gives the window a title bar.
2285
2286 \value WindowSystemMenuHint Adds a window system menu, and
2287 possibly a close button (for example on Mac). If you need to hide
2288 or show a close button, it is more portable to use \c
2289 WindowCloseButtonHint.
2290
2291 \value WindowMinimizeButtonHint Adds a minimize button. On
2292 some platforms this implies Qt::WindowSystemMenuHint for it to work.
2293
2294 \value WindowMaximizeButtonHint Adds a maximize button. On
2295 some platforms this implies Qt::WindowSystemMenuHint for it to work.
2296
2297 \value WindowMinMaxButtonsHint Adds a minimize and a maximize
2298 button. On some platforms this implies Qt::WindowSystemMenuHint for it to work.
2299
2300 \value WindowCloseButtonHint Adds a close button. On
2301 some platforms this implies Qt::WindowSystemMenuHint for it
2302 to work.
2303
2304 \value WindowContextHelpButtonHint Adds a context help button to dialogs.
2305 On some platforms this implies Qt::WindowSystemMenuHint for it to work.
2306
2307 \omitvalue MacWindowToolBarButtonHint
2308
2309 \value WindowFullscreenButtonHint On \macos adds a fullscreen button.
2310
2311 \value BypassGraphicsProxyWidget Prevents the window and its children from
2312 automatically embedding themselves into a QGraphicsProxyWidget if the
2313 parent widget is already embedded. You can set this flag if you
2314 want your widget to always be a toplevel widget on the desktop,
2315 regardless of whether the parent widget is embedded in a scene or
2316 not.
2317
2318 \value WindowShadeButtonHint Adds a shade button in place of the minimize
2319 button if the underlying window manager supports it.
2320
2321 \value WindowStaysOnTopHint Informs the window system that the
2322 window should stay on top of all other windows. Note that
2323 on some window managers on X11 you also have to pass
2324 Qt::X11BypassWindowManagerHint for this flag to work
2325 correctly.
2326
2327 \value WindowStaysOnBottomHint Informs the window system that the
2328 window should stay on bottom of all other windows.
2329
2330 \note On X11, this hint will work only in window managers
2331 that support _NET_WM_STATE_BELOW atom. If a window always
2332 on the bottom has a parent, the parent will also be left on
2333 the bottom. This window hint is currently not implemented
2334 for \macos.
2335
2336 \note On Windows, this will work only for frameless or
2337 full-screen windows.
2338
2339 \value WindowTransparentForInput Informs the window system that this window
2340 is used only for output (displaying something) and does not take input.
2341 Therefore input events should pass through as if it wasn't there.
2342
2343 \value WindowOverridesSystemGestures Informs the window system that this window
2344 implements its own set of gestures and that system level gestures, like for
2345 instance three-finger desktop switching, should be disabled.
2346
2347 \value WindowDoesNotAcceptFocus Informs the window system that this window should
2348 not receive the input focus.
2349
2350 \note On Windows, this prevents the window from appearing in the taskbar.
2351
2352 \value MaximizeUsingFullscreenGeometryHint Deprecated alias for Qt::ExpandedClientAreaHint
2353
2354 \value [since 6.9] ExpandedClientAreaHint Requests that the window's client area is
2355 expanded to areas where it might be obscured by, or conflicting with other UI
2356 elements, such as the window's titlebar controls or other system UIs. The
2357 window's \l{QWindow::safeAreaMargins()}{safe area margins} will reflect any
2358 areas that may have conflicting UI elements.
2359
2360 \value [since 6.9] NoTitleBarBackgroundHint Requests that the window's title bar is drawn
2361 without a background color. This flag is useful in combination with
2362 Qt::ExpandedClientAreaHint, to give the perception that the window's
2363 client area seamlessly blends with the titlebar area and controls.
2364
2365 \value WindowType_Mask A mask for extracting the window type
2366 part of the window flags.
2367
2368 \sa QWidget::windowFlags, {Window Flags Example}
2369*/
2370
2371/*!
2372 \enum Qt::FindChildOption
2373
2374 \value FindDirectChildrenOnly Looks only at the direct children of the object.
2375 \value FindChildrenRecursively Looks at all children of the object (recursive search).
2376*/
2377
2378/*!
2379 \enum Qt::DropAction
2380
2381 \value CopyAction Copy the data to the target.
2382 \value MoveAction Move the data from the source to the target.
2383 \value LinkAction Create a link from the source to the target.
2384 \value ActionMask
2385 \value IgnoreAction Ignore the action (do nothing with the data).
2386 \value TargetMoveAction On Windows, this value is used when the ownership of the D&D data
2387 should be taken over by the target application,
2388 i.e., the source application should not delete
2389 the data.
2390 On X11 this value is used to do a move.
2391 TargetMoveAction is not used on the Mac.
2392*/
2393
2394/*!
2395 \enum Qt::SortOrder
2396
2397 This enum describes how the items in a widget are sorted.
2398
2399 \value AscendingOrder The items are sorted ascending e.g. starts with
2400 'AAA' ends with 'ZZZ' in Latin-1 locales
2401
2402 \value DescendingOrder The items are sorted descending e.g. starts with
2403 'ZZZ' ends with 'AAA' in Latin-1 locales
2404*/
2405
2406/*!
2407 \enum Qt::SplitBehaviorFlags
2408 \since 5.14
2409
2410 This enum specifies how the QString::split() functions should behave with
2411 respect to empty strings.
2412
2413 \value KeepEmptyParts If a field is empty, keep it in the result.
2414 \value SkipEmptyParts If a field is empty, don't include it in the result.
2415
2416 \sa QString::split()
2417*/
2418
2419/*!
2420 \enum Qt::ClipOperation
2421
2422 \value NoClip This operation turns clipping off.
2423
2424 \value ReplaceClip Replaces the current clip path/rect/region with
2425 the one supplied in the function call.
2426
2427 \value IntersectClip Intersects the current clip path/rect/region
2428 with the one supplied in the function call.
2429*/
2430
2431/*!
2432 \enum Qt::ItemSelectionMode
2433
2434 This enum is used in QGraphicsItem, QGraphicsScene and QGraphicsView to
2435 specify how items are selected, or how to determine if shapes and items
2436 collide.
2437
2438 \value ContainsItemShape The output list contains only items whose
2439 \l{QGraphicsItem::shape()}{shape} is fully contained inside the
2440 selection area. Items that intersect with the area's outline are
2441 not included.
2442
2443 \value IntersectsItemShape The output list contains both items whose
2444 \l{QGraphicsItem::shape()}{shape} is fully contained inside the
2445 selection area, and items that intersect with the area's
2446 outline. This is a common mode for rubber band selection.
2447
2448 \value ContainsItemBoundingRect The output list contains only items whose
2449 \l{QGraphicsItem::boundingRect()}{bounding rectangle} is fully
2450 contained inside the selection area. Items that intersect with the
2451 area's outline are not included.
2452
2453 \value IntersectsItemBoundingRect The output list contains both items
2454 whose \l{QGraphicsItem::boundingRect()}{bounding rectangle} is
2455 fully contained inside the selection area, and items that intersect
2456 with the area's outline. This method is commonly used for
2457 determining areas that need redrawing.
2458
2459 \sa QGraphicsScene::items(), QGraphicsScene::collidingItems(),
2460 QGraphicsView::items(), QGraphicsItem::collidesWithItem(),
2461 QGraphicsItem::collidesWithPath()
2462*/
2463
2464/*!
2465 \enum Qt::ItemSelectionOperation
2466
2467 This enum is used in QGraphicsScene to specify what to do with currently selected
2468 items when setting a selection area.
2469
2470 \value ReplaceSelection The currently selected items are replaced by items
2471 in the selection area.
2472
2473 \value AddToSelection The items in the selection area are added to the currently
2474 selected items.
2475
2476 \sa QGraphicsScene::setSelectionArea()
2477*/
2478
2479/*!
2480 \enum Qt::FillRule
2481
2482 Specifies which method should be used to fill the paths and polygons.
2483
2484 \value OddEvenFill Specifies that the region is filled using the
2485 odd even fill rule. With this rule, we determine whether a point
2486 is inside the shape by using the following method.
2487 Draw a horizontal line from the point to a location outside the shape,
2488 and count the number of intersections. If the number of intersections
2489 is an odd number, the point is inside the shape. This mode is the
2490 default.
2491
2492 \value WindingFill Specifies that the region is filled using the
2493 non zero winding rule. With this rule, we determine whether a
2494 point is inside the shape by using the following method.
2495 Draw a horizontal line from the point to a location outside the shape.
2496 Determine whether the direction of the line at each intersection point
2497 is up or down. The winding number is determined by summing the
2498 direction of each intersection. If the number is non zero, the point
2499 is inside the shape. This fill mode can also in most cases be considered
2500 as the intersection of closed shapes.
2501*/
2502
2503/*!
2504 \enum Qt::TextFormat
2505
2506 This enum is used in widgets that can display both plain text and
2507 rich text, for example QLabel. It is used for deciding whether a text
2508 string should be interpreted as one or the other. This is normally
2509 done by passing one of the enum values to a QStaticText::setTextFormat()
2510 function.
2511
2512 \value PlainText The text string is interpreted as a plain text
2513 string.
2514
2515 \value RichText The text string is interpreted as a rich text
2516 string. See \l {Supported HTML Subset} for the definition
2517 of rich text.
2518
2519 \value AutoText The text string is interpreted as for
2520 Qt::RichText if Qt::mightBeRichText() returns \c true, otherwise
2521 as Qt::PlainText.
2522
2523 \value MarkdownText The text string is interpreted as Markdown-formatted text.
2524 This enum value was added in Qt 5.14.
2525*/
2526
2527/*!
2528 \enum Qt::CursorShape
2529
2530 This enum type defines the various cursors that can be used.
2531
2532 The standard arrow cursor is the default for widgets in a normal state.
2533
2534 \value ArrowCursor \inlineimage cursor-arrow.png
2535 The standard arrow cursor.
2536 \value UpArrowCursor \inlineimage cursor-uparrow.png
2537 An arrow pointing upwards toward the top of the screen.
2538 \value CrossCursor \inlineimage cursor-cross.png
2539 A crosshair cursor, typically used to help the
2540 user accurately select a point on the screen.
2541 \value WaitCursor \inlineimage cursor-wait.png
2542 An hourglass or watch cursor, usually shown during
2543 operations that prevent the user from interacting with
2544 the application.
2545 \value IBeamCursor \inlineimage cursor-ibeam.png
2546 A caret or ibeam cursor, indicating that a widget can
2547 accept and display text input.
2548 \value SizeVerCursor \inlineimage cursor-sizev.png
2549 A cursor used for elements that are used to vertically
2550 resize top-level windows.
2551 \value SizeHorCursor \inlineimage cursor-sizeh.png
2552 A cursor used for elements that are used to horizontally
2553 resize top-level windows.
2554 \value SizeBDiagCursor \inlineimage cursor-sizeb.png
2555 A cursor used for elements that are used to diagonally
2556 resize top-level windows at their top-right and
2557 bottom-left corners.
2558 \value SizeFDiagCursor \inlineimage cursor-sizef.png
2559 A cursor used for elements that are used to diagonally
2560 resize top-level windows at their top-left and
2561 bottom-right corners.
2562 \value SizeAllCursor \inlineimage cursor-sizeall.png
2563 A cursor used for elements that are used to resize
2564 top-level windows in any direction.
2565 \value BlankCursor A blank/invisible cursor, typically used when the cursor
2566 shape needs to be hidden.
2567 \value SplitVCursor \inlineimage cursor-vsplit.png
2568 A cursor used for vertical splitters, indicating that
2569 a handle can be dragged horizontally to adjust the use
2570 of available space.
2571 \value SplitHCursor \inlineimage cursor-hsplit.png
2572 A cursor used for horizontal splitters, indicating that
2573 a handle can be dragged vertically to adjust the use
2574 of available space.
2575 \value PointingHandCursor \inlineimage cursor-hand.png
2576 A pointing hand cursor that is typically used for
2577 clickable elements such as hyperlinks.
2578 \value ForbiddenCursor \inlineimage cursor-forbidden.png
2579 A slashed circle cursor, typically used during drag
2580 and drop operations to indicate that dragged content
2581 cannot be dropped on particular widgets or inside
2582 certain regions.
2583 \value OpenHandCursor \inlineimage cursor-openhand.png
2584 A cursor representing an open hand, typically used to
2585 indicate that the area under the cursor is the visible
2586 part of a canvas that the user can click and drag in
2587 order to scroll around.
2588 \value ClosedHandCursor \inlineimage cursor-closedhand.png
2589 A cursor representing a closed hand, typically used to
2590 indicate that a dragging operation is in progress that
2591 involves scrolling.
2592 \value WhatsThisCursor \inlineimage cursor-whatsthis.png
2593 An arrow with a question mark, typically used to indicate
2594 the presence of What's This? help for a widget.
2595 \value BusyCursor \inlineimage cursor-busy.png
2596 An hourglass or watch cursor, usually shown during
2597 operations that allow the user to interact with
2598 the application while they are performed in the
2599 background.
2600 \value DragMoveCursor
2601 A cursor that is usually used when dragging an item.
2602 \value DragCopyCursor
2603 A cursor that is usually used when dragging an item
2604 to copy it.
2605 \value DragLinkCursor
2606 A cursor that is usually used when dragging an item
2607 to make a link to it.
2608
2609 \value BitmapCursor
2610 \omitvalue LastCursor
2611 \omitvalue CustomCursor
2612*/
2613
2614/*!
2615 \enum Qt::LayoutDirection
2616
2617 Specifies the direction of Qt's layouts and text handling.
2618
2619 \value LeftToRight Left-to-right layout.
2620 \value RightToLeft Right-to-left layout.
2621 \value LayoutDirectionAuto Automatic layout.
2622
2623 Right-to-left layouts are necessary for certain languages,
2624 notably Arabic and Hebrew.
2625
2626 LayoutDirectionAuto serves two purposes. When used in conjunction with widgets and layouts, it
2627 will imply to use the layout direction set on the parent widget or QApplication. This
2628 has the same effect as QWidget::unsetLayoutDirection().
2629
2630 When LayoutDirectionAuto is used in conjunction with text layouting, it will imply that the text
2631 directionality is determined from the content of the string to be layouted.
2632
2633 \sa QGuiApplication::setLayoutDirection(), QWidget::setLayoutDirection(), QTextOption::setTextDirection(), QString::isRightToLeft()
2634*/
2635
2636/*!
2637 \enum Qt::AnchorPoint
2638
2639 Specifies a side of a layout item that can be anchored. This is used by
2640 QGraphicsAnchorLayout.
2641
2642 \value AnchorLeft The left side of a layout item.
2643 \value AnchorHorizontalCenter A "virtual" side that is centered between the left and the
2644 right side of a layout item.
2645 \value AnchorRight The right side of a layout item.
2646 \value AnchorTop The top side of a layout item.
2647 \value AnchorVerticalCenter A "virtual" side that is centered between the top and the
2648 bottom side of a layout item.
2649 \value AnchorBottom The bottom side of a layout item.
2650
2651 \sa QGraphicsAnchorLayout
2652*/
2653
2654/*!
2655 \enum Qt::InputMethodHint
2656
2657 \value ImhNone No hints.
2658
2659 Flags that alter the behavior:
2660
2661 \value ImhHiddenText The input method should not show the characters while typing.
2662 This is automatically set when setting QLineEdit::echoMode to \c Password.
2663 Note that setting \c ImhHiddenText does not change the echo mode.
2664 \value ImhSensitiveData Typed text should not be stored by the active input method
2665 in any persistent storage like predictive user dictionary.
2666 \value ImhNoAutoUppercase The input method should not try to automatically switch to upper case
2667 when a sentence ends.
2668 \value ImhPreferNumbers Numbers are preferred (but not required).
2669 \value ImhPreferUppercase Upper case letters are preferred (but not required).
2670 \value ImhPreferLowercase Lower case letters are preferred (but not required).
2671 \value ImhNoPredictiveText Do not use predictive text (i.e. dictionary lookup) while typing.
2672
2673 \value ImhDate The text editor functions as a date field.
2674 \value ImhTime The text editor functions as a time field.
2675 \value ImhPreferLatin Latin characters are preferred (but not required).
2676
2677 \value ImhMultiLine Multiple lines can be entered into the text field.
2678
2679 \value ImhNoEditMenu Do not use built-in edit menu. This flag was introduced in Qt 5.11.
2680 \value ImhNoTextHandles Do not use built-in text cursor and selection handles. This flag was introduced in Qt 5.11.
2681
2682 Flags that restrict input (exclusive flags):
2683
2684 \value ImhDigitsOnly Only digits are allowed.
2685 \value ImhFormattedNumbersOnly Only number input is allowed. This includes decimal point and minus sign.
2686 \value ImhUppercaseOnly Only upper case letter input is allowed.
2687 \value ImhLowercaseOnly Only lower case letter input is allowed.
2688 \value ImhDialableCharactersOnly Only characters suitable for phone dialing are allowed.
2689 \value ImhEmailCharactersOnly Only characters suitable for email addresses are allowed.
2690 \value ImhUrlCharactersOnly Only characters suitable for URLs are allowed.
2691 \value ImhLatinOnly Only latin based input is allowed.
2692
2693 Masks:
2694
2695 \value ImhExclusiveInputMask This mask yields nonzero if any of the exclusive flags are used.
2696
2697 \note If several exclusive flags are OR-ed together, the resulting character set will
2698 consist of the union of the specified sets. For instance specifying \c ImhNumbersOnly and
2699 \c ImhUppercaseOnly would yield a set consisting of numbers and uppercase letters.
2700
2701 \sa QGraphicsItem::inputMethodHints()
2702*/
2703
2704/*!
2705 \enum Qt::InputMethodQuery
2706
2707 \value ImEnabled The widget accepts input method input.
2708 \value ImCursorRectangle The rectangle covering the area of the input cursor in widget coordinates.
2709 \value ImFont The currently used font for text input.
2710 \value ImCursorPosition The logical position of the cursor within the text surrounding the input area
2711 (see \c ImSurroundingText). The position does not incorporate the offset of
2712 the cursor within the preedit area, as controlled by QInputMethodEvent::Cursor.
2713 \value ImSurroundingText The plain text around the input area, for example the current paragraph.
2714 \value ImCurrentSelection The currently selected text.
2715 \value ImMaximumTextLength The maximum number of characters that the widget can hold. If there is no limit,
2716 QVariant::QVariant() is returned.
2717 \value ImAnchorPosition The position of the selection anchor. This may be less or greater than
2718 \c ImCursorPosition, depending on which side of selection the cursor is.
2719 If there is no selection, it returns the same as \c ImCursorPosition.
2720 \value ImHints The hints for input method on expected input. (See Qt::InputMethodHints)
2721 \value ImPreferredLanguage The preferred input language.
2722 \value ImPlatformData Platform specific data for input method.
2723 \value ImAbsolutePosition The logical position of the cursor within the entire document. The position does
2724 not incorporate the offset of the cursor within the preedit area, as controlled
2725 by QInputMethodEvent::Cursor.
2726 \value ImTextBeforeCursor The plain text before the cursor. The widget can decide how much text to return,
2727 but \b{must} not return an empty string unless the cursor is at the start of the document.
2728 \value ImTextAfterCursor The plain text after the cursor. The widget can decide how much text to return,
2729 but \b{must} not return an empty string unless the cursor is at the end of the document.
2730 \value ImEnterKeyType The Enter key type.
2731 \value ImAnchorRectangle The bounding rectangle of the selection anchor.
2732 This value was added in Qt 5.7.
2733 \value ImInputItemClipRectangle The actual exposed input item rectangle. Parts of the input item might be
2734 clipped. This value will take clipping into consideration and return the actual painted
2735 item rectangle. The rectangle is in widget coordinates.
2736 \value ImReadOnly The widget is read only. This value was added in Qt 6.2.
2737
2738 Masks:
2739
2740 \value ImQueryInput Commonly changed properties on input.
2741 \value ImQueryAll Query for all input method properties.
2742
2743 \sa QInputMethodQueryEvent
2744*/
2745
2746/*!
2747 \enum Qt::EnterKeyType
2748
2749 This can be used to alter the appearance of the Return key on an on-screen keyboard.
2750
2751 \note Not all of these values are supported on all platforms.
2752 For unsupported values the default key will be used instead.
2753
2754 \value EnterKeyDefault The default Enter key.
2755 This can either be a button closing the keyboard, or a Return button
2756 causing a new line in case of a multi-line input field.
2757 \value EnterKeyReturn Show a Return button that inserts a new line.
2758 The keyboard will not close when this button is pressed.
2759 \value EnterKeyDone Show a "Done" button.
2760 The keyboard will close when this button is pressed.
2761 \value EnterKeyGo Show a "Go" button.
2762 Typically used in an address bar when entering a URL; the keyboard
2763 will close when this button is pressed.
2764 \value EnterKeySend Show a "Send" button.
2765 The keyboard will close when this button is pressed.
2766 \value EnterKeySearch Show a "Search" button.
2767 The keyboard will close when this button is pressed.
2768 \value EnterKeyNext Show a "Next" button.
2769 Typically used in a form to allow navigating to the next input field;
2770 the keyboard will not close when this button is pressed.
2771 \value EnterKeyPrevious Show a "Previous" button.
2772 The keyboard will not close when this button is pressed.
2773
2774 \since 5.6
2775*/
2776
2777/*!
2778 \enum Qt::ItemDataRole
2779
2780 Each item in the model has a set of data elements associated with
2781 it, each with its own role. The roles are used by the view to indicate
2782 to the model which type of data it needs. Custom models should return
2783 data in these types.
2784
2785 The general purpose roles (and the associated types) are:
2786
2787 \value DisplayRole The key data to be rendered in the form of text. (QString)
2788 \value DecorationRole The data to be rendered as a decoration in the form
2789 of an icon. (QColor, QIcon or QPixmap)
2790 \value EditRole The data in a form suitable for editing in an
2791 editor. (QString)
2792 \value ToolTipRole The data displayed in the item's tooltip. (QString)
2793 \value StatusTipRole The data displayed in the status bar. (QString)
2794 \value WhatsThisRole The data displayed for the item in "What's This?"
2795 mode. (QString)
2796 \value SizeHintRole The size hint for the item that will be supplied
2797 to views. (QSize)
2798
2799 Roles describing appearance and meta data (with associated types):
2800
2801 \value FontRole The font used for items rendered with the default
2802 delegate. (QFont)
2803 \value TextAlignmentRole The alignment of the text for items rendered with the
2804 default delegate. (Qt::Alignment)
2805 \value BackgroundRole The background brush used for items rendered with
2806 the default delegate. (QBrush)
2807 \value ForegroundRole The foreground brush (text color, typically)
2808 used for items rendered with the default delegate.
2809 (QBrush)
2810 \value CheckStateRole This role is used to obtain the checked state of
2811 an item. (Qt::CheckState)
2812 \value InitialSortOrderRole This role is used to obtain the initial sort order
2813 of a header view section. (Qt::SortOrder).
2814
2815 Accessibility roles (with associated types):
2816
2817 \value AccessibleTextRole The text to be used by accessibility
2818 extensions and plugins, such as screen
2819 readers. (QString)
2820 \value AccessibleDescriptionRole A description of the item for accessibility
2821 purposes. (QString)
2822
2823 User roles:
2824
2825 \value UserRole The first role that can be used for application-specific purposes.
2826
2827 \omitvalue DisplayPropertyRole
2828 \omitvalue DecorationPropertyRole
2829 \omitvalue ToolTipPropertyRole
2830 \omitvalue StatusTipPropertyRole
2831 \omitvalue WhatsThisPropertyRole
2832 \omitvalue RangeModelDataRole
2833 \omitvalue StandardItemFlagsRole
2834 \omitvalue FileInfoRole
2835 \omitvalue RemoteObjectsCacheRole
2836
2837 For user roles, it is up to the developer to decide which types to use and ensure that
2838 components use the correct types when accessing and setting data.
2839*/
2840
2841/*!
2842 \enum Qt::ItemFlag
2843
2844 This enum describes the properties of an item:
2845
2846 \value NoItemFlags It does not have any properties set.
2847 \value ItemIsSelectable It can be selected.
2848 \value ItemIsEditable It can be edited.
2849 \value ItemIsDragEnabled It can be dragged.
2850 \value ItemIsDropEnabled It can be used as a drop target.
2851 \value ItemIsUserCheckable It can be checked or unchecked by the user.
2852 \value ItemIsEnabled The user can interact with the item.
2853 \value ItemIsAutoTristate The item's state depends on the state of its children.
2854 This enables automatic management of the state of parent items in QTreeWidget
2855 (checked if all children are checked, unchecked if all children are unchecked,
2856 or partially checked if only some children are checked).
2857 \value ItemNeverHasChildren The item never has child items.
2858 This is used for optimization purposes only.
2859 \value ItemIsUserTristate The user can cycle through three separate states.
2860 This value was added in Qt 5.5.
2861
2862 Note that checkable items need to be given both a suitable set of flags
2863 and an initial state, indicating whether the item is checked or not.
2864 This is handled automatically for model/view components, but needs
2865 to be explicitly set for instances of QListWidgetItem, QTableWidgetItem,
2866 and QTreeWidgetItem.
2867
2868 Note that it is undefined behavior to reimplement QAbstractItemModel::hasChildren
2869 to return true for an index if that index has the Qt::ItemNeverHasChildren flag set.
2870
2871 \sa QAbstractItemModel
2872*/
2873
2874/*!
2875 \enum Qt::MatchFlag
2876
2877 This enum describes the type of matches that can be used when searching
2878 for items in a model.
2879
2880 \value MatchExactly Performs QVariant-based matching.
2881 \value MatchFixedString Performs string-based matching.
2882 String-based comparisons are case-insensitive unless the
2883 \c MatchCaseSensitive flag is also specified.
2884 \value MatchContains The search term is contained in the item.
2885 \value MatchStartsWith The search term matches the start of the item.
2886 \value MatchEndsWith The search term matches the end of the item.
2887 \value MatchCaseSensitive The search is case sensitive.
2888 \value MatchRegularExpression Performs string-based matching using a regular
2889 expression as the search term. Uses QRegularExpression.
2890 When using this flag, a QRegularExpression object can be passed as
2891 parameter and will directly be used to perform the search. The case
2892 sensitivity flag will be ignored as the QRegularExpression object is
2893 expected to be fully configured.
2894 This enum value was added in Qt 5.15.
2895 \value MatchWildcard Performs string-based matching using a string with
2896 wildcards as the search term.
2897 \value MatchWrap Perform a search that wraps around, so that when
2898 the search reaches the last item in the model, it begins again at
2899 the first item and continues until all items have been examined.
2900 \value MatchRecursive Searches the entire hierarchy.
2901 \omitvalue MatchTypeMask
2902
2903 \note Qt::MatchExactly, Qt::MatchContains, Qt::MatchStartsWith,
2904 Qt::MatchEndsWith, Qt::MatchRegularExpression, Qt::MatchWildcard, and
2905 Qt::MatchFixedString are mutually exclusive. The behavior achieved by
2906 setting several of them in a Qt::MatchFlags argument is undefined.
2907
2908 \sa QString::compare(), QRegularExpression
2909*/
2910
2911/*!
2912 \enum Qt::TextElideMode
2913
2914 This enum specifies where the ellipsis should appear when
2915 displaying texts that don't fit:
2916
2917 \value ElideLeft The ellipsis should appear at the beginning of the text.
2918 \value ElideRight The ellipsis should appear at the end of the text.
2919 \value ElideMiddle The ellipsis should appear in the middle of the text.
2920 \value ElideNone Ellipsis should NOT appear in the text. When passed to functions such as
2921 QFontMetrics::elidedText(), this will cause the full string to return unless
2922 the text contains multi-length variants. Elision in this case must be done
2923 by clipping to the component width.
2924
2925 Qt::ElideMiddle is normally the most appropriate choice for URLs (e.g.,
2926 "\l{http://bugreports.qt.io/browse/QTWEBSITE-13}{http://bugreports.qt.../QTWEBSITE-13/}"),
2927 whereas Qt::ElideRight is appropriate
2928 for other strings (e.g.,
2929 "\l{http://doc.qt.io/archives/qq/qq09-mac-deployment.html}{Deploying Applications on Ma...}").
2930
2931 \sa QAbstractItemView::textElideMode, QFontMetrics::elidedText(), AlignmentFlag, QTabBar::elideMode
2932*/
2933
2934/*!
2935 \enum Qt::WindowModality
2936
2937 \keyword modal
2938
2939 This enum specifies the behavior of a modal window. A modal window
2940 is one that blocks input to other windows. Note that windows that
2941 are children of a modal window are not blocked.
2942
2943 The values are:
2944 \value NonModal The window is not modal and does not block input to other windows.
2945 \value WindowModal The window is modal to a single window hierarchy and blocks input to its parent window, all grandparent windows, and all siblings of its parent and grandparent windows.
2946 \value ApplicationModal The window is modal to the application and blocks input to all windows.
2947
2948 \sa QWidget::windowModality, QDialog
2949*/
2950
2951/*!
2952 \enum Qt::TextInteractionFlag
2953
2954 This enum specifies how a text displaying widget reacts to user input.
2955
2956 \value NoTextInteraction No interaction with the text is possible.
2957 \value TextSelectableByMouse Text can be selected with the mouse and copied to the clipboard using
2958 a context menu or standard keyboard shortcuts.
2959 \value TextSelectableByKeyboard Text can be selected with the cursor keys on the keyboard. A text cursor is shown.
2960 \value LinksAccessibleByMouse Links can be highlighted and activated with the mouse.
2961 \value LinksAccessibleByKeyboard Links can be focused using tab and activated with enter.
2962 \value TextEditable The text is fully editable.
2963
2964 \value TextEditorInteraction The default for a text editor.
2965 \value TextBrowserInteraction The default for QTextBrowser.
2966*/
2967
2968/*!
2969 \enum Qt::MaskMode
2970
2971 This enum specifies the behavior of the
2972 QPixmap::createMaskFromColor() and QImage::createMaskFromColor()
2973 functions.
2974
2975 \value MaskInColor Creates a mask where all pixels matching the given color are opaque.
2976 \value MaskOutColor Creates a mask where all pixels matching the given color are transparent.
2977*/
2978
2979/*!
2980 \enum Qt::DockWidgetAreaSizes
2981 \internal
2982*/
2983
2984/*!
2985 \enum Qt::ToolBarAreaSizes
2986 \internal
2987*/
2988
2989/*!
2990 \enum Qt::EventPriority
2991
2992 This enum can be used to specify event priorities.
2993
2994 \value HighEventPriority Events with this priority are sent before
2995 events with NormalEventPriority or LowEventPriority.
2996
2997 \value NormalEventPriority Events with this priority are sent
2998 after events with HighEventPriority, but before events with
2999 LowEventPriority.
3000
3001 \value LowEventPriority Events with this priority are sent after
3002 events with HighEventPriority or NormalEventPriority.
3003
3004 Note that these values are provided purely for convenience, since
3005 event priorities can be any value between \c INT_MAX and \c
3006 INT_MIN, inclusive. For example, you can define custom priorities
3007 as being relative to each other:
3008
3009 \snippet code/doc_src_qnamespace.cpp 1
3010
3011 \sa QCoreApplication::postEvent()
3012*/
3013/*!
3014 \enum Qt::SizeHint
3015 \since 4.4
3016
3017 This enum is used by QGraphicsLayoutItem::sizeHint()
3018
3019 \value MinimumSize is used to specify the minimum size of a graphics layout item.
3020 \value PreferredSize is used to specify the preferred size of a graphics layout item.
3021 \value MaximumSize is used to specify the maximum size of a graphics layout item.
3022 \value MinimumDescent is used to specify the minimum descent of a text string in a graphics layout item.
3023 \omitvalue NSizeHints
3024
3025 \sa QGraphicsLayoutItem::sizeHint()
3026*/
3027
3028/*!
3029 \enum Qt::SizeMode
3030 \since 4.4
3031
3032 This enum is used by QPainter::drawRoundedRect() and QPainterPath::addRoundedRect()
3033 functions to specify the radii of rectangle corners with respect to the dimensions
3034 of the bounding rectangles specified.
3035
3036 \value AbsoluteSize Specifies the size using absolute measurements.
3037 \value RelativeSize Specifies the size relative to the bounding rectangle,
3038 typically using percentage measurements.
3039*/
3040
3041/*!
3042 \enum Qt::WindowFrameSection
3043 \since 4.4
3044
3045 This enum is used to describe parts of a window frame. It is returned by
3046 QGraphicsWidget::windowFrameSectionAt() to describe what section of the window
3047 frame is under the mouse.
3048
3049 \value NoSection
3050 \value LeftSection
3051 \value TopLeftSection
3052 \value TopSection
3053 \value TopRightSection
3054 \value RightSection
3055 \value BottomRightSection
3056 \value BottomSection
3057 \value BottomLeftSection
3058 \value TitleBarArea
3059
3060 \sa QGraphicsWidget::windowFrameEvent()
3061 \sa QGraphicsWidget::paintWindowFrame()
3062 \sa QGraphicsWidget::windowFrameSectionAt()
3063
3064*/
3065
3066/*!
3067 \enum Qt::TileRule
3068 \since 4.6
3069
3070 This enum describes how to repeat or stretch the parts of an image
3071 when drawing.
3072
3073 \value StretchTile Scale the image to fit to the available area.
3074
3075 \value RepeatTile Repeat the image until there is no more space. May
3076 crop the last image.
3077
3078 \value RoundTile Similar to Repeat, but scales the image down to
3079 ensure that the last tile is not cropped.
3080*/
3081
3082/*!
3083 \enum Qt::Initialization
3084 \internal
3085*/
3086
3087/*!
3088 \enum Qt::Disambiguated_t
3089 \internal
3090*/
3091
3092/*!
3093 \enum Qt::CoordinateSystem
3094 \since 4.6
3095
3096 This enum specifies the coordinate system.
3097
3098 \value DeviceCoordinates Coordinates are relative to the top-left corner
3099 of the object's paint device.
3100
3101 \value LogicalCoordinates Coordinates are relative to the top-left corner
3102 of the object.
3103*/
3104
3105/*! \enum Qt::TouchPointState
3106 \since 4.6
3107
3108 This enum represents the state of a touch point at the time a
3109 QTouchEvent occurred.
3110
3111 \value TouchPointUnknownState The state of the touch point is not known.
3112 \value TouchPointPressed The touch point is now pressed.
3113 \value TouchPointMoved The touch point moved.
3114 \value TouchPointStationary The touch point did not move.
3115 \value TouchPointReleased The touch point was released.
3116*/
3117
3118/*!
3119 \enum Qt::GestureState
3120 \since 4.6
3121
3122 This enum type describes the state of a gesture.
3123
3124 \value NoGesture No gesture has been detected.
3125 \value GestureStarted A continuous gesture has started.
3126 \value GestureUpdated A gesture continues.
3127 \value GestureFinished A gesture has finished.
3128 \value GestureCanceled A gesture was canceled.
3129
3130 \sa QGesture
3131*/
3132
3133/*!
3134 \enum Qt::GestureType
3135 \since 4.6
3136
3137 This enum type describes the standard gestures.
3138
3139 \value TapGesture A Tap gesture.
3140 \value TapAndHoldGesture A Tap-And-Hold (Long-Tap) gesture.
3141 \value PanGesture A Pan gesture.
3142 \value PinchGesture A Pinch gesture.
3143 \value SwipeGesture A Swipe gesture.
3144 \value CustomGesture A flag that can be used to test if the gesture is a
3145 user-defined gesture ID.
3146 \omitvalue LastGestureType
3147
3148 User-defined gestures are registered with the
3149 QGestureRecognizer::registerRecognizer() function which generates a custom
3150 gesture ID with the Qt::CustomGesture flag set.
3151
3152 \sa QGesture, QWidget::grabGesture(), QGraphicsObject::grabGesture()
3153*/
3154
3155/*!
3156 \enum Qt::GestureFlag
3157 \since 4.6
3158
3159 This enum type describes additional flags that can be used when subscribing
3160 to a gesture.
3161
3162 \value DontStartGestureOnChildren By default gestures can start on the
3163 widget or over any of its children. Use this flag to disable this and allow
3164 a gesture to start on the widget only.
3165
3166 \value ReceivePartialGestures Allows any ignored gesture events to be
3167 propagated to parent widgets which have specified this hint. By default
3168 only gestures that are in the Qt::GestureStarted state are propagated and
3169 the widget always gets the full gesture sequence starting with a gesture in
3170 the Qt::GestureStarted state and ending with a gesture in the
3171 Qt::GestureFinished or Qt::GestureCanceled states.
3172
3173 \value [since 4.7] IgnoredGesturesPropagateToParent Allows fine-tuning of
3174 gesture event propagation. By setting the flag when
3175 \l{QGraphicsObject::grabGesture()}{grabbing} a gesture all ignored partial
3176 gestures will propagate to their parent items.
3177
3178 \sa QWidget::grabGesture(), QGraphicsObject::grabGesture()
3179*/
3180
3181/*!
3182 \enum Qt::NativeGestureType
3183 \since 5.2
3184
3185 This enum returns the gesture type.
3186
3187 \value BeginNativeGesture Sent before gesture event stream.
3188 \value EndNativeGesture Sent after gesture event stream.
3189 \value PanNativeGesture Specifies the displacement delta in pixels.
3190 \value ZoomNativeGesture Specifies the magnification delta in percent.
3191 \value SmartZoomNativeGesture Boolean magnification state.
3192 \value RotateNativeGesture Specifies the rotation delta in degrees.
3193 \value SwipeNativeGesture Sent after a swipe movement.
3194
3195*/
3196
3197/*!
3198 \enum Qt::NavigationMode
3199 \since 4.6
3200
3201 This enum type describes the mode for moving focus.
3202
3203 \value NavigationModeNone Only the touch screen is used.
3204 \value NavigationModeKeypadTabOrder Qt::Key_Up and Qt::Key_Down are used to change focus.
3205 \value NavigationModeKeypadDirectional Qt::Key_Up, Qt::Key_Down, Qt::Key_Left and Qt::Key_Right are used to change focus.
3206 \value NavigationModeCursorAuto The mouse cursor is used to change focus,
3207 it is displayed only on non touchscreen devices.
3208 The keypad is used to implement a virtual cursor, unless
3209 the device has an analog mouse type of input device (e.g. touchpad).
3210 This is the recommended setting for an application such as a web browser that
3211 needs pointer control on both touch and non-touch devices.
3212 \value NavigationModeCursorForceVisible The mouse cursor is used to change focus,
3213 it is displayed regardless of device type.
3214 The keypad is used to implement a virtual cursor, unless
3215 the device has an analog mouse type of input device (e.g. touchpad)
3216 \note Cursor navigation is not currently implemented on any platform
3217 and behaves as NavigationModeNone.
3218 \sa QApplication::setNavigationMode()
3219 \sa QApplication::navigationMode()
3220*/
3221
3222/*!
3223 \enum Qt::CursorMoveStyle
3224
3225 This enum describes the movement style available to text cursors. The options
3226 are:
3227
3228 \value LogicalMoveStyle Within a left-to-right text block, decrease cursor
3229 position when pressing left arrow key, increase cursor position when pressing
3230 the right arrow key. If the text block is right-to-left, the opposite behavior
3231 applies.
3232 \value VisualMoveStyle Pressing the left arrow key will always cause the cursor
3233 to move left, regardless of the text's writing direction. Pressing the right
3234 arrow key will always cause the cursor to move right.
3235*/
3236
3237/*!
3238 \enum Qt::TimerType
3239
3240 The timer type indicates how accurate a timer can be.
3241
3242 \value PreciseTimer Precise timers try to keep millisecond accuracy
3243 \value CoarseTimer Coarse timers try to keep accuracy within 5% of the desired interval
3244 \value VeryCoarseTimer Very coarse timers only keep full second accuracy
3245
3246 On UNIX (including Linux, \macos, and iOS), Qt will keep millisecond accuracy
3247 for Qt::PreciseTimer. For Qt::CoarseTimer, the interval will be adjusted up
3248 to 5% to align the timer with other timers that are expected to fire at or
3249 around the same time. The objective is to make most timers wake up at the
3250 same time, thereby reducing CPU wakeups and power consumption.
3251
3252 On Windows, Qt will use Windows's Multimedia timer facility (if available)
3253 for Qt::PreciseTimer and normal Windows timers for Qt::CoarseTimer and
3254 Qt::VeryCoarseTimer.
3255
3256 On all platforms, the interval for Qt::VeryCoarseTimer is rounded to the
3257 nearest full second (e.g. an interval of 23500ms will be rounded to
3258 24000ms, and 20300ms to 20000ms).
3259*/
3260
3261/*!
3262 \enum Qt::TimerId
3263 \since 6.8
3264 \relates QObject
3265 \relates QTimer
3266 \relates QChronoTimer
3267
3268 This is used to represent timer IDs (for example, QTimer and QChronoTimer).
3269 The underlying type is \c int. You can use \l qToUnderlying() to convert
3270 Qt::TimerId to \c int.
3271
3272 \value Invalid Represents a no-op timer ID; its usage depends on the
3273 context, for example, this is the value returned by QObject::startTimer()
3274 to indicate it failed to start a timer; whereas QChronoTimer::id() returns
3275 this value when the timer is inactive, that is, \c timer.isActive()
3276 returns \c false.
3277
3278 \sa QTimer::id(), QChronoTimer::id(), QObject::startTimer()
3279*/
3280
3281/*!
3282 \enum Qt::ScrollPhase
3283 \since 5.2
3284
3285 This enum describes the phase of scrolling.
3286
3287 \value NoScrollPhase The input device doesn't support scroll phase.
3288 This value was introduced in Qt 5.7.
3289
3290 \value ScrollBegin Scrolling is about to begin, but the scrolling
3291 distance did not yet change.
3292
3293 \value ScrollUpdate The scrolling distance has changed (default).
3294
3295 \value ScrollEnd Scrolling has ended, and the scrolling distance
3296 did not change anymore.
3297
3298 \value ScrollMomentum The user no longer touches the input device,
3299 but scrolling continues due to scroll momentum.
3300 This value was introduced in Qt 5.12.
3301*/
3302
3303/*!
3304 \enum Qt::MouseEventSource
3305 \since 5.3
3306
3307 This enum describes the source of a mouse event and can be useful
3308 to determine if the event is an artificial mouse event originating
3309 from another device such as a touchscreen.
3310
3311 \value MouseEventNotSynthesized The most common value. On
3312 platforms where such information is available this value indicates
3313 that the event was generated in response to a genuine mouse event
3314 in the system.
3315
3316 \value MouseEventSynthesizedBySystem Indicates that the mouse
3317 event was synthesized from a touch event by the platform.
3318
3319 \value MouseEventSynthesizedByQt Indicates that the mouse event was
3320 synthesized from an unhandled touch event by Qt.
3321
3322 \value MouseEventSynthesizedByApplication Indicates that the mouse
3323 event was synthesized by the application. This allows
3324 distinguishing application-generated mouse events from the ones
3325 that are coming from the system or are synthesized by Qt. This
3326 value was introduced in Qt 5.6
3327
3328 \sa Qt::AA_SynthesizeMouseForUnhandledTouchEvents
3329*/
3330
3331/*!
3332 \enum Qt::MouseEventFlag
3333 \since 5.3
3334
3335 This enum provides additional information concerning a QMouseEvent.
3336
3337 \value MouseEventCreatedDoubleClick Indicates that Qt has created a
3338 \l {QEvent::MouseButtonDblClick}{MouseButtonDblClick} event from this event. The flag is set in the causing
3339 \l {QEvent::MouseButtonPress}{MouseButtonPress}, and not in the resulting \l {QEvent::MouseButtonDblClick}{MouseButtonDblClick}.
3340
3341 \omitvalue NoMouseEventFlag
3342 \omitvalue MouseEventFlagMask
3343*/
3344
3345/*!
3346 \enum Qt::ChecksumType
3347 \since 5.9
3348
3349 This enum describes the possible standards used by qChecksum().
3350
3351 \value ChecksumIso3309 Checksum calculation based on ISO 3309.
3352
3353 \value ChecksumItuV41 Checksum calculation based on ITU-V.41.
3354*/
3355
3356/*!
3357 \enum Qt::HighDpiScaleFactorRoundingPolicy
3358 \since 5.14
3359
3360 This enum describes the possible High-DPI scale factor rounding policies, which
3361 decide how non-integer scale factors (such as Windows 150%) are handled.
3362
3363 The active policy is set by calling QGuiApplication::setHighDpiScaleFactorRoundingPolicy() before
3364 the application object is created.
3365
3366 \sa QGuiApplication::setHighDpiScaleFactorRoundingPolicy()
3367
3368 \omitvalue Unset
3369 \value Round Round up for .5 and above.
3370 \value Ceil Always round up.
3371 \value Floor Always round down.
3372 \value RoundPreferFloor Round up for .75 and above.
3373 \value PassThrough Don't round.
3374*/
3375
3376/*!
3377 \enum Qt::PermissionStatus
3378
3379 This enum describes the possible statuses of a permissions.
3380
3381 \value Undetermined
3382 The permission status is not yet known. Permission should be requested
3383 via QCoreApplication::requestPermission() to determine the actual status.
3384 This status will never be the result of requesting a permission.
3385
3386 \value Granted
3387 The user has explicitly granted the application the permission,
3388 or the permission is known to not require user authorization on
3389 the given platform.
3390
3391 \value Denied
3392 The user has explicitly denied the application the requested permission,
3393 or the permission is known to not be accessible or applicable to applications
3394 on the given platform.
3395
3396 \note On Android, there is no \c Undetermined status by the platform's APIs.
3397 Thus, if a permission is denied for an app,
3398 \l QCoreApplication::checkPermission() returns \c Undetermined
3399 by default until \l QCoreApplication::requestPermission() is called.
3400 After that \l QCoreApplication::checkPermission() reports a non \c Undetermined
3401 status.
3402
3403 \since 6.5
3404 \sa QCoreApplication::requestPermission(), QCoreApplication::checkPermission(),
3405 {Application Permissions}
3406*/
3407
3408/*!
3409 \enum Qt::ReturnByValueConstant
3410 \since 5.15
3411
3412 This is a dummy type, designed to help users transition from certain deprecated APIs to their replacement APIs.
3413
3414 \omitvalue ReturnByValue
3415
3416 \sa QCursor::bitmap()
3417 \sa QCursor::mask()
3418 \sa QLabel::picture()
3419 \sa QLabel::pixmap()
3420*/
3421
3422/*!
3423 \class QKeyCombination
3424 \inmodule QtCore
3425 \since 6.0
3426 \brief The QKeyCombination class stores a combination of a key with optional modifiers.
3427
3428 \compares equality
3429
3430 The QKeyCombination class can be used to represent a combination of a key
3431 with zero or more keyboard modifiers.
3432
3433 \sa QKeySequence
3434*/
3435
3436/*!
3437 \fn QKeyCombination::QKeyCombination(Qt::Key key = Qt::Key_unknown) noexcept
3438
3439 Constructs a QKeyCombination object that represents the key \a key
3440 and no modifiers.
3441
3442 \sa key()
3443*/
3444
3445/*!
3446 \fn QKeyCombination::QKeyCombination(Qt::Modifiers modifiers, Qt::Key key = Qt::Key_unknown) noexcept
3447
3448 Constructs a QKeyCombination object that represents the combination
3449 of \a key with the modifiers \a modifiers.
3450
3451 \sa key(), keyboardModifiers()
3452*/
3453
3454/*!
3455 \fn QKeyCombination::QKeyCombination(Qt::KeyboardModifiers modifiers, Qt::Key key = Qt::Key_unknown) noexcept
3456
3457 Constructs a QKeyCombination object that represents the combination
3458 of \a key with the modifiers \a modifiers.
3459
3460 \sa key(), keyboardModifiers()
3461*/
3462
3463/*!
3464 \fn Qt::KeyboardModifiers QKeyCombination::keyboardModifiers() const noexcept
3465
3466 Returns the keyboard modifiers represented by this QKeyCombination object.
3467
3468 \sa key()
3469*/
3470
3471/*!
3472 \fn Qt::Key QKeyCombination::key() const noexcept
3473
3474 Returns the key represented by this QKeyCombination object.
3475
3476 \sa keyboardModifiers()
3477*/
3478
3479/*!
3480 \fn QKeyCombination QKeyCombination::fromCombined(int combined)
3481
3482 Constructs a QKeyCombination object by extracting the key and the
3483 modifiers out of \a combined, which must be the result of a bitwise
3484 OR between a value of type Qt::Key and value of type
3485 Qt::KeyboardModifiers. toCombined() can be used in order to produce
3486 valid values for \a combined.
3487
3488 \sa toCombined()
3489*/
3490
3491/*!
3492 \fn int QKeyCombination::toCombined() const noexcept
3493
3494 Returns an integer value obtained by applying a bitwise OR between
3495 the values of key() and keyboardModifiers() represented
3496 by this object. A QKeyCombination object can be created from the
3497 returned integer value by using fromCombined().
3498
3499 \sa fromCombined(), key(), keyboardModifiers()
3500*/
3501
3502#if QT_DEPRECATED_SINCE(6, 0)
3503/*!
3504 \fn QKeyCombination::operator int() const noexcept
3505 \deprecated
3506
3507 Use toCombined() instead.
3508*/
3509#endif
3510
3511/*!
3512 \fn bool QKeyCombination::operator==(const QKeyCombination &lhs, const QKeyCombination &rhs)
3513
3514 Returns \c true if \a lhs and \a rhs have the same combination
3515 of key and modifiers, and \c false otherwise.
3516*/
3517
3518/*!
3519 \fn bool QKeyCombination::operator!=(const QKeyCombination &lhs, const QKeyCombination &rhs)
3520
3521 Returns \c true if \a lhs and \a rhs have different combinations
3522 of key and modifiers, otherwise \c false.
3523*/
3524
3525/*!
3526 \fn QKeyCombination Qt::operator|(Qt::Modifier modifier, Qt::Key key) noexcept
3527 \fn QKeyCombination Qt::operator|(Qt::KeyboardModifier modifier, Qt::Key key) noexcept
3528 \fn QKeyCombination Qt::operator|(Qt::Key key, Qt::Modifier modifier) noexcept
3529 \fn QKeyCombination Qt::operator|(Qt::Key key, Qt::KeyboardModifier modifier) noexcept
3530
3531 \relates QKeyCombination
3532
3533 Returns a QKeyCombination object that represents the combination
3534 of \a key with the modifier \a modifier.
3535*/
3536
3537/*!
3538 \fn QKeyCombination Qt::operator|(Qt::Modifiers modifiers, Qt::Key key) noexcept
3539 \fn QKeyCombination Qt::operator|(Qt::KeyboardModifiers modifiers, Qt::Key key) noexcept
3540 \fn QKeyCombination Qt::operator|(Qt::Key key, Qt::Modifiers modifiers) noexcept
3541 \fn QKeyCombination Qt::operator|(Qt::Key key, Qt::KeyboardModifiers modifiers) noexcept
3542
3543 \relates QKeyCombination
3544
3545 Returns a QKeyCombination object that represents the combination
3546 of \a key with the modifiers \a modifiers.
3547*/
3548
3549/*!
3550 \fn QKeyCombination Qt::operator+(Qt::Modifier modifier, Qt::Key key) noexcept
3551 \fn QKeyCombination Qt::operator+(Qt::KeyboardModifier modifier, Qt::Key key) noexcept
3552 \fn QKeyCombination Qt::operator+(Qt::Key key, Qt::Modifier modifier) noexcept
3553 \fn QKeyCombination Qt::operator+(Qt::Key key, Qt::KeyboardModifier modifier) noexcept
3554
3555 \relates QKeyCombination
3556 \deprecated
3557
3558 Use operator| instead.
3559
3560 Returns a QKeyCombination object that represents the combination
3561 of \a key with the modifier \a modifier.
3562*/
3563
3564/*!
3565 \fn QKeyCombination Qt::operator+(Qt::Modifiers modifiers, Qt::Key key) noexcept
3566 \fn QKeyCombination Qt::operator+(Qt::KeyboardModifiers modifiers, Qt::Key key) noexcept
3567 \fn QKeyCombination Qt::operator+(Qt::Key key, Qt::Modifiers modifiers) noexcept
3568 \fn QKeyCombination Qt::operator+(Qt::Key key, Qt::KeyboardModifiers modifiers) noexcept
3569
3570 \relates QKeyCombination
3571 \deprecated
3572
3573 Use operator| instead.
3574
3575 Returns a QKeyCombination object that represents the combination
3576 of \a key with the modifiers \a modifiers.
3577*/
3578
3579/*!
3580 \fn size_t qHash(QKeyCombination key, size_t seed = 0) noexcept
3581 \qhashold{QKeyCombination}
3582*/
3583
3584#ifndef QT_NO_DEBUG_STREAM
3585/*!
3586 \fn QDebug operator<<(QDebug debug, QKeyCombination combination)
3587 \relates QKeyCombination
3588
3589 Writes the combination \a combination into the debug object \a debug for
3590 debugging purposes.
3591
3592 \sa {Debugging Techniques}
3593*/
3594#endif
3595
3596#ifndef QT_NO_DATASTREAM
3597/*!
3598 \fn QDataStream &operator<<(QDataStream &out, QKeyCombination combination)
3599 \relates QKeyCombination
3600
3601 Writes the combination \a combination into the stream \a out.
3602 Returns \a out.
3603
3604 \sa {Serializing Qt Data Types}
3605*/
3606
3607/*!
3608 \fn QDataStream &operator>>(QDataStream &in, QKeyCombination &combination)
3609 \relates QKeyCombination
3610
3611 Reads the combination \a combination from the stream \a in.
3612 Returns \a in.
3613
3614 \sa {Serializing Qt Data Types}
3615*/
3616#endif