File indexing completed on 2024-04-28 04:58:12
0001 /* 0002 This file is part of the KDE project 0003 SPDX-FileCopyrightText: 1999 Simon Hausmann <hausmann@kde.org> 0004 SPDX-FileCopyrightText: 1999 David Faure <faure@kde.org> 0005 0006 SPDX-License-Identifier: LGPL-2.0-or-later 0007 */ 0008 0009 #include "windowargs.h" 0010 0011 #include <QRect> 0012 0013 #if QT_VERSION >= QT_VERSION_CHECK(6, 0, 0) 0014 0015 class WindowArgsPrivate : public QSharedData 0016 { 0017 public: 0018 WindowArgsPrivate() 0019 : x(-1) 0020 , y(-1) 0021 , width(-1) 0022 , height(-1) 0023 , fullscreen(false) 0024 , menuBarVisible(true) 0025 , toolBarsVisible(true) 0026 , statusBarVisible(true) 0027 , resizable(true) 0028 , lowerWindow(false) 0029 , scrollBarsVisible(true) 0030 { 0031 } 0032 0033 // Position 0034 int x; 0035 int y; 0036 // Size 0037 int width; 0038 int height; 0039 bool fullscreen; // defaults to false 0040 bool menuBarVisible; // defaults to true 0041 bool toolBarsVisible; // defaults to true 0042 bool statusBarVisible; // defaults to true 0043 bool resizable; // defaults to true 0044 0045 bool lowerWindow; // defaults to false 0046 bool scrollBarsVisible; // defaults to true 0047 }; 0048 0049 WindowArgs::WindowArgs() 0050 : d(new WindowArgsPrivate) 0051 { 0052 } 0053 0054 WindowArgs::WindowArgs(const WindowArgs &args) 0055 : d(args.d) 0056 { 0057 } 0058 0059 WindowArgs::~WindowArgs() 0060 { 0061 } 0062 0063 WindowArgs &WindowArgs::operator=(const WindowArgs &args) 0064 { 0065 if (this == &args) { 0066 return *this; 0067 } 0068 0069 d = args.d; 0070 return *this; 0071 } 0072 0073 WindowArgs::WindowArgs(const QRect &_geometry, bool _fullscreen, bool _menuBarVisible, bool _toolBarsVisible, bool _statusBarVisible, bool _resizable) 0074 : d(new WindowArgsPrivate) 0075 { 0076 d->x = _geometry.x(); 0077 d->y = _geometry.y(); 0078 d->width = _geometry.width(); 0079 d->height = _geometry.height(); 0080 d->fullscreen = _fullscreen; 0081 d->menuBarVisible = _menuBarVisible; 0082 d->toolBarsVisible = _toolBarsVisible; 0083 d->statusBarVisible = _statusBarVisible; 0084 d->resizable = _resizable; 0085 d->lowerWindow = false; 0086 } 0087 0088 WindowArgs::WindowArgs(int _x, 0089 int _y, 0090 int _width, 0091 int _height, 0092 bool _fullscreen, 0093 bool _menuBarVisible, 0094 bool _toolBarsVisible, 0095 bool _statusBarVisible, 0096 bool _resizable) 0097 : d(new WindowArgsPrivate) 0098 { 0099 d->x = _x; 0100 d->y = _y; 0101 d->width = _width; 0102 d->height = _height; 0103 d->fullscreen = _fullscreen; 0104 d->menuBarVisible = _menuBarVisible; 0105 d->toolBarsVisible = _toolBarsVisible; 0106 d->statusBarVisible = _statusBarVisible; 0107 d->resizable = _resizable; 0108 d->lowerWindow = false; 0109 } 0110 0111 void WindowArgs::setX(int x) 0112 { 0113 d->x = x; 0114 } 0115 0116 int WindowArgs::x() const 0117 { 0118 return d->x; 0119 } 0120 0121 void WindowArgs::setY(int y) 0122 { 0123 d->y = y; 0124 } 0125 0126 int WindowArgs::y() const 0127 { 0128 return d->y; 0129 } 0130 0131 void WindowArgs::setWidth(int w) 0132 { 0133 d->width = w; 0134 } 0135 0136 int WindowArgs::width() const 0137 { 0138 return d->width; 0139 } 0140 0141 void WindowArgs::setHeight(int h) 0142 { 0143 d->height = h; 0144 } 0145 0146 int WindowArgs::height() const 0147 { 0148 return d->height; 0149 } 0150 0151 void WindowArgs::setFullScreen(bool fs) 0152 { 0153 d->fullscreen = fs; 0154 } 0155 0156 bool WindowArgs::isFullScreen() const 0157 { 0158 return d->fullscreen; 0159 } 0160 0161 void WindowArgs::setMenuBarVisible(bool visible) 0162 { 0163 d->menuBarVisible = visible; 0164 } 0165 0166 bool WindowArgs::isMenuBarVisible() const 0167 { 0168 return d->menuBarVisible; 0169 } 0170 0171 void WindowArgs::setToolBarsVisible(bool visible) 0172 { 0173 d->toolBarsVisible = visible; 0174 } 0175 0176 bool WindowArgs::toolBarsVisible() const 0177 { 0178 return d->toolBarsVisible; 0179 } 0180 0181 void WindowArgs::setStatusBarVisible(bool visible) 0182 { 0183 d->statusBarVisible = visible; 0184 } 0185 0186 bool WindowArgs::isStatusBarVisible() const 0187 { 0188 return d->statusBarVisible; 0189 } 0190 0191 void WindowArgs::setResizable(bool resizable) 0192 { 0193 d->resizable = resizable; 0194 } 0195 0196 bool WindowArgs::isResizable() const 0197 { 0198 return d->resizable; 0199 } 0200 0201 void WindowArgs::setLowerWindow(bool lower) 0202 { 0203 d->lowerWindow = lower; 0204 } 0205 0206 bool WindowArgs::lowerWindow() const 0207 { 0208 return d->lowerWindow; 0209 } 0210 0211 void WindowArgs::setScrollBarsVisible(bool visible) 0212 { 0213 d->scrollBarsVisible = visible; 0214 } 0215 0216 bool WindowArgs::scrollBarsVisible() const 0217 { 0218 return d->scrollBarsVisible; 0219 } 0220 0221 #endif