qtoolbarextension.cpp

上传用户:binglan008
上传日期:2007-01-28
资源大小:53508k
文件大小:3k
源码类别:Linux/Unix编程
开发平台:MultiPlatform
  1. /****************************************************************************
  2. **
  3. ** Copyright (C) 1992-2007 Trolltech ASA. All rights reserved.
  4. **
  5. ** This file is part of the QtGui module of the Qt Toolkit.
  6. **
  7. ** This file may be used under the terms of the GNU General Public
  8. ** License version 2.0 as published by the Free Software Foundation
  9. ** and appearing in the file LICENSE.GPL included in the packaging of
  10. ** this file.  Please review the following information to ensure GNU
  11. ** General Public Licensing requirements will be met:
  12. ** http://trolltech.com/products/qt/licenses/licensing/opensource/
  13. **
  14. ** If you are unsure which license is appropriate for your use, please
  15. ** review the following information:
  16. ** http://trolltech.com/products/qt/licenses/licensing/licensingoverview
  17. ** or contact the sales department at sales@trolltech.com.
  18. **
  19. ** In addition, as a special exception, Trolltech gives you certain
  20. ** additional rights. These rights are described in the Trolltech GPL
  21. ** Exception version 1.0, which can be found at
  22. ** http://www.trolltech.com/products/qt/gplexception/ and in the file
  23. ** GPL_EXCEPTION.txt in this package.
  24. **
  25. ** In addition, as a special exception, Trolltech, as the sole copyright
  26. ** holder for Qt Designer, grants users of the Qt/Eclipse Integration
  27. ** plug-in the right for the Qt/Eclipse Integration to link to
  28. ** functionality provided by Qt Designer and its related libraries.
  29. **
  30. ** Trolltech reserves all rights not expressly granted herein.
  31. **
  32. ** This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE
  33. ** WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
  34. **
  35. ****************************************************************************/
  36. #include "qtoolbarextension_p.h"
  37. #include <qpixmap.h>
  38. #include <qstyle.h>
  39. #ifndef QT_NO_TOOLBUTTON
  40. QToolBarExtension::QToolBarExtension(QWidget *parent)
  41.     : QToolButton(parent)
  42. {
  43.     setObjectName(QLatin1String("qt_toolbar_ext_button"));
  44.     setAutoRaise(true);
  45.     setOrientation(Qt::Horizontal);
  46.     setSizePolicy(QSizePolicy::Minimum, QSizePolicy::Minimum);
  47.     setCheckable(true);
  48. }
  49. void QToolBarExtension::setOrientation(Qt::Orientation o)
  50. {
  51.     if (o == Qt::Horizontal) {
  52.         setIcon(style()->standardIcon(QStyle::SP_ToolBarHorizontalExtensionButton));
  53.     } else {
  54.         setIcon(style()->standardIcon(QStyle::SP_ToolBarVerticalExtensionButton));
  55.    }
  56. }
  57. QSize QToolBarExtension::sizeHint() const
  58. {
  59.     int ext = style()->pixelMetric(QStyle::PM_ToolBarExtensionExtent);
  60.     return QSize(ext, ext);
  61. }
  62. #endif // QT_NO_TOOLBUTTON