Qt 4.8
Public Slots | Signals | Public Functions | Public Variables | Protected Functions | Properties | List of all members
QComboBoxPrivateContainer Class Reference

#include <qcombobox_p.h>

Inheritance diagram for QComboBoxPrivateContainer:
QFrame QWidget QObject QPaintDevice

Public Slots

void scrollItemView (int action)
 
void updateScrollers ()
 
void viewDestroyed ()
 
- Public Slots inherited from QWidget
bool close ()
 Closes this widget. More...
 
void hide ()
 Hides the widget. More...
 
void lower ()
 Lowers the widget to the bottom of the parent widget's stack. More...
 
void raise ()
 Raises this widget to the top of the parent widget's stack. More...
 
void repaint ()
 Repaints the widget directly by calling paintEvent() immediately, unless updates are disabled or the widget is hidden. More...
 
void setDisabled (bool)
 Disables widget input events if disable is true; otherwise enables input events. More...
 
void setEnabled (bool)
 
void setFocus ()
 Gives the keyboard input focus to this widget (or its focus proxy) if this widget or one of its parents is the active window. More...
 
void setHidden (bool hidden)
 Convenience function, equivalent to setVisible(!hidden). More...
 
QT_MOC_COMPAT void setShown (bool shown)
 Use setVisible(shown) instead. More...
 
void setStyleSheet (const QString &styleSheet)
 
virtual void setVisible (bool visible)
 
void setWindowModified (bool)
 
void setWindowTitle (const QString &)
 
void show ()
 Shows the widget and its child widgets. More...
 
void showFullScreen ()
 Shows the widget in full-screen mode. More...
 
void showMaximized ()
 Shows the widget maximized. More...
 
void showMinimized ()
 Shows the widget minimized, as an icon. More...
 
void showNormal ()
 Restores the widget after it has been maximized or minimized. More...
 
void update ()
 Updates the widget unless updates are disabled or the widget is hidden. More...
 
- Public Slots inherited from QObject
void deleteLater ()
 Schedules this object for deletion. More...
 

Signals

void itemSelected (const QModelIndex &)
 
void resetButton ()
 
- Signals inherited from QWidget
void customContextMenuRequested (const QPoint &pos)
 This signal is emitted when the widget's contextMenuPolicy is Qt::CustomContextMenu, and the user has requested a context menu on the widget. More...
 
- Signals inherited from QObject
void destroyed (QObject *=0)
 This signal is emitted immediately before the object obj is destroyed, and can not be blocked. More...
 

Public Functions

QAbstractItemViewitemView () const
 
 QComboBoxPrivateContainer (QAbstractItemView *itemView, QComboBox *parent)
 
void setItemView (QAbstractItemView *itemView)
 Sets the item view to be used for the combobox popup. More...
 
int spacing () const
 Returns the spacing between the items in the view. More...
 
void updateTopBottomMargin ()
 
- Public Functions inherited from QFrame
QRect frameRect () const
 
Shadow frameShadow () const
 
Shape frameShape () const
 
int frameStyle () const
 Returns the frame style. More...
 
int frameWidth () const
 
int lineWidth () const
 
int midLineWidth () const
 
 QFrame (QWidget *parent=0, Qt::WindowFlags f=0)
 Constructs a frame widget with frame style NoFrame and a 1-pixel frame width. More...
 
void setFrameRect (const QRect &)
 em>Reimplemented Function More...
 
void setFrameShadow (Shadow)
 
void setFrameShape (Shape)
 
void setFrameStyle (int)
 Sets the frame style to style. More...
 
void setLineWidth (int)
 
void setMidLineWidth (int)
 
QSize sizeHint () const
 em>Reimplemented Function More...
 
 ~QFrame ()
 Destroys the frame. More...
 
- Public Functions inherited from QWidget
bool acceptDrops () const
 
QString accessibleDescription () const
 
QString accessibleName () const
 
QList< QAction * > actions () const
 Returns the (possibly empty) list of this widget's actions. More...
 
void activateWindow ()
 Sets the top-level widget containing this widget to be the active window. More...
 
void addAction (QAction *action)
 Appends the action action to this widget's list of actions. More...
 
void addActions (QList< QAction *> actions)
 Appends the actions actions to this widget's list of actions. More...
 
void adjustSize ()
 Adjusts the size of the widget to fit its contents. More...
 
bool autoFillBackground () const
 
QPalette::ColorRole backgroundRole () const
 Returns the background role of the widget. More...
 
QSize baseSize () const
 
QWidgetchildAt (int x, int y) const
 Returns the visible child widget at the position ({x}, {y}) in the widget's coordinate system. More...
 
QWidgetchildAt (const QPoint &p) const
 Returns the visible child widget at point p in the widget's own coordinate system. More...
 
QRect childrenRect () const
 
QRegion childrenRegion () const
 
void clearFocus ()
 Takes keyboard input focus from the widget. More...
 
void clearMask ()
 Removes any mask set by setMask(). More...
 
QMargins contentsMargins () const
 The contentsMargins function returns the widget's contents margins. More...
 
QRect contentsRect () const
 Returns the area inside the widget's margins. More...
 
Qt::ContextMenuPolicy contextMenuPolicy () const
 
void createWinId ()
 
QCursor cursor () const
 
int devType () const
 
WId effectiveWinId () const
 Returns the effective window system identifier of the widget, i. More...
 
void ensurePolished () const
 Ensures that the widget has been polished by QStyle (i.e., has a proper font and palette). More...
 
Qt::FocusPolicy focusPolicy () const
 
QWidgetfocusProxy () const
 Returns the focus proxy, or 0 if there is no focus proxy. More...
 
QWidgetfocusWidget () const
 Returns the last child of this widget that setFocus had been called on. More...
 
const QFontfont () const
 
QFontInfo fontInfo () const
 Returns the font info for the widget's current font. More...
 
QFontMetrics fontMetrics () const
 Returns the font metrics for the widget's current font. More...
 
QPalette::ColorRole foregroundRole () const
 Returns the foreground role. More...
 
QRect frameGeometry () const
 
QSize frameSize () const
 
const QRectgeometry () const
 
void getContentsMargins (int *left, int *top, int *right, int *bottom) const
 Returns the widget's contents margins for left, top, right, and bottom. More...
 
HDC getDC () const
 Returns the window system handle of the widget, for low-level access. More...
 
void grabGesture (Qt::GestureType type, Qt::GestureFlags flags=Qt::GestureFlags())
 Subscribes the widget to a given gesture with specific flags. More...
 
void grabKeyboard ()
 Grabs the keyboard input. More...
 
void grabMouse ()
 Grabs the mouse input. More...
 
void grabMouse (const QCursor &)
 
int grabShortcut (const QKeySequence &key, Qt::ShortcutContext context=Qt::WindowShortcut)
 Adds a shortcut to Qt's shortcut system that watches for the given key sequence in the given context. More...
 
QGraphicsEffectgraphicsEffect () const
 The graphicsEffect function returns a pointer to the widget's graphics effect. More...
 
QGraphicsProxyWidgetgraphicsProxyWidget () const
 Returns the proxy widget for the corresponding embedded widget in a graphics view; otherwise returns 0. More...
 
bool hasFocus () const
 
bool hasMouseTracking () const
 
int height () const
 
virtual int heightForWidth (int) const
 Returns the preferred height for this widget, given the width w. More...
 
QInputContextinputContext ()
 This function returns the QInputContext for this widget. More...
 
Qt::InputMethodHints inputMethodHints () const
 
virtual QVariant inputMethodQuery (Qt::InputMethodQuery) const
 This method is only relevant for input widgets. More...
 
void insertAction (QAction *before, QAction *action)
 Inserts the action action to this widget's list of actions, before the action before. More...
 
void insertActions (QAction *before, QList< QAction *> actions)
 Inserts the actions actions to this widget's list of actions, before the action before. More...
 
WId internalWinId () const
 Returns the window system identifier of the widget, or 0 if the widget is not created yet. More...
 
bool isActiveWindow () const
 
bool isAncestorOf (const QWidget *child) const
 Returns true if this widget is a parent, (or grandparent and so on to any level), of the given child, and both widgets are within the same window; otherwise returns false. More...
 
bool isEnabled () const
 
bool isEnabledTo (QWidget *) const
 Returns true if this widget would become enabled if ancestor is enabled; otherwise returns false. More...
 
bool isEnabledToTLW () const
 This function is deprecated. More...
 
bool isFullScreen () const
 
bool isHidden () const
 Returns true if the widget is hidden, otherwise returns false. More...
 
bool isLeftToRight () const
 
bool isMaximized () const
 
bool isMinimized () const
 
bool isModal () const
 
bool isRightToLeft () const
 
bool isTopLevel () const
 Use isWindow() instead. More...
 
bool isVisible () const
 
bool isVisibleTo (QWidget *) const
 Returns true if this widget would become visible if ancestor is shown; otherwise returns false. More...
 
bool isWindow () const
 Returns true if the widget is an independent window, otherwise returns false. More...
 
bool isWindowModified () const
 
QLayoutlayout () const
 Returns the layout manager that is installed on this widget, or 0 if no layout manager is installed. More...
 
Qt::LayoutDirection layoutDirection () const
 
QLocale locale () const
 
Qt::HANDLE macCGHandle () const
 Returns the CoreGraphics handle of the widget. More...
 
Qt::HANDLE macQDHandle () const
 Returns the QuickDraw handle of the widget. More...
 
QPoint mapFrom (QWidget *, const QPoint &) const
 Translates the widget coordinate pos from the coordinate system of parent to this widget's coordinate system. More...
 
QPoint mapFromGlobal (const QPoint &) const
 Translates the global screen coordinate pos to widget coordinates. More...
 
QPoint mapFromParent (const QPoint &) const
 Translates the parent widget coordinate pos to widget coordinates. More...
 
QPoint mapTo (QWidget *, const QPoint &) const
 Translates the widget coordinate pos to the coordinate system of parent. More...
 
QPoint mapToGlobal (const QPoint &) const
 Translates the widget coordinate pos to global screen coordinates. More...
 
QPoint mapToParent (const QPoint &) const
 Translates the widget coordinate pos to a coordinate in the parent widget. More...
 
QRegion mask () const
 Returns the mask currently set on a widget. More...
 
int maximumHeight () const
 
QSize maximumSize () const
 
int maximumWidth () const
 
int minimumHeight () const
 
QSize minimumSize () const
 
virtual QSize minimumSizeHint () const
 
int minimumWidth () const
 
void move (int x, int y)
 This corresponds to move(QPoint(x, y)). More...
 
void move (const QPoint &)
 
QWidgetnativeParentWidget () const
 Returns the native parent for this widget, i. More...
 
QWidgetnextInFocusChain () const
 Returns the next widget in this widget's focus chain. More...
 
QRect normalGeometry () const
 
void overrideWindowFlags (Qt::WindowFlags type)
 Sets the window flags for the widget to flags, without telling the window system. More...
 
void overrideWindowState (Qt::WindowStates state)
 
QPaintEnginepaintEngine () const
 Returns the widget's paint engine. More...
 
const QPalettepalette () const
 
QWidgetparentWidget () const
 Returns the parent of this widget, or 0 if it does not have any parent widget. More...
 
QPoint pos () const
 
QWidgetpreviousInFocusChain () const
 The previousInFocusChain function returns the previous widget in this widget's focus chain. More...
 
 QWidget (QWidget *parent=0, Qt::WindowFlags f=0)
 Constructs a widget which is a child of parent, with widget flags set to f. More...
 
QRect rect () const
 
void releaseDC (HDC) const
 Releases the HDC hdc acquired by a previous call to getDC(). More...
 
void releaseKeyboard ()
 Releases the keyboard grab. More...
 
void releaseMouse ()
 Releases the mouse grab. More...
 
void releaseShortcut (int id)
 Removes the shortcut with the given id from Qt's shortcut system. More...
 
void removeAction (QAction *action)
 Removes the action action from this widget's list of actions. More...
 
void render (QPaintDevice *target, const QPoint &targetOffset=QPoint(), const QRegion &sourceRegion=QRegion(), RenderFlags renderFlags=RenderFlags(DrawWindowBackground|DrawChildren))
 Renders the sourceRegion of this widget into the target using renderFlags to determine how to render. More...
 
void render (QPainter *painter, const QPoint &targetOffset=QPoint(), const QRegion &sourceRegion=QRegion(), RenderFlags renderFlags=RenderFlags(DrawWindowBackground|DrawChildren))
 Renders the widget into the painter's QPainter::device(). More...
 
void repaint (int x, int y, int w, int h)
 This version repaints a rectangle (x, y, w, h) inside the widget. More...
 
void repaint (const QRect &)
 This version repaints a rectangle rect inside the widget. More...
 
void repaint (const QRegion &)
 This version repaints a region rgn inside the widget. More...
 
void resize (int w, int h)
 This corresponds to resize(QSize(w, h)). More...
 
void resize (const QSize &)
 
bool restoreGeometry (const QByteArray &geometry)
 Restores the geometry and state top-level widgets stored in the byte array geometry. More...
 
QByteArray saveGeometry () const
 Saves the current geometry and state for top-level widgets. More...
 
void scroll (int dx, int dy)
 Scrolls the widget including its children dx pixels to the right and dy downward. More...
 
void scroll (int dx, int dy, const QRect &)
 This version only scrolls r and does not move the children of the widget. More...
 
void setAcceptDrops (bool on)
 
void setAccessibleDescription (const QString &description)
 
void setAccessibleName (const QString &name)
 
void setAttribute (Qt::WidgetAttribute, bool on=true)
 Sets the attribute attribute on this widget if on is true; otherwise clears the attribute. More...
 
void setAutoFillBackground (bool enabled)
 
void setBackgroundRole (QPalette::ColorRole)
 Sets the background role of the widget to role. More...
 
void setBaseSize (const QSize &)
 
void setBaseSize (int basew, int baseh)
 This corresponds to setBaseSize(QSize(basew, baseh)). More...
 
void setContentsMargins (int left, int top, int right, int bottom)
 Sets the margins around the contents of the widget to have the sizes left, top, right, and bottom. More...
 
void setContentsMargins (const QMargins &margins)
 The setContentsMargins function sets the margins around the widget's contents. More...
 
void setContextMenuPolicy (Qt::ContextMenuPolicy policy)
 
void setCursor (const QCursor &)
 
void setFixedHeight (int h)
 Sets both the minimum and maximum heights of the widget to h without changing the widths. More...
 
void setFixedSize (const QSize &)
 Sets both the minimum and maximum sizes of the widget to s, thereby preventing it from ever growing or shrinking. More...
 
void setFixedSize (int w, int h)
 Sets the width of the widget to w and the height to h. More...
 
void setFixedWidth (int w)
 Sets both the minimum and maximum width of the widget to w without changing the heights. More...
 
void setFocus (Qt::FocusReason reason)
 Gives the keyboard input focus to this widget (or its focus proxy) if this widget or one of its parents is the active window. More...
 
void setFocusPolicy (Qt::FocusPolicy policy)
 
void setFocusProxy (QWidget *)
 Sets the widget's focus proxy to widget w. More...
 
void setFont (const QFont &)
 Use the single-argument overload instead. More...
 
void setForegroundRole (QPalette::ColorRole)
 Sets the foreground role of the widget to role. More...
 
void setGeometry (int x, int y, int w, int h)
 This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.This corresponds to setGeometry(QRect(x, y, w, h)). More...
 
void setGeometry (const QRect &)
 
void setGraphicsEffect (QGraphicsEffect *effect)
 The setGraphicsEffect function is for setting the widget's graphics effect. More...
 
void setInputContext (QInputContext *)
 This function sets the input context context on this widget. More...
 
void setInputMethodHints (Qt::InputMethodHints hints)
 
void setLayout (QLayout *)
 Sets the layout manager for this widget to layout. More...
 
void setLayoutDirection (Qt::LayoutDirection direction)
 
void setLocale (const QLocale &locale)
 
void setMask (const QBitmap &)
 Causes only the pixels of the widget for which bitmap has a corresponding 1 bit to be visible. More...
 
void setMask (const QRegion &)
 Causes only the parts of the widget which overlap region to be visible. More...
 
void setMaximumHeight (int maxh)
 
void setMaximumSize (const QSize &)
 
void setMaximumSize (int maxw, int maxh)
 This function corresponds to setMaximumSize(QSize(maxw, maxh)). More...
 
void setMaximumWidth (int maxw)
 
void setMinimumHeight (int minh)
 
void setMinimumSize (const QSize &)
 
void setMinimumSize (int minw, int minh)
 This function corresponds to setMinimumSize(QSize(minw, minh)). More...
 
void setMinimumWidth (int minw)
 
void setMouseTracking (bool enable)
 
void setPalette (const QPalette &)
 Use the single-argument overload instead. More...
 
void setParent (QWidget *parent)
 Sets the parent of the widget to parent, and resets the window flags. More...
 
void setParent (QWidget *parent, Qt::WindowFlags f)
 This function also takes widget flags, f as an argument. More...
 
void setShortcutAutoRepeat (int id, bool enable=true)
 If enable is true, auto repeat of the shortcut with the given id is enabled; otherwise it is disabled. More...
 
void setShortcutEnabled (int id, bool enable=true)
 If enable is true, the shortcut with the given id is enabled; otherwise the shortcut is disabled. More...
 
void setSizeIncrement (const QSize &)
 
void setSizeIncrement (int w, int h)
 Sets the x (width) size increment to w and the y (height) size increment to h. More...
 
void setSizePolicy (QSizePolicy)
 
void setSizePolicy (QSizePolicy::Policy horizontal, QSizePolicy::Policy vertical)
 Sets the size policy of the widget to horizontal and vertical, with standard stretch and no height-for-width. More...
 
void setStatusTip (const QString &)
 
void setStyle (QStyle *)
 Sets the widget's GUI style to style. More...
 
void setToolTip (const QString &)
 
void setUpdatesEnabled (bool enable)
 
void setupUi (QWidget *widget)
 Sets up the user interface for the specified widget. More...
 
void setWhatsThis (const QString &)
 
void setWindowFilePath (const QString &filePath)
 
void setWindowFlags (Qt::WindowFlags type)
 
void setWindowIcon (const QIcon &icon)
 
void setWindowIconText (const QString &)
 
void setWindowModality (Qt::WindowModality windowModality)
 
void setWindowOpacity (qreal level)
 
void setWindowRole (const QString &)
 Sets the window's role to role. More...
 
void setWindowState (Qt::WindowStates state)
 Sets the window state to windowState. More...
 
void setWindowSurface (QWindowSurface *surface)
 Sets the window surface to be the surface specified. More...
 
QSize size () const
 
QSize sizeIncrement () const
 
QSizePolicy sizePolicy () const
 
void stackUnder (QWidget *)
 Places the widget under w in the parent widget's stack. More...
 
QString statusTip () const
 
QStylestyle () const
 
QString styleSheet () const
 
bool testAttribute (Qt::WidgetAttribute) const
 Returns true if attribute attribute is set on this widget; otherwise returns false. More...
 
QString toolTip () const
 
QWidgettopLevelWidget () const
 
bool underMouse () const
 Returns true if the widget is under the mouse cursor; otherwise returns false. More...
 
void ungrabGesture (Qt::GestureType type)
 Unsubscribes the widget from a given gesture type. More...
 
void unsetCursor ()
 
void unsetLayoutDirection ()
 
void unsetLocale ()
 
void update (int x, int y, int w, int h)
 This version updates a rectangle (x, y, w, h) inside the widget. More...
 
void update (const QRect &)
 This version updates a rectangle rect inside the widget. More...
 
void update (const QRegion &)
 This version repaints a region rgn inside the widget. More...
 
void updateGeometry ()
 Notifies the layout system that this widget has changed and may need to change geometry. More...
 
bool updatesEnabled () const
 
QRegion visibleRegion () const
 Returns the unobscured region where paint events can occur. More...
 
QString whatsThis () const
 
int width () const
 
QWidgetwindow () const
 Returns the window for this widget, i.e. More...
 
QString windowFilePath () const
 
