[prev in list] [next in list] [prev in thread] [next in thread]
List: kde-bugs-dist
Subject: [Bug 82446] PATCH: Adds 2 DCOP calls to background: wallpaperList
From: David Faure <faure () kde ! org>
Date: 2004-05-31 19:16:38
Message-ID: 20040531191638.13055.qmail () ktown ! kde ! org
[Download RAW message or body]
------- You are receiving this mail because: -------
You are on the CC list for the bug, or are watching someone who is.
http://bugs.kde.org/show_bug.cgi?id=82446
faure kde org changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|NEW |RESOLVED
Resolution| |FIXED
------- Additional Comments From faure kde org 2004-05-31 21:16 -------
CVS commit by faure:
Patch by Kurt V.Hidenburg to add DCOP calls to kdesktop's background: wallpaperList and wallpaperFiles
CCMAIL: 82446-done bugs kde org
M +14 -0 kcontrol/background/bgsettings.cpp 1.15
M +2 -1 kcontrol/background/bgsettings.h 1.27
M +10 -0 kdesktop/KBackgroundIface.h 1.12
M +28 -10 kdesktop/bgmanager.cc 1.88
M +3 -0 kdesktop/bgmanager.h 1.31
--- kdebase/kcontrol/background/bgsettings.cpp #1.14:1.15
@ -870,4 +870,18 @ void KBackgroundSettings::updateWallpape
+QStringList KBackgroundSettings::wallpaperList() const
+{
+ if ( m_WallpaperMode == NoWallpaper )
+ return QStringList();
+ return m_WallpaperList;
+}
+
+QStringList KBackgroundSettings::wallpaperFiles() const
+{
+ if ( m_WallpaperMode == NoWallpaper )
+ return QStringList();
+ return m_WallpaperFiles;
+}
+
/*
* Select a new wallpaper from the list.
--- kdebase/kcontrol/background/bgsettings.h #1.26:1.27
@ -201,5 +201,6 @ public:
void setWallpaperList(QStringList);
- QStringList wallpaperList() const { return m_WallpaperList; }
+ QStringList wallpaperList() const;
+ QStringList wallpaperFiles() const;
void setWallpaperChangeInterval(int);
--- kdebase/kdesktop/KBackgroundIface.h #1.11:1.12
@ -55,4 +55,14 @ k_dcop:
*/
virtual QString currentWallpaper( int desk ) = 0;
+
+ /** Return the wallpaper list for specified desk.
+ * param desk desktop number, or 0 for the current visible desktop.
+ */
+ virtual QStringList wallpaperList(int desk) = 0;
+
+ /** Return the wallpaper files for specified desk.
+ * param desk desktop number, or 0 for the current visible desktop.
+ */
+ virtual QStringList wallpaperFiles(int desk) = 0;
};
--- kdebase/kdesktop/bgmanager.cc #1.87:1.88
@ -565,4 +565,12 @ void KBackgroundManager::slotTimeout()
}
+// Return a valid desk number.
+int KBackgroundManager::validateDesk(int desk)
+{
+ if ( (desk <= 0) || (desk > (int)m_Renderer.size()) )
+ return realDesktop();
+
+ return desk - 1;
+}
// DCOP exported
@ -571,14 +579,5 @ void KBackgroundManager::slotTimeout()
QString KBackgroundManager::currentWallpaper(int desk)
{
- // Check user-input
- if ( (desk < 0) || (desk > (int)m_Renderer.size()) )
- desk = 0;
-
- if (desk == 0)
- desk = realDesktop();
- else
- desk--;
-
- KBackgroundRenderer *r = m_Renderer[desk];
+ KBackgroundRenderer *r = m_Renderer[validateDesk(desk)];
return r->currentWallpaper();
@ -633,4 +632,23 @ void KBackgroundManager::setWallpaper(QS
}
+// DCOP exported
+// Returns the filenames of all wallpaper entries for specified desk
+// 0 is for current visible desktop.
+QStringList KBackgroundManager::wallpaperFiles(int desk)
+{
+ KBackgroundRenderer *r = m_Renderer[validateDesk(desk)];
+
+ return r->wallpaperFiles();
+}
+
+// DCOP exported
+// Returns the list of wallpaper entries (viewable in background slide
+// show window) for specified desk. 0 is for current visible desktop.
+QStringList KBackgroundManager::wallpaperList(int desk)
+{
+ KBackgroundRenderer *r = m_Renderer[validateDesk(desk)];
+
+ return r->wallpaperList();
+}
// DCOP exported
--- kdebase/kdesktop/bgmanager.h #1.30:1.31
@ -68,4 +68,6 @ public:
void setColor(const QColor & c, bool isColorA = true);
void setBackgroundEnabled(const bool enable);
+ QStringList wallpaperList(int desk);
+ QStringList wallpaperFiles(int desk);
signals:
@ -87,4 +89,5 @ private:
int realDesktop();
int effectiveDesktop();
+ int validateDesk(int desk);
void renderBackground(int desk);
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic