File indexing completed on 2024-05-05 04:34:55
0001 /* This file is part of Spectacle, the KDE screenshot utility 0002 * SPDX-FileCopyrightText: 2015 Boudhayan Gupta <bgupta@kde.org> 0003 * SPDX-License-Identifier: LGPL-2.0-or-later 0004 */ 0005 0006 #include "SpectacleDBusAdapter.h" 0007 #include "Platforms/ImagePlatform.h" 0008 #include "settings.h" 0009 0010 SpectacleDBusAdapter::SpectacleDBusAdapter(SpectacleCore *parent) 0011 : QDBusAbstractAdaptor(parent) 0012 { 0013 setAutoRelaySignals(false); 0014 } 0015 0016 inline SpectacleCore *SpectacleDBusAdapter::parent() const 0017 { 0018 return static_cast<SpectacleCore *>(QObject::parent()); 0019 } 0020 0021 void SpectacleDBusAdapter::FullScreen(int includeMousePointer) 0022 { 0023 parent()->takeNewScreenshot(CaptureModeModel::AllScreens, 0, (includeMousePointer == -1) ? Settings::includePointer() : includeMousePointer, true); 0024 } 0025 0026 void SpectacleDBusAdapter::CurrentScreen(int includeMousePointer) 0027 { 0028 parent()->takeNewScreenshot(CaptureModeModel::CurrentScreen, 0, (includeMousePointer == -1) ? Settings::includePointer() : includeMousePointer, true); 0029 } 0030 0031 void SpectacleDBusAdapter::ActiveWindow(int includeWindowDecorations, int includeMousePointer, int includeWindowShadow) 0032 { 0033 parent()->takeNewScreenshot(CaptureModeModel::ActiveWindow, 0034 0, 0035 (includeMousePointer == -1) ? Settings::includePointer() : includeMousePointer, 0036 includeWindowDecorations == -1 ? Settings::includeDecorations() : includeWindowDecorations, 0037 includeWindowShadow == -1 ? Settings::includeShadow() : includeWindowShadow); 0038 } 0039 0040 void SpectacleDBusAdapter::WindowUnderCursor(int includeWindowDecorations, int includeMousePointer, int includeWindowShadow) 0041 { 0042 parent()->takeNewScreenshot(CaptureModeModel::WindowUnderCursor, 0043 0, 0044 (includeMousePointer == -1) ? Settings::includePointer() : includeMousePointer, 0045 includeWindowDecorations == -1 ? Settings::includeDecorations() : includeWindowDecorations, 0046 includeWindowShadow == -1 ? Settings::includeShadow() : includeWindowShadow); 0047 } 0048 0049 void SpectacleDBusAdapter::RectangularRegion(int includeMousePointer) 0050 { 0051 parent()->takeNewScreenshot(CaptureModeModel::RectangularRegion, 0052 0, 0053 (includeMousePointer == -1) ? Settings::includePointer() : includeMousePointer, 0054 false); 0055 } 0056 0057 void SpectacleDBusAdapter::RecordRegion(int includeMousePointer) 0058 { 0059 parent()->startRecording(VideoPlatform::Region, includeMousePointer == -1 ? Settings::videoIncludePointer() : includeMousePointer); 0060 } 0061 0062 void SpectacleDBusAdapter::RecordScreen(int includeMousePointer) 0063 { 0064 parent()->startRecording(VideoPlatform::Screen, includeMousePointer == -1 ? Settings::videoIncludePointer() : includeMousePointer); 0065 } 0066 0067 void SpectacleDBusAdapter::RecordWindow(int includeMousePointer) 0068 { 0069 parent()->startRecording(VideoPlatform::Window, includeMousePointer == -1 ? Settings::videoIncludePointer() : includeMousePointer); 0070 } 0071 0072 void SpectacleDBusAdapter::OpenWithoutScreenshot() 0073 { 0074 parent()->initGuiNoScreenshot(); 0075 } 0076 0077 #include "moc_SpectacleDBusAdapter.cpp"