X-Git-Url: https://cloud.milkyroute.net/gitweb/dolphin.git/blobdiff_plain/b1d5b6b7467d15417131c8df8fdecb22b2008db4..56836b0e7a9d466db6412534f2bdb5ed546d0cb7:/src/dolphinsettings.cpp diff --git a/src/dolphinsettings.cpp b/src/dolphinsettings.cpp index 11c18914f..04284c22a 100644 --- a/src/dolphinsettings.cpp +++ b/src/dolphinsettings.cpp @@ -15,27 +15,20 @@ * You should have received a copy of the GNU General Public License * * along with this program; if not, write to the * * Free Software Foundation, Inc., * - * 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. * + * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA * ***************************************************************************/ #include "dolphinsettings.h" -#include -#include - -#include -#include -#include -#include +#include +#include #include #include -#include "generalsettings.h" -#include "iconsmodesettings.h" -#include "previewsmodesettings.h" -#include "detailsmodesettings.h" - -#include +#include "dolphin_columnmodesettings.h" +#include "dolphin_detailsmodesettings.h" +#include "dolphin_generalsettings.h" +#include "dolphin_iconsmodesettings.h" DolphinSettings& DolphinSettings::instance() { @@ -46,121 +39,21 @@ DolphinSettings& DolphinSettings::instance() return *instance; } -KBookmark DolphinSettings::bookmark(int index) const -{ - int i = 0; - KBookmarkGroup root = bookmarkManager()->root(); - KBookmark bookmark = root.first(); - while (!bookmark.isNull()) { - if (i == index) { - return bookmark; - } - ++i; - bookmark = root.next(bookmark); - } - - return KBookmark(); -} - -KBookmarkManager* DolphinSettings::bookmarkManager() const -{ - QString basePath = KGlobal::instance()->instanceName(); - basePath.append("/bookmarks.xml"); - const QString file = KStandardDirs::locateLocal("data", basePath); - - return KBookmarkManager::managerForFile(file, "dolphin", false); -} - void DolphinSettings::save() { m_generalSettings->writeConfig(); m_iconsModeSettings->writeConfig(); - m_previewsModeSettings->writeConfig(); m_detailsModeSettings->writeConfig(); - - QString basePath = KGlobal::instance()->instanceName(); - basePath.append("/bookmarks.xml"); - const QString file = KStandardDirs::locateLocal( "data", basePath); - - KBookmarkManager* manager = KBookmarkManager::managerForFile(file, "dolphin", false); - manager->save(false); -} - -void DolphinSettings::calculateGridSize(int hint) -{ - // TODO: remove in KDE4 - const int previewSize = m_iconsModeSettings->previewSize(); - const int iconSize = m_iconsModeSettings->iconSize(); - const int maxSize = (previewSize > iconSize) ? previewSize : iconSize; - const Q3IconView::Arrangement arrangement = (m_iconsModeSettings->arrangement() == "LeftToRight") ? - Q3IconView::LeftToRight : Q3IconView::TopToBottom; - - int gridWidth = 0; - int gridHeight = 0; - if (arrangement == Q3IconView::LeftToRight) { - int widthUnit = maxSize + (maxSize / 2); - if (widthUnit < K3Icon::SizeLarge) { - widthUnit = K3Icon::SizeLarge; - } - - gridWidth = widthUnit + hint * K3Icon::SizeLarge; - - gridHeight = iconSize; - if (gridHeight <= K3Icon::SizeMedium) { - gridHeight = gridHeight * 2; - } - else { - gridHeight += maxSize / 2; - } - } - else { - assert(arrangement == Q3IconView::TopToBottom); - gridWidth = maxSize + (hint + 1) * (8 * m_iconsModeSettings->fontSize()); - - // The height-setting is ignored yet by KFileIconView if the TopToBottom - // arrangement is active. Anyway write the setting to have a defined value. - gridHeight = maxSize; - } - - m_iconsModeSettings->setGridWidth(gridWidth); - m_iconsModeSettings->setGridHeight(gridHeight); -} - -int DolphinSettings::textWidthHint() const -{ - // TODO: remove in KDE4 - const int previewSize = m_iconsModeSettings->previewSize(); - const int iconSize = m_iconsModeSettings->iconSize(); - const Q3IconView::Arrangement arrangement = (m_iconsModeSettings->arrangement() == "LeftToRight") ? - Q3IconView::LeftToRight : Q3IconView::TopToBottom; - - const int gridWidth = m_iconsModeSettings->gridWidth(); - - const int maxSize = (previewSize > iconSize) ? previewSize : iconSize; - int hint = 0; - if (arrangement == Q3IconView::LeftToRight) { - int widthUnit = maxSize + (maxSize / 2); - if (widthUnit < K3Icon::SizeLarge) { - widthUnit = K3Icon::SizeLarge; - } - hint = (gridWidth - widthUnit) / K3Icon::SizeLarge; - } - else { - assert(arrangement == Q3IconView::TopToBottom); - hint = (gridWidth - maxSize) / (8 * m_iconsModeSettings->fontSize()) - 1; - if (hint > 2) { - hint = 2; - } - } - return hint; + m_columnModeSettings->writeConfig(); } DolphinSettings::DolphinSettings() { m_generalSettings = new GeneralSettings(); m_iconsModeSettings = new IconsModeSettings(); - m_previewsModeSettings = new PreviewsModeSettings(); m_detailsModeSettings = new DetailsModeSettings(); + m_columnModeSettings = new ColumnModeSettings(); + m_placesModel = new KFilePlacesModel(); } DolphinSettings::~DolphinSettings() @@ -171,9 +64,12 @@ DolphinSettings::~DolphinSettings() delete m_iconsModeSettings; m_iconsModeSettings = 0; - delete m_previewsModeSettings; - m_previewsModeSettings = 0; - delete m_detailsModeSettings; m_detailsModeSettings = 0; + + delete m_columnModeSettings; + m_columnModeSettings = 0; + + delete m_placesModel; + m_placesModel = 0; }