Qt::WindowFlags windowFlags () const
 Window flags are a combination of a type (e. More...
 
QIcon windowIcon () const
 
QString windowIconText () const
 
Qt::WindowModality windowModality () const
 
qreal windowOpacity () const
 
QString windowRole () const
 Returns the window's role, or an empty string. More...
 
Qt::WindowStates windowState () const
 Returns the current window state. More...
 
QWindowSurfacewindowSurface () const
 Returns the QWindowSurface this widget will be drawn into. More...
 
QString windowTitle () const
 
Qt::WindowType windowType () const
 Returns the window type of this widget. More...
 
WId winId () const
 Returns the window system identifier of the widget. More...
 
int x () const
 
const QX11Infox11Info () const
 Returns information about the configuration of the X display used to display the widget. More...
 
Qt::HANDLE x11PictureHandle () const
 Returns the X11 Picture handle of the widget for XRender support. More...
 
int y () const
 
 ~QWidget ()
 Destroys the widget. More...
 
- Public Functions inherited from QObject
bool blockSignals (bool b)
 If block is true, signals emitted by this object are blocked (i.e., emitting a signal will not invoke anything connected to it). More...
 
const QObjectListchildren () const
 Returns a list of child objects. More...
 
bool connect (const QObject *sender, const char *signal, const char *member, Qt::ConnectionType type=Qt::AutoConnection) const
 
bool disconnect (const char *signal=0, const QObject *receiver=0, const char *member=0)
 
bool disconnect (const QObject *receiver, const char *member=0)
 
void dumpObjectInfo ()
 Dumps information about signal connections, etc. More...
 
void dumpObjectTree ()
 Dumps a tree of children to the debug output. More...
 
QList< QByteArraydynamicPropertyNames () const
 Returns the names of all properties that were dynamically added to the object using setProperty(). More...
 
template<typename T >
findChild (const QString &aName=QString()) const
 Returns the child of this object that can be cast into type T and that is called name, or 0 if there is no such object. More...
 
template<typename T >
QList< T > findChildren (const QString &aName=QString()) const
 Returns all children of this object with the given name that can be cast to type T, or an empty list if there are no such objects. More...
 
template<typename T >
QList< T > findChildren (const QRegExp &re) const
 
bool inherits (const char *classname) const
 Returns true if this object is an instance of a class that inherits className or a QObject subclass that inherits className; otherwise returns false. More...
 
void installEventFilter (QObject *)
 Installs an event filter filterObj on this object. More...
 
bool isWidgetType () const
 Returns true if the object is a widget; otherwise returns false. More...
 
void killTimer (int id)
 Kills the timer with timer identifier, id. More...
 
virtual const QMetaObjectmetaObject () const
 Returns a pointer to the meta-object of this object. More...
 
void moveToThread (QThread *thread)
 Changes the thread affinity for this object and its children. More...
 
QString objectName () const
 
QObjectparent () const
 Returns a pointer to the parent object. More...
 
QVariant property (const char *name) const
 Returns the value of the object's name property. More...
 
Q_INVOKABLE QObject (QObject *parent=0)
 Constructs an object with parent object parent. More...
 
void removeEventFilter (QObject *)
 Removes an event filter object obj from this object. More...
 
void setObjectName (const QString &name)
 
void setParent (QObject *)
 Makes the object a child of parent. More...
 
bool setProperty (const char *name, const QVariant &value)
 Sets the value of the object's name property to value. More...
 
void setUserData (uint id, QObjectUserData *data)
 
bool signalsBlocked () const
 Returns true if signals are blocked; otherwise returns false. More...
 
int startTimer (int interval)
 Starts a timer and returns a timer identifier, or returns zero if it could not start a timer. More...
 
QThreadthread () const
 Returns the thread in which the object lives. More...
 
QObjectUserDatauserData (uint id) const
 
virtual ~QObject ()
 Destroys the object, deleting all its child objects. More...
 
- Public Functions inherited from QPaintDevice
int colorCount () const
 
int depth () const
 
int height () const
 
int heightMM () const
 
int logicalDpiX () const
 
int logicalDpiY () const
 
QT_DEPRECATED int numColors () const
 
bool paintingActive () const
 
int physicalDpiX () const
 
int physicalDpiY () const
 
int width () const
 
int widthMM () const
 
virtual ~QPaintDevice ()
 

Public Variables

QBasicTimer adjustSizeTimer
 
QTimer blockMouseReleaseTimer
 
QPoint initialClickPosition
 

Protected Functions

void changeEvent (QEvent *e)
 This event handler can be reimplemented to handle state changes. More...
 
QStyleOptionComboBox comboStyleOption () const
 
bool eventFilter (QObject *o, QEvent *e)
 Filters events if this object has been installed as an event filter for the watched object. More...
 
void hideEvent (QHideEvent *e)
 This event handler can be reimplemented in a subclass to receive widget hide events. More...
 
void leaveEvent (QEvent *e)
 This event handler can be reimplemented in a subclass to receive widget leave events which are passed in the event parameter. More...
 
void mousePressEvent (QMouseEvent *e)
 This event handler, for event event, can be reimplemented in a subclass to receive mouse press events for the widget. More...
 
void mouseReleaseEvent (QMouseEvent *e)
 This event handler, for event event, can be reimplemented in a subclass to receive mouse release events for the widget. More...
 
void resizeEvent (QResizeEvent *e)
 This event handler can be reimplemented in a subclass to receive widget resize events which are passed in the event parameter. More...
 
void showEvent (QShowEvent *e)
 This event handler can be reimplemented in a subclass to receive widget show events which are passed in the event parameter. More...
 
void timerEvent (QTimerEvent *timerEvent)
 This event handler can be reimplemented in a subclass to receive timer events for the object. More...
 
- Protected Functions inherited from QFrame
void changeEvent (QEvent *)
 This event handler can be reimplemented to handle state changes. More...
 
void drawFrame (QPainter *)
 em>Reimplemented Function More...
 
bool event (QEvent *e)
 Reimplemented Function More...
 
void paintEvent (QPaintEvent *)
 This event handler can be reimplemented in a subclass to receive paint events passed in event. More...
 
 QFrame (QFramePrivate &dd, QWidget *parent=0, Qt::WindowFlags f=0)
 
- Protected Functions inherited from QWidget
virtual void actionEvent (QActionEvent *)
 This event handler is called with the given event whenever the widget's actions are changed. More...
 
virtual void closeEvent (QCloseEvent *)
 This event handler is called with the given event when Qt receives a window close request for a top-level widget from the window system. More...
 
virtual void contextMenuEvent (QContextMenuEvent *)
 This event handler, for event event, can be reimplemented in a subclass to receive widget context menu events. More...
 
void create (WId=0, bool initializeWindow=true, bool destroyOldWindow=true)
 Creates a new widget window if window is 0, otherwise sets the widget's window to window. More...
 
void destroy (bool destroyWindow=true, bool destroySubWindows=true)
 Frees up window system resources. More...
 
virtual void dragEnterEvent (QDragEnterEvent *)
 This event handler is called when a drag is in progress and the mouse enters this widget. More...
 
virtual void dragLeaveEvent (QDragLeaveEvent *)
 This event handler is called when a drag is in progress and the mouse leaves this widget. More...
 
virtual void dragMoveEvent (QDragMoveEvent *)
 This event handler is called if a drag is in progress, and when any of the following conditions occur: the cursor enters this widget, the cursor moves within this widget, or a modifier key is pressed on the keyboard while this widget has the focus. More...
 
virtual void dropEvent (QDropEvent *)
 This event handler is called when the drag is dropped on this widget. More...
 
virtual void enabledChange (bool)
 
virtual void enterEvent (QEvent *)
 This event handler can be reimplemented in a subclass to receive widget enter events which are passed in the event parameter. More...
 
virtual void focusInEvent (QFocusEvent *)
 This event handler can be reimplemented in a subclass to receive keyboard focus events (focus received) for the widget. More...
 
bool focusNextChild ()
 Finds a new widget to give the keyboard focus to, as appropriate for Tab, and returns true if it can find a new widget, or false if it can't. More...
 
virtual bool focusNextPrevChild (bool next)
 Finds a new widget to give the keyboard focus to, as appropriate for Tab and Shift+Tab, and returns true if it can find a new widget, or false if it can't. More...
 
virtual void focusOutEvent (QFocusEvent *)
 This event handler can be reimplemented in a subclass to receive keyboard focus events (focus lost) for the widget. More...
 
bool focusPreviousChild ()
 Finds a new widget to give the keyboard focus to, as appropriate for Shift+Tab, and returns true if it can find a new widget, or false if it can't. More...
 
virtual void fontChange (const QFont &)
 
virtual void inputMethodEvent (QInputMethodEvent *)
 This event handler, for event event, can be reimplemented in a subclass to receive Input Method composition events. More...
 
virtual void keyPressEvent (QKeyEvent *)
 This event handler, for event event, can be reimplemented in a subclass to receive key press events for the widget. More...
 
virtual void keyReleaseEvent (QKeyEvent *)
 This event handler, for event event, can be reimplemented in a subclass to receive key release events for the widget. More...
 
virtual void languageChange ()
 
virtual bool macEvent (EventHandlerCallRef, EventRef)
 This special event handler can be reimplemented in a subclass to receive native Macintosh events. More...
 
int metric (PaintDeviceMetric) const
 Internal implementation of the virtual QPaintDevice::metric() function. More...
 
virtual void mouseDoubleClickEvent (QMouseEvent *)
 This event handler, for event event, can be reimplemented in a subclass to receive mouse double click events for the widget. More...
 
virtual void mouseMoveEvent (QMouseEvent *)
 This event handler, for event event, can be reimplemented in a subclass to receive mouse move events for the widget. More...
 
virtual void moveEvent (QMoveEvent *)
 This event handler can be reimplemented in a subclass to receive widget move events which are passed in the event parameter. More...
 
virtual void paletteChange (const QPalette &)
 
 QWidget (QWidgetPrivate &d, QWidget *parent, Qt::WindowFlags f)
 
virtual bool qwsEvent (QWSEvent *)
 This special event handler can be reimplemented in a subclass to receive native Qt for Embedded Linux events which are passed in the event parameter. More...
 
void resetInputContext ()
 This function can be called on the widget that currently has focus to reset the input method operating on it. More...
 
virtual void styleChange (QStyle &)
 
virtual void tabletEvent (QTabletEvent *)
 This event handler, for event event, can be reimplemented in a subclass to receive tablet events for the widget. More...
 
virtual void wheelEvent (QWheelEvent *)
 This event handler, for event event, can be reimplemented in a subclass to receive wheel events for the widget. More...
 
virtual void windowActivationChange (bool)
 
virtual bool winEvent (MSG *message, long *result)
 This special event handler can be reimplemented in a subclass to receive native Windows events which are passed in the message parameter. More...
 
virtual bool x11Event (XEvent *)
 This special event handler can be reimplemented in a subclass to receive native X11 events passed in the event parameter. More...
 
- Protected Functions inherited from QObject
virtual void childEvent (QChildEvent *)
 This event handler can be reimplemented in a subclass to receive child events. More...
 
virtual void connectNotify (const char *signal)
 This virtual function is called when something has been connected to signal in this object. More...
 
virtual void customEvent (QEvent *)
 This event handler can be reimplemented in a subclass to receive custom events. More...
 
virtual void disconnectNotify (const char *signal)
 This virtual function is called when something has been disconnected from signal in this object. More...
 
 QObject (QObjectPrivate &dd, QObject *parent=0)
 
int receivers (const char *signal) const
 Returns the number of receivers connected to the signal. More...
 
QObjectsender () const
 Returns a pointer to the object that sent the signal, if called in a slot activated by a signal; otherwise it returns 0. More...
 
int senderSignalIndex () const
 
- Protected Functions inherited from QPaintDevice
 QPaintDevice ()
 

Properties

QComboBoxPrivateScrollerbottom
 
QComboBoxcombo
 
QComboBoxPrivateScrollertop
 
QAbstractItemViewview
 

Additional Inherited Members

- Public Types inherited from QFrame
enum  Shadow { Plain = 0x0010, Raised = 0x0020, Sunken = 0x0030 }
 This enum type defines the types of shadow that are used to give a 3D effect to frames. More...
 
enum  Shape {
  NoFrame = 0, Box = 0x0001, Panel = 0x0002, WinPanel = 0x0003,
  HLine = 0x0004, VLine = 0x0005, StyledPanel = 0x0006
}
 This enum type defines the shapes of frame available. More...
 
enum  StyleMask { Shadow_Mask = 0x00f0, Shape_Mask = 0x000f }
 This enum defines two constants that can be used to extract the two components of frameStyle(): More...
 
- Public Types inherited from QWidget
enum  RenderFlag { DrawWindowBackground = 0x1, DrawChildren = 0x2, IgnoreMask = 0x4 }
 This enum describes how to render the widget when calling QWidget::render(). More...
 
- Public Types inherited from QPaintDevice
enum  PaintDeviceMetric {
  PdmWidth = 1, PdmHeight, PdmWidthMM, PdmHeightMM,
  PdmNumColors, PdmDepth, PdmDpiX, PdmDpiY,
  PdmPhysicalDpiX, PdmPhysicalDpiY
}
 
- Static Public Functions inherited from QWidget
static QWidgetfind (WId)
 Returns a pointer to the widget with window identifer/handle id. More...
 
static QWidgetkeyboardGrabber ()
 Returns the widget that is currently grabbing the keyboard input. More...
 
static QWidgetmouseGrabber ()
 Returns the widget that is currently grabbing the mouse input. More...
 
static void setTabOrder (QWidget *, QWidget *)
 Puts the second widget after the first widget in the focus order. More...
 
- Static Public Functions inherited from QObject
static bool connect (const QObject *sender, const char *signal, const QObject *receiver, const char *member, Qt::ConnectionType=Qt::AutoConnection)
 Creates a connection of the given type from the signal in the sender object to the method in the receiver object. More...
 
static bool connect (const QObject *sender, const QMetaMethod &signal, const QObject *receiver, const QMetaMethod &method, Qt::ConnectionType type=Qt::AutoConnection)
 
static bool disconnect (const QObject *sender, const char *signal, const QObject *receiver, const char *member)
 Disconnects signal in object sender from method in object receiver. More...
 
static bool disconnect (const QObject *sender, const QMetaMethod &signal, const QObject *receiver, const QMetaMethod &member)
 
static uint registerUserData ()
 
static QString tr (const char *sourceText, const char *comment=0, int n=-1)
 
static QString trUtf8 (const char *sourceText, const char *comment=0, int n=-1)
 
- Static Public Functions inherited from QPaintDevice
static QWSDisplayqwsDisplay ()
 
- Static Public Variables inherited from QObject
static const QMetaObject staticMetaObject
 This variable stores the meta-object for the class. More...
 
- Protected Slots inherited from QWidget
void updateMicroFocus ()
 Updates the widget's micro focus. More...
 
- Protected Variables inherited from QObject
QScopedPointer< QObjectDatad_ptr
 
- Protected Variables inherited from QPaintDevice
ushort painters
 
- Static Protected Variables inherited from QObject
static const QMetaObject staticQtMetaObject
 

Detailed Description

Definition at line 218 of file qcombobox_p.h.

Constructors and Destructors

◆ QComboBoxPrivateContainer()

QComboBoxPrivateContainer::QComboBoxPrivateContainer ( QAbstractItemView itemView,
QComboBox parent 
)

Definition at line 409 of file qcombobox.cpp.

410  : QFrame(parent, Qt::Popup), combo(parent), view(0), top(0), bottom(0)
411 {
412  // we need the combobox and itemview
413  Q_ASSERT(parent);
414  Q_ASSERT(itemView);
415 
418 
419  // setup container
421 
422  // we need a vertical layout
424  layout->setSpacing(0);
425  layout->setMargin(0);
426 
427  // set item view
428  setItemView(itemView);
429 
430  // add scroller arrows if style needs them
432  const bool usePopup = combo->style()->styleHint(QStyle::SH_ComboBox_Popup, &opt, combo);
433  if (usePopup) {
436  top->hide();
437  bottom->hide();
438  } else {
439  setLineWidth(1);
440  }
441 
443 
444  if (top) {
445  layout->insertWidget(0, top);
446  connect(top, SIGNAL(doScroll(int)), this, SLOT(scrollItemView(int)));
447  }
448  if (bottom) {
449  layout->addWidget(bottom);
450  connect(bottom, SIGNAL(doScroll(int)), this, SLOT(scrollItemView(int)));
451  }
452 
453  // Some styles (Mac) have a margin at the top and bottom of the popup.
454  layout->insertSpacing(0, 0);
455  layout->addSpacing(0);
457 }
void scrollItemView(int action)
Definition: qcombobox.cpp:459
void setSingleShot(bool singleShot)
Definition: qtimer.h:108
The QBoxLayout class lines up child widgets horizontally or vertically.
Definition: qboxlayout.h:60
#define SLOT(a)
Definition: qobjectdefs.h:226
virtual int styleHint(StyleHint stylehint, const QStyleOption *opt=0, const QWidget *widget=0, QStyleHintReturn *returnData=0) const =0
Returns an integer representing the specified style hint for the given widget described by the provid...
void insertSpacing(int index, int size)
Inserts a non-stretchable space (a QSpacerItem) at position index, with size size.
Definition: qboxlayout.cpp:929
void setLineWidth(int)
Definition: qframe.cpp:368
#define Q_ASSERT(cond)
Definition: qglobal.h:1823
void addWidget(QWidget *, int stretch=0, Qt::Alignment alignment=0)
Adds widget to the end of this box layout, with a stretch factor of stretch and alignment alignment...
QStyle * style() const
Definition: qwidget.cpp:2742
QFrame(QWidget *parent=0, Qt::WindowFlags f=0)
Constructs a frame widget with frame style NoFrame and a 1-pixel frame width.
Definition: qframe.cpp:219
QComboBoxPrivateScroller * top
Definition: qcombobox_p.h:257
#define SIGNAL(a)
Definition: qobjectdefs.h:227
void insertWidget(int index, QWidget *widget, int stretch=0, Qt::Alignment alignment=0)
Inserts widget at position index, with stretch factor stretch and alignment alignment.
static bool connect(const QObject *sender, const char *signal, const QObject *receiver, const char *member, Qt::ConnectionType=Qt::AutoConnection)
Creates a connection of the given type from the signal in the sender object to the method in the rece...
Definition: qobject.cpp:2580
QComboBoxPrivateScroller * bottom
Definition: qcombobox_p.h:258
QAbstractItemView * view
Definition: qcombobox_p.h:256
void hide()
Hides the widget.
Definition: qwidget.h:501
void addSpacing(int size)
Adds a non-stretchable space (a QSpacerItem) with size size to the end of this box layout...
void setSpacing(int spacing)
Reimplements QLayout::setSpacing().
Definition: qboxlayout.cpp:667
void setFrameStyle(int)
Sets the frame style to style.
Definition: qframe.cpp:329
The QStyleOptionComboBox class is used to describe the parameter for drawing a combobox.
Definition: qstyleoption.h:796
void setAttribute(Qt::WidgetAttribute, bool on=true)
Sets the attribute attribute on this widget if on is true; otherwise clears the attribute.
Definition: qwidget.cpp:11087
QLayout * layout() const
Returns the layout manager that is installed on this widget, or 0 if no layout manager is installed...
Definition: qwidget.cpp:10073
QStyleOptionComboBox comboStyleOption() const
Definition: qcombobox.cpp:744
void setItemView(QAbstractItemView *itemView)
Sets the item view to be used for the combobox popup.
Definition: qcombobox.cpp:522
void setMargin(int)
Definition: qlayout.cpp:464

Functions

◆ changeEvent()

void QComboBoxPrivateContainer::changeEvent ( QEvent event)
protectedvirtual

This event handler can be reimplemented to handle state changes.

The state being changed in this event can be retrieved through the event supplied.

Change events include: QEvent::ToolBarChange, QEvent::ActivationChange, QEvent::EnabledChange, QEvent::FontChange, QEvent::StyleChange, QEvent::PaletteChange, QEvent::WindowTitleChange, QEvent::IconTextChange, QEvent::ModifiedChange, QEvent::MouseTrackingChange, QEvent::ParentChange, QEvent::WindowStateChange, QEvent::LanguageChange, QEvent::LocaleChange, QEvent::LayoutDirectionChange.

Reimplemented from QWidget.

Definition at line 625 of file qcombobox.cpp.

626 {
627  if (e->type() == QEvent::StyleChange) {
632 #ifdef QT_SOFTKEYS_ENABLED
633  } else if (e->type() == QEvent::LanguageChange) {
636 #endif
637  }
638 
640 }
static QString standardSoftKeyText(StandardSoftKey standardKey)
virtual int styleHint(StyleHint stylehint, const QStyleOption *opt=0, const QWidget *widget=0, QStyleHintReturn *returnData=0) const =0
Returns an integer representing the specified style hint for the given widget described by the provid...
QStyle * style() const
Definition: qwidget.cpp:2742
virtual void changeEvent(QEvent *)
This event handler can be reimplemented to handle state changes.
Definition: qwidget.cpp:9170
QAbstractItemView * view
Definition: qcombobox_p.h:256
void setMouseTracking(bool enable)
Definition: qwidget.h:990
void setFrameStyle(int)
Sets the frame style to style.
Definition: qframe.cpp:329
The QStyleOptionComboBox class is used to describe the parameter for drawing a combobox.
Definition: qstyleoption.h:796
QStyleOptionComboBox comboStyleOption() const
Definition: qcombobox.cpp:744

◆ comboStyleOption()

QStyleOptionComboBox QComboBoxPrivateContainer::comboStyleOption ( ) const
protected

Definition at line 744 of file qcombobox.cpp.

Referenced by changeEvent(), mousePressEvent(), QComboBoxPrivateContainer(), setItemView(), updateScrollers(), and updateTopBottomMargin().

745 {
746  // ### This should use QComboBox's initStyleOption(), but it's protected
747  // perhaps, we could cheat by having the QCombo private instead?
749  opt.initFrom(combo);
752  opt.editable = combo->isEditable();
753  return opt;
754 }
QStyle::SubControls activeSubControls
This variable holds a bitwise OR of the sub-controls that are active for the complex control...
Definition: qstyleoption.h:694
bool editable
whether or not the combobox is editable or not
Definition: qstyleoption.h:802
void initFrom(const QWidget *w)
Definition: qstyleoption.h:99
The QStyleOptionComboBox class is used to describe the parameter for drawing a combobox.
Definition: qstyleoption.h:796
bool isEditable() const
Definition: qcombobox.cpp:1723
QStyle::SubControls subControls
This variable holds a bitwise OR of the sub-controls to be drawn for the complex control.
Definition: qstyleoption.h:693

◆ eventFilter()

bool QComboBoxPrivateContainer::eventFilter ( QObject ,
QEvent  
)
protectedvirtual

Filters events if this object has been installed as an event filter for the watched object.

In your reimplementation of this function, if you want to filter the event out, i.e. stop it being handled further, return true; otherwise return false.

Example:

class MainWindow : public QMainWindow
{
public:
MainWindow();
protected:
bool eventFilter(QObject *obj, QEvent *ev);
private:
QTextEdit *textEdit;
};
MainWindow::MainWindow()
{
textEdit = new QTextEdit;
setCentralWidget(textEdit);
textEdit->installEventFilter(this);
}
bool MainWindow::eventFilter(QObject *obj, QEvent *event)
{
if (obj == textEdit) {
if (event->type() == QEvent::KeyPress) {
QKeyEvent *keyEvent = static_cast<QKeyEvent*>(event);
qDebug() << "Ate key press" << keyEvent->key();
return true;
} else {
return false;
}
} else {
// pass the event on to the parent class
return QMainWindow::eventFilter(obj, event);
}
}

Notice in the example above that unhandled events are passed to the base class's eventFilter() function, since the base class might have reimplemented eventFilter() for its own internal purposes.

Warning
If you delete the receiver object in this function, be sure to return true. Otherwise, Qt will forward the event to the deleted object and the program might crash.
See also
installEventFilter()

Reimplemented from QObject.

Definition at line 643 of file qcombobox.cpp.

644 {
645  switch (e->type()) {
647  switch (static_cast<QKeyEvent*>(e)->key()) {
648  case Qt::Key_Enter:
649  case Qt::Key_Return:
650 #ifdef QT_KEYPAD_NAVIGATION
651  case Qt::Key_Select:
652 #endif
654  combo->hidePopup();
656  }
657  return true;
658  case Qt::Key_Down:
659  if (!(static_cast<QKeyEvent*>(e)->modifiers() & Qt::AltModifier))
660  break;
661  // fall through
662  case Qt::Key_F4:
663  case Qt::Key_Escape:
664  combo->hidePopup();
665  return true;
666  default:
667  break;
668  }
669  break;
670  case QEvent::MouseMove:
671  if (isVisible()) {
672  QMouseEvent *m = static_cast<QMouseEvent *>(e);
673  QWidget *widget = static_cast<QWidget *>(o);
674  QPoint vector = widget->mapToGlobal(m->pos()) - initialClickPosition;
675  if (vector.manhattanLength() > 9 && blockMouseReleaseTimer.isActive())
677  QModelIndex indexUnderMouse = view->indexAt(m->pos());
678  if (indexUnderMouse.isValid()
679  && !QComboBoxDelegate::isSeparator(indexUnderMouse)) {
680  view->setCurrentIndex(indexUnderMouse);
681  }
682  }
683  break;
685  QMouseEvent *m = static_cast<QMouseEvent *>(e);
686  if (isVisible() && view->rect().contains(m->pos()) && view->currentIndex().isValid()
690  combo->hidePopup();
692  return true;
693  }
694  break;
695  }
696  default:
697  break;
698  }
699  return QFrame::eventFilter(o, e);
700 }
QPointer< QWidget > widget
bool isVisible() const
Definition: qwidget.h:1005
The QWidget class is the base class of all user interface objects.
Definition: qwidget.h:150
void itemSelected(const QModelIndex &)
static bool isSeparator(const QModelIndex &index)
Definition: qcombobox_p.h:301
const QPoint & pos() const
Returns the position of the mouse cursor, relative to the widget that received the event...
Definition: qevent.h:95
#define emit
Definition: qobjectdefs.h:76
int manhattanLength() const
Returns the sum of the absolute values of x() and y(), traditionally known as the "Manhattan length" ...
Definition: qpoint.cpp:489
void setCurrentIndex(const QModelIndex &index)
Sets the current item to be the item at index.
bool isActive() const
Returns true if the timer is running (pending); otherwise returns false.
Definition: qtimer.h:69
QModelIndex currentIndex() const
Returns the model index of the current item.
QAbstractItemView * view
Definition: qcombobox_p.h:256
bool isValid() const
Returns true if this model index is valid; otherwise returns false.
QRect rect() const
bool contains(const QPoint &p, bool proper=false) const
Returns true if the given point is inside or on the edge of the rectangle, otherwise returns false...
Definition: qrect.cpp:1101
virtual bool eventFilter(QObject *, QEvent *)
Filters events if this object has been installed as an event filter for the watched object...
Definition: qobject.cpp:1375
Qt::ItemFlags flags() const
Returns the flags for the item referred to by the index.
The QMouseEvent class contains parameters that describe a mouse event.
Definition: qevent.h:85
The QPoint class defines a point in the plane using integer precision.
Definition: qpoint.h:53
The QModelIndex class is used to locate data in a data model.
virtual void hidePopup()
Hides the list of items in the combobox if it is currently visible and resets the internal state...
Definition: qcombobox.cpp:2685
void stop()
Stops the timer.
Definition: qtimer.cpp:284
QPoint mapToGlobal(const QPoint &) const
Translates the widget coordinate pos to global screen coordinates.
virtual QModelIndex indexAt(const QPoint &point) const =0
Returns the model index of the item at the viewport coordinates point.

◆ hideEvent()

void QComboBoxPrivateContainer::hideEvent ( QHideEvent event)
protectedvirtual

This event handler can be reimplemented in a subclass to receive widget hide events.

The event is passed in the event parameter.

Hide events are sent to widgets immediately after they have been hidden.

Note: A widget receives spontaneous show and hide events when its mapping status is changed by the window system, e.g. a spontaneous hide event when the user minimizes the window, and a spontaneous show event when the window is restored again. After receiving a spontaneous hide event, a widget is still considered visible in the sense of isVisible().

See also
visible, event(), QHideEvent

Reimplemented from QWidget.

Definition at line 707 of file qcombobox.cpp.

708 {
709  emit resetButton();
710  combo->update();
711 #ifndef QT_NO_GRAPHICSVIEW
712  // QGraphicsScenePrivate::removePopup closes the combo box popup, it hides it non-explicitly.
713  // Hiding/showing the QComboBox after this will unexpectedly show the popup as well.
714  // Re-hiding the popup container makes sure it is explicitly hidden.
716  proxy->hide();
717 #endif
718 }
QGraphicsProxyWidget * graphicsProxyWidget() const
Returns the proxy widget for the corresponding embedded widget in a graphics view; otherwise returns ...
Definition: qwidget.cpp:12939
void update()
Updates the widget unless updates are disabled or the widget is hidden.
Definition: qwidget.cpp:10883
#define emit
Definition: qobjectdefs.h:76
The QGraphicsProxyWidget class provides a proxy layer for embedding a QWidget in a QGraphicsScene...

◆ itemSelected

void QComboBoxPrivateContainer::itemSelected ( const QModelIndex )
signal

Referenced by eventFilter().

◆ itemView()

QAbstractItemView * QComboBoxPrivateContainer::itemView ( ) const

Definition at line 514 of file qcombobox.cpp.

Referenced by setItemView().

515 {
516  return view;
517 }
QAbstractItemView * view
Definition: qcombobox_p.h:256

◆ leaveEvent()

void QComboBoxPrivateContainer::leaveEvent ( QEvent event)
protectedvirtual

This event handler can be reimplemented in a subclass to receive widget leave events which are passed in the event parameter.

A leave event is sent to the widget when the mouse cursor leaves the widget.

See also
enterEvent(), mouseMoveEvent(), event()

Reimplemented from QWidget.

Definition at line 398 of file qcombobox.cpp.

399 {
400 // On Mac using the Mac style we want to clear the selection
401 // when the mouse moves outside the popup.
402 #ifdef Q_WS_MAC
405  view->clearSelection();
406 #endif
407 }
virtual int styleHint(StyleHint stylehint, const QStyleOption *opt=0, const QWidget *widget=0, QStyleHintReturn *returnData=0) const =0
Returns an integer representing the specified style hint for the given widget described by the provid...
QStyle * style() const
Definition: qwidget.cpp:2742
QAbstractItemView * view
Definition: qcombobox_p.h:256
void clearSelection()
Deselects all selected items.
The QStyleOptionComboBox class is used to describe the parameter for drawing a combobox.
Definition: qstyleoption.h:796
QStyleOptionComboBox comboStyleOption() const
Definition: qcombobox.cpp:744

◆ mousePressEvent()

void QComboBoxPrivateContainer::mousePressEvent ( QMouseEvent event)
protectedvirtual

This event handler, for event event, can be reimplemented in a subclass to receive mouse press events for the widget.

If you create new widgets in the mousePressEvent() the mouseReleaseEvent() may not end up where you expect, depending on the underlying window system (or X11 window manager), the widgets' location and maybe more.

The default implementation implements the closing of popup widgets when you click outside the window. For other widget types it does nothing.

See also
mouseReleaseEvent(), mouseDoubleClickEvent(), mouseMoveEvent(), event(), QMouseEvent, {Scribble Example}

Reimplemented from QWidget.

Definition at line 720 of file qcombobox.cpp.

721 {
722 
727  combo->mapFromGlobal(e->globalPos()),
728  combo);
729  if ((combo->isEditable() && sc == QStyle::SC_ComboBoxArrow)
730  || (!combo->isEditable() && sc != QStyle::SC_None))
732  combo->hidePopup();
733 }
SubControl
This enum describes the available sub controls.
Definition: qstyle.h:402
QStyle::SubControls activeSubControls
This variable holds a bitwise OR of the sub-controls that are active for the complex control...
Definition: qstyleoption.h:694
QStyle * style() const
Definition: qwidget.cpp:2742
The QStyleOptionComboBox class is used to describe the parameter for drawing a combobox.
Definition: qstyleoption.h:796
virtual SubControl hitTestComplexControl(ComplexControl cc, const QStyleOptionComplex *opt, const QPoint &pt, const QWidget *widget=0) const =0
Returns the sub control at the given position in the given complex control (with the style options sp...
void setAttribute(Qt::WidgetAttribute, bool on=true)
Sets the attribute attribute on this widget if on is true; otherwise clears the attribute.
Definition: qwidget.cpp:11087
QPoint mapFromGlobal(const QPoint &) const
Translates the global screen coordinate pos to widget coordinates.
QStyleOptionComboBox comboStyleOption() const
Definition: qcombobox.cpp:744
virtual void hidePopup()
Hides the list of items in the combobox if it is currently visible and resets the internal state...
Definition: qcombobox.cpp:2685
bool isEditable() const
Definition: qcombobox.cpp:1723
QStyle::SubControls subControls
This variable holds a bitwise OR of the sub-controls to be drawn for the complex control.
Definition: qstyleoption.h:693

◆ mouseReleaseEvent()

void QComboBoxPrivateContainer::mouseReleaseEvent ( QMouseEvent event)
protectedvirtual

This event handler, for event event, can be reimplemented in a subclass to receive mouse release events for the widget.

See also
mousePressEvent(), mouseDoubleClickEvent(), mouseMoveEvent(), event(), QMouseEvent, {Scribble Example}

Reimplemented from QWidget.

Definition at line 735 of file qcombobox.cpp.

736 {
737  Q_UNUSED(e);
739  combo->hidePopup();
740  emit resetButton();
741  }
742 }
#define emit
Definition: qobjectdefs.h:76
bool isActive() const
Returns true if the timer is running (pending); otherwise returns false.
Definition: qtimer.h:69
virtual void hidePopup()
Hides the list of items in the combobox if it is currently visible and resets the internal state...
Definition: qcombobox.cpp:2685
#define Q_UNUSED(x)
Indicates to the compiler that the parameter with the specified name is not used in the body of a fun...
Definition: qglobal.h:1729

◆ resetButton

void QComboBoxPrivateContainer::resetButton ( )
signal

Referenced by hideEvent(), and mouseReleaseEvent().

◆ resizeEvent()

void QComboBoxPrivateContainer::resizeEvent ( QResizeEvent )
protectedvirtual

This event handler can be reimplemented in a subclass to receive widget resize events which are passed in the event parameter.

When resizeEvent() is called, the widget already has its new geometry. The old size is accessible through QResizeEvent::oldSize().

The widget will be erased and receive a paint event immediately after processing the resize event. No drawing need be (or should be) done inside this handler.

See also
moveEvent(), event(), resize(), QResizeEvent, paintEvent(), {Scribble Example}

Reimplemented from QWidget.

Definition at line 382 of file qcombobox.cpp.

383 {
386  QStyleOption myOpt;
387  myOpt.initFrom(this);
389  if (combo->style()->styleHint(QStyle::SH_Menu_Mask, &myOpt, this, &mask)) {
390  setMask(mask.region);
391  }
392  } else {
393  clearMask();
394  }
396 }
virtual int styleHint(StyleHint stylehint, const QStyleOption *opt=0, const QWidget *widget=0, QStyleHintReturn *returnData=0) const =0
Returns an integer representing the specified style hint for the given widget described by the provid...
virtual void resizeEvent(QResizeEvent *)
This event handler can be reimplemented in a subclass to receive widget resize events which are passe...
Definition: qwidget.cpp:9587
QStyle * style() const
Definition: qwidget.cpp:2742
void clearMask()
Removes any mask set by setMask().
Definition: qwidget.cpp:13324
The QStyleOption class stores the parameters used by QStyle functions.
Definition: qstyleoption.h:67
void initFrom(const QWidget *w)
Definition: qstyleoption.h:99
void setMask(const QBitmap &)
Causes only the pixels of the widget for which bitmap has a corresponding 1 bit to be visible...
Definition: qwidget.cpp:13309
QRegion mask() const
Returns the mask currently set on a widget.
Definition: qwidget.cpp:10058
The QStyleHintReturnMask class provides style hints that return a QRegion.
Definition: qstyleoption.h:923
The QStyleOptionComboBox class is used to describe the parameter for drawing a combobox.
Definition: qstyleoption.h:796
QStyleOptionComboBox comboStyleOption() const
Definition: qcombobox.cpp:744
QRegion region
the region for style hints that return a QRegion
Definition: qstyleoption.h:930

◆ scrollItemView

void QComboBoxPrivateContainer::scrollItemView ( int  action)
slot

Definition at line 459 of file qcombobox.cpp.

Referenced by QComboBoxPrivateContainer().

460 {
461 #ifndef QT_NO_SCROLLBAR
462  if (view->verticalScrollBar())
463  view->verticalScrollBar()->triggerAction(static_cast<QAbstractSlider::SliderAction>(action));
464 #endif
465 }
void triggerAction(SliderAction action)
Triggers a slider action.
QScrollBar * verticalScrollBar() const
Returns the vertical scroll bar.
QAbstractItemView * view
Definition: qcombobox_p.h:256

◆ setItemView()

void QComboBoxPrivateContainer::setItemView ( QAbstractItemView itemView)

Sets the item view to be used for the combobox popup.

Definition at line 522 of file qcombobox.cpp.

Referenced by QComboBoxPrivateContainer(), and viewDestroyed().

523 {
524  Q_ASSERT(itemView);
525 
526  // clean up old one
527  if (view) {
528  view->removeEventFilter(this);
529  view->viewport()->removeEventFilter(this);
530 #ifndef QT_NO_SCROLLBAR
531  disconnect(view->verticalScrollBar(), SIGNAL(valueChanged(int)),
532  this, SLOT(updateScrollers()));
533  disconnect(view->verticalScrollBar(), SIGNAL(rangeChanged(int,int)),
534  this, SLOT(updateScrollers()));
535 #endif
537  this, SLOT(viewDestroyed()));
538 
539  delete view;
540  view = 0;
541  }
542 
543  // setup the item view
544  view = itemView;
545  view->setParent(this);
547  qobject_cast<QBoxLayout*>(layout())->insertWidget(top ? 2 : 0, view);
549  view->installEventFilter(this);
550  view->viewport()->installEventFilter(this);
553  const bool usePopup = combo->style()->styleHint(QStyle::SH_ComboBox_Popup, &opt, combo);
554 #ifndef QT_NO_SCROLLBAR
555 #ifndef Q_WS_S60
556  if (usePopup)
558 #endif
559 #endif
561  usePopup) {
562  view->setMouseTracking(true);
563  }
566  view->setLineWidth(0);
568 #ifndef QT_NO_SCROLLBAR
569  connect(view->verticalScrollBar(), SIGNAL(valueChanged(int)),
570  this, SLOT(updateScrollers()));
571  connect(view->verticalScrollBar(), SIGNAL(rangeChanged(int,int)),
572  this, SLOT(updateScrollers()));
573 #endif
575  this, SLOT(viewDestroyed()));
576 
577 #ifdef QT_SOFTKEYS_ENABLED
580  addAction(selectAction);
581  addAction(cancelAction);
582 #endif
583 }
void setSelectionMode(QAbstractItemView::SelectionMode mode)
The QBoxLayout class lines up child widgets horizontally or vertically.
Definition: qboxlayout.h:60
void setParent(QWidget *parent)
Sets the parent of the widget to parent, and resets the window flags.
Definition: qwidget.cpp:10479
#define SLOT(a)
Definition: qobjectdefs.h:226
void removeEventFilter(QObject *)
Removes an event filter object obj from this object.
Definition: qobject.cpp:2099
void setEditTriggers(EditTriggers triggers)
void setHorizontalScrollBarPolicy(Qt::ScrollBarPolicy)
virtual int styleHint(StyleHint stylehint, const QStyleOption *opt=0, const QWidget *widget=0, QStyleHintReturn *returnData=0) const =0
Returns an integer representing the specified style hint for the given widget described by the provid...
QScrollBar * verticalScrollBar() const
Returns the vertical scroll bar.
QAbstractItemView * itemView() const
Definition: qcombobox.cpp:514
T * qobject_cast(QObject *object)
Definition: qobject.h:375
void setLineWidth(int)
Definition: qframe.cpp:368
#define Q_ASSERT(cond)
Definition: qglobal.h:1823
void addAction(QAction *action)
Appends the action action to this widget&#39;s list of actions.
Definition: qwidget.cpp:3317
QStyle * style() const
Definition: qwidget.cpp:2742
QComboBoxPrivateScroller * top
Definition: qcombobox_p.h:257
QWidget * viewport() const
Returns the viewport widget.
#define SIGNAL(a)
Definition: qobjectdefs.h:227
static QAction * createKeyedAction(StandardSoftKey standardKey, Qt::Key key, QWidget *actionWidget)
Creates a QAction and registers the &#39;triggered&#39; signal to send the given key event to actionWidget as...
void destroyed(QObject *=0)
This signal is emitted immediately before the object obj is destroyed, and can not be blocked...
static bool connect(const QObject *sender, const char *signal, const QObject *receiver, const char *member, Qt::ConnectionType=Qt::AutoConnection)
Creates a connection of the given type from the signal in the sender object to the method in the rece...
Definition: qobject.cpp:2580
QAbstractItemView * view
Definition: qcombobox_p.h:256
void setMouseTracking(bool enable)
Definition: qwidget.h:990
static bool disconnect(const QObject *sender, const char *signal, const QObject *receiver, const char *member)
Disconnects signal in object sender from method in object receiver.
Definition: qobject.cpp:2895
void setVerticalScrollBarPolicy(Qt::ScrollBarPolicy)
void setFrameStyle(int)
Sets the frame style to style.
Definition: qframe.cpp:329
void installEventFilter(QObject *)
Installs an event filter filterObj on this object.
Definition: qobject.cpp:2070
The QStyleOptionComboBox class is used to describe the parameter for drawing a combobox.
Definition: qstyleoption.h:796
void setAttribute(Qt::WidgetAttribute, bool on=true)
Sets the attribute attribute on this widget if on is true; otherwise clears the attribute.
Definition: qwidget.cpp:11087
QLayout * layout() const
Returns the layout manager that is installed on this widget, or 0 if no layout manager is installed...
Definition: qwidget.cpp:10073
QStyleOptionComboBox comboStyleOption() const
Definition: qcombobox.cpp:744
void setSizePolicy(QSizePolicy)
Definition: qwidget.cpp:10198

◆ showEvent()

void QComboBoxPrivateContainer::showEvent ( QShowEvent event)
protectedvirtual

This event handler can be reimplemented in a subclass to receive widget show events which are passed in the event parameter.

Non-spontaneous show events are sent to widgets immediately before they are shown. The spontaneous show events of windows are delivered afterwards.

Note: A widget receives spontaneous show and hide events when its mapping status is changed by the window system, e.g. a spontaneous hide event when the user minimizes the window, and a spontaneous show event when the window is restored again. After receiving a spontaneous hide event, a widget is still considered visible in the sense of isVisible().

See also
visible, event(), QShowEvent

Reimplemented from QWidget.

Definition at line 702 of file qcombobox.cpp.

703 {
704  combo->update();
705 }
void update()
Updates the widget unless updates are disabled or the widget is hidden.
Definition: qwidget.cpp:10883

◆ spacing()

int QComboBoxPrivateContainer::spacing ( ) const

Returns the spacing between the items in the view.

Definition at line 588 of file qcombobox.cpp.

Referenced by QComboBox::showPopup(), and updateScrollers().

589 {
590  QListView *lview = qobject_cast<QListView*>(view);
591  if (lview)
592  return lview->spacing();
593 #ifndef QT_NO_TABLEVIEW
595  if (tview)
596  return tview->showGrid() ? 1 : 0;
597 #endif
598  return 0;
599 }
T * qobject_cast(QObject *object)
Definition: qobject.h:375
QAbstractItemView * view
Definition: qcombobox_p.h:256
The QTableView class provides a default model/view implementation of a table view.
Definition: qtableview.h:58
The QListView class provides a list or icon view onto a model.
Definition: qlistview.h:57
bool showGrid
whether the grid is shown
Definition: qtableview.h:61
int spacing
the space around the items in the layout
Definition: qlistview.h:66

◆ timerEvent()

void QComboBoxPrivateContainer::timerEvent ( QTimerEvent event)
protectedvirtual

This event handler can be reimplemented in a subclass to receive timer events for the object.

QTimer provides a higher-level interface to the timer functionality, and also more general information about timers. The timer event is passed in the event parameter.

See also
startTimer(), killTimer(), event()

Reimplemented from QObject.

Definition at line 370 of file qcombobox.cpp.

371 {
372  if (timerEvent->timerId() == adjustSizeTimer.timerId()) {
376  combo->adjustSize();
377  combo->update();
378  }
379  }
380 }
void update()
Updates the widget unless updates are disabled or the widget is hidden.
Definition: qwidget.cpp:10883
void adjustSize()
Adjusts the size of the widget to fit its contents.
Definition: qwidget.cpp:8488
SizeAdjustPolicy sizeAdjustPolicy
the policy describing how the size of the combobox changes when the content changes ...
Definition: qcombobox.h:75
void stop()
Stops the timer.
void timerEvent(QTimerEvent *timerEvent)
This event handler can be reimplemented in a subclass to receive timer events for the object...
Definition: qcombobox.cpp:370
int timerId() const
Returns the timer&#39;s ID.
Definition: qbasictimer.h:63
void updateGeometry()
Notifies the layout system that this widget has changed and may need to change geometry.
Definition: qwidget.cpp:10372

◆ updateScrollers

void QComboBoxPrivateContainer::updateScrollers ( )
slot

Definition at line 470 of file qcombobox.cpp.

Referenced by setItemView(), and QComboBox::showPopup().

471 {
472 #ifndef QT_NO_SCROLLBAR
473  if (!top || !bottom)
474  return;
475 
476  if (isVisible() == false)
477  return;
478 
482 
483  bool needTop = view->verticalScrollBar()->value()
484  > (view->verticalScrollBar()->minimum() + spacing());
485  bool needBottom = view->verticalScrollBar()->value()
486  < (view->verticalScrollBar()->maximum() - spacing()*2);
487  if (needTop)
488  top->show();
489  else
490  top->hide();
491  if (needBottom)
492  bottom->show();
493  else
494  bottom->hide();
495  } else {
496  top->hide();
497  bottom->hide();
498  }
499 #endif // QT_NO_SCROLLBAR
500 }
int minimum() const
bool isVisible() const
Definition: qwidget.h:1005
virtual int styleHint(StyleHint stylehint, const QStyleOption *opt=0, const QWidget *widget=0, QStyleHintReturn *returnData=0) const =0
Returns an integer representing the specified style hint for the given widget described by the provid...
QScrollBar * verticalScrollBar() const
Returns the vertical scroll bar.
QStyle * style() const
Definition: qwidget.cpp:2742
QComboBoxPrivateScroller * top
Definition: qcombobox_p.h:257
int value() const
QComboBoxPrivateScroller * bottom
Definition: qcombobox_p.h:258
void show()
Shows the widget and its child widgets.
QAbstractItemView * view
Definition: qcombobox_p.h:256
void hide()
Hides the widget.
Definition: qwidget.h:501
int spacing() const
Returns the spacing between the items in the view.
Definition: qcombobox.cpp:588
The QStyleOptionComboBox class is used to describe the parameter for drawing a combobox.
Definition: qstyleoption.h:796
QStyleOptionComboBox comboStyleOption() const
Definition: qcombobox.cpp:744
int maximum() const

◆ updateTopBottomMargin()

void QComboBoxPrivateContainer::updateTopBottomMargin ( )

Definition at line 601 of file qcombobox.cpp.

Referenced by QComboBoxPrivateContainer().

602 {
603  if (!layout() || layout()->count() < 1)
604  return;
605 
606  QBoxLayout *boxLayout = qobject_cast<QBoxLayout *>(layout());
607  if (!boxLayout)
608  return;
609 
611  const bool usePopup = combo->style()->styleHint(QStyle::SH_ComboBox_Popup, &opt, combo);
612  const int margin = usePopup ? combo->style()->pixelMetric(QStyle::PM_MenuVMargin, &opt, combo) : 0;
613 
614  QSpacerItem *topSpacer = boxLayout->itemAt(0)->spacerItem();
615  if (topSpacer)
616  topSpacer->changeSize(0, margin, QSizePolicy::Minimum, QSizePolicy::Fixed);
617 
618  QSpacerItem *bottomSpacer = boxLayout->itemAt(boxLayout->count() - 1)->spacerItem();
619  if (bottomSpacer && bottomSpacer != topSpacer)
620  bottomSpacer->changeSize(0, margin, QSizePolicy::Minimum, QSizePolicy::Fixed);
621 
622  boxLayout->invalidate();
623 }
QLayoutItem * itemAt(int) const
Reimplemented Function
Definition: qboxlayout.cpp:778
The QBoxLayout class lines up child widgets horizontally or vertically.
Definition: qboxlayout.h:60
virtual int pixelMetric(PixelMetric metric, const QStyleOption *option=0, const QWidget *widget=0) const =0
Returns the value of the given pixel metric.
virtual int styleHint(StyleHint stylehint, const QStyleOption *opt=0, const QWidget *widget=0, QStyleHintReturn *returnData=0) const =0
Returns an integer representing the specified style hint for the given widget described by the provid...
T * qobject_cast(QObject *object)
Definition: qobject.h:375
QStyle * style() const
Definition: qwidget.cpp:2742
virtual QSpacerItem * spacerItem()
If this item is a QSpacerItem, it is returned as a QSpacerItem; otherwise 0 is returned.
void invalidate()
Resets cached information.
Definition: qboxlayout.cpp:759
The QSpacerItem class provides blank space in a layout.
Definition: qlayoutitem.h:96
int count() const
Reimplemented Function
Definition: qboxlayout.cpp:769
The QStyleOptionComboBox class is used to describe the parameter for drawing a combobox.
Definition: qstyleoption.h:796
QLayout * layout() const
Returns the layout manager that is installed on this widget, or 0 if no layout manager is installed...
Definition: qwidget.cpp:10073
QStyleOptionComboBox comboStyleOption() const
Definition: qcombobox.cpp:744
void changeSize(int w, int h, QSizePolicy::Policy hData=QSizePolicy::Minimum, QSizePolicy::Policy vData=QSizePolicy::Minimum)
Changes this spacer item to have preferred width w, preferred height h, horizontal size policy hPolic...

◆ viewDestroyed

void QComboBoxPrivateContainer::viewDestroyed ( )
slot

Definition at line 505 of file qcombobox.cpp.

Referenced by setItemView().

506 {
507  view = 0;
509 }
QAbstractItemView * view
Definition: qcombobox_p.h:256
void setItemView(QAbstractItemView *itemView)
Sets the item view to be used for the combobox popup.
Definition: qcombobox.cpp:522

Properties

◆ adjustSizeTimer

QBasicTimer QComboBoxPrivateContainer::adjustSizeTimer

Definition at line 230 of file qcombobox_p.h.

Referenced by QComboBoxPrivate::adjustComboBoxSize().

◆ blockMouseReleaseTimer

QTimer QComboBoxPrivateContainer::blockMouseReleaseTimer

Definition at line 229 of file qcombobox_p.h.

Referenced by eventFilter(), mouseReleaseEvent(), and QComboBoxPrivateContainer().

◆ bottom

QComboBoxPrivateScroller* QComboBoxPrivateContainer::bottom
private

Definition at line 258 of file qcombobox_p.h.

Referenced by QComboBoxPrivateContainer(), and updateScrollers().

◆ combo

QComboBox* QComboBoxPrivateContainer::combo
private

◆ initialClickPosition

QPoint QComboBoxPrivateContainer::initialClickPosition

Definition at line 231 of file qcombobox_p.h.

Referenced by eventFilter().

◆ top

QComboBoxPrivateScroller* QComboBoxPrivateContainer::top
private

Definition at line 257 of file qcombobox_p.h.

Referenced by QComboBoxPrivateContainer(), setItemView(), and updateScrollers().

◆ view

QAbstractItemView* QComboBoxPrivateContainer::view
private

The documentation for this class was generated from the following files: