File indexing completed on 2024-04-28 15:29:24

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