X-Git-Url: https://cloud.milkyroute.net/gitweb/dolphin.git/blobdiff_plain/b1d5b6b7467d15417131c8df8fdecb22b2008db4..d6488887ecf69d7f192b94de8dce34fae0b7eb76:/src/dolphinsettings.h diff --git a/src/dolphinsettings.h b/src/dolphinsettings.h index 2b97356a5..dc1b0a840 100644 --- a/src/dolphinsettings.h +++ b/src/dolphinsettings.h @@ -15,77 +15,59 @@ * 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 * ***************************************************************************/ #ifndef DOLPHINSETTINGS_H #define DOLPHINSETTINGS_H -class KBookmark; -class KBookmarkManager; +#include + +class ColumnModeSettings; +class DetailsModeSettings; class GeneralSettings; class IconsModeSettings; -class PreviewsModeSettings; -class DetailsModeSettings; +class KFilePlacesModel; /** * @brief Manages and stores all settings from Dolphin. * * The following properties are stored: - * - home Url + * - home URL * - default view mode - * - Url navigator state (editable or not) + * - URL navigator state (editable or not) * - split view - * - bookmarks - * - properties for icons and details view + * - properties for views */ -class DolphinSettings { +class LIBDOLPHINPRIVATE_EXPORT DolphinSettings +{ public: static DolphinSettings& instance(); - GeneralSettings* generalSettings() const { return m_generalSettings; } - IconsModeSettings* iconsModeSettings() const { return m_iconsModeSettings; } - PreviewsModeSettings* previewsModeSettings() const { return m_previewsModeSettings; } - DetailsModeSettings* detailsModeSettings() const { return m_detailsModeSettings; } - - KBookmarkManager* bookmarkManager() const; - - // TODO: should this really belong here or get moved to a derived KBookmarkManager? - // Dolphin uses some lists where an index is given and the corresponding bookmark - // should get retrieved... - KBookmark bookmark(int index) const; + GeneralSettings* generalSettings() const + { + return m_generalSettings; + } + IconsModeSettings* iconsModeSettings() const + { + return m_iconsModeSettings; + } + DetailsModeSettings* detailsModeSettings() const + { + return m_detailsModeSettings; + } + ColumnModeSettings* columnModeSettings() const + { + return m_columnModeSettings; + } + KFilePlacesModel* placesModel() const + { + return m_placesModel; + } /** @see DolphinSettingsBase::save */ virtual void save(); - /** - * TODO: just temporary until the port to KDE4 has been done - * - * Calculates the width and the height of the grid dependant from \a hint and - * the current settings. The hint gives information about the wanted text - * width, where a lower value indicates a smaller text width. Currently - * in Dolphin the values 0, 1 and 2 are used. See also - * DolhinIconsViewSettings::textWidthHint. - * - * The calculation of the grid width and grid height is a little bit tricky, - * as the user model does not fit to the implementation model of QIconView. The user model - * allows to specify icon-, preview- and text width sizes, whereas the implementation - * model expects only a grid width and height. The nasty thing is that the specified - * width and height varies dependant from the arrangement (e. g. the height is totally - * ignored for the top-to-bottom arrangement inside QIconView). - */ - void calculateGridSize(int hint); - - /** - * TODO: just temporary until the port to KDE4 has been done - * - * Returns the text width hint dependant from the given settings. - * A lower value indicates a smaller text width. Currently - * in Dolphin the values 0, 1 and 2 are used. The text width hint can - * be used later for DolphinIconsViewSettings::calculateGridSize(). - */ - int textWidthHint() const; - protected: DolphinSettings(); virtual ~DolphinSettings(); @@ -93,8 +75,9 @@ protected: private: GeneralSettings* m_generalSettings; IconsModeSettings* m_iconsModeSettings; - PreviewsModeSettings* m_previewsModeSettings; DetailsModeSettings* m_detailsModeSettings; + ColumnModeSettings* m_columnModeSettings; + KFilePlacesModel* m_placesModel; }; #endif