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