AlbumShaper 1.0a3
LoadingSavingWidget Class Reference

Loading/Saving Settings. More...

#include <loadingSavingWidget.h>

Inheritance diagram for LoadingSavingWidget:
Collaboration diagram for LoadingSavingWidget:

Public Member Functions

 LoadingSavingWidget (Configuration *config, QWidget *parent=0, const char *name=0)
 
void loadSettings ()
 
void saveSettings ()
 

Static Public Member Functions

static void setDefaults (Configuration *config)
 

Private Slots

void browse ()
 

Private Attributes

Configurationconfig
 Backend config object pointer.
 
Q3GridLayout * mainGrid
 
QLabelcategoryLabel
 
Q3FramehorizontalLine
 
Q3FramedefaultToThisThemeFrame
 
Q3GridLayout * defaultToThisThemeGrid
 
QLabeldefaultToThisThemeOnNew
 
QComboBox * defaultToThisTheme
 
Q3FrametempImageDirectoryFrame
 Temporary Image directory.
 
Q3GridLayout * tempImageDirectoryGrid
 
QLabeltempImageDirectory
 
QLineEdit * tempImageDirectoryVal
 
QPushButton * browseButton
 
QCheckBox * checkPhotoMods
 Check for photo modifications on load.
 

Detailed Description

Loading/Saving Settings.

Definition at line 38 of file loadingSavingWidget.h.

Constructor & Destructor Documentation

◆ LoadingSavingWidget()

LoadingSavingWidget::LoadingSavingWidget ( Configuration * config,
QWidget * parent = 0,
const char * name = 0 )

Definition at line 42 of file loadingSavingWidget.cpp.

44 : QWidget( parent, name)
45{
46 this->config = config;
47
48 categoryLabel = new QLabel( tr("Loading + Saving:"), this);
49 QFont labelFont = categoryLabel->font();
50 labelFont.setWeight(QFont::Bold);
51 categoryLabel->setFont( labelFont );
52
53 horizontalLine = new Q3Frame(this);
54 horizontalLine->setLineWidth(2);
55 horizontalLine->setMidLineWidth(1);
56 horizontalLine->setFrameStyle( Q3Frame::HLine | Q3Frame::Raised );
57 //----------------
58 //Default new album theme
59 defaultToThisThemeFrame = new Q3Frame( this );
60 defaultToThisThemeOnNew = new QLabel( tr("Default new album theme:"), defaultToThisThemeFrame);
62
63 defaultToThisTheme->insertItem( tr("Last Used") );
64 QDir localDir( THEMES_PATH );
65 QStringList list = localDir.entryList( QDir::Dirs );
66 QStringList::Iterator file;
67 for ( file = list.begin(); file != list.end(); ++file )
68 {
69 if(localDir.exists( QString(*file) + "/theme.xsl" ))
70 defaultToThisTheme->insertItem( *file );
71 }
72
73 defaultToThisThemeGrid = new Q3GridLayout(defaultToThisThemeFrame, 1, 4, 0);
75 defaultToThisThemeGrid->setColSpacing(1, 8);
77 defaultToThisThemeGrid->setColSpacing(3, 8);
78 defaultToThisThemeGrid->setColStretch(3, 1);
79 //----------------
80 //Temp directory
81 tempImageDirectoryFrame = new Q3Frame( this );
82 tempImageDirectory = new QLabel( tr("Temporary image directory:"), tempImageDirectoryFrame);
84 tempImageDirectoryVal->setText( "/home" );
85 browseButton = new QPushButton( tempImageDirectoryFrame );
86 browseButton->setPixmap( QPixmap(QString(IMAGE_PATH)+"buttonIcons/browse.png") );
87 browseButton->setSizePolicy( QSizePolicy::Maximum, QSizePolicy::Maximum );
88 QToolTip::add( browseButton, tr("Browse to temporary image directory") );
89 connect( browseButton, SIGNAL(clicked()), SLOT(browse()) );
90
91 tempImageDirectoryGrid = new Q3GridLayout(tempImageDirectoryFrame, 1, 5, 0);
93 tempImageDirectoryGrid->setColSpacing(1, 8);
95 tempImageDirectoryGrid->setColStretch(2, 1);
96 tempImageDirectoryGrid->setColSpacing(3, 8);
97 tempImageDirectoryGrid->addWidget(browseButton, 0, 4);
98 //----------------
99 //Check photo mods since last load?
100 checkPhotoMods = new QCheckBox( tr("Check for photo modifications"), this );
101 //----------------
102 //Setup larger boxes in overall grid
103 mainGrid = new Q3GridLayout( this, 6, 1, 0);
104 mainGrid->setSpacing( WIDGET_SPACING );
105
106 mainGrid->addWidget( categoryLabel, 0, 0, Qt::AlignLeft );
107 mainGrid->addWidget( horizontalLine, 1, 0 );
108 mainGrid->addWidget( defaultToThisThemeFrame, 2, 0 );
109 mainGrid->addWidget( tempImageDirectoryFrame, 3, 0 );
110 mainGrid->addWidget( checkPhotoMods, 4, 0 );
111 mainGrid->setRowStretch( 5, 1 );
112 //----------------
113}
QCheckBox * checkPhotoMods
Check for photo modifications on load.
Q3Frame * tempImageDirectoryFrame
Temporary Image directory.
Q3GridLayout * tempImageDirectoryGrid
Q3GridLayout * defaultToThisThemeGrid
QLineEdit * tempImageDirectoryVal
Configuration * config
Backend config object pointer.
QString IMAGE_PATH
Definition config.cpp:18
QString THEMES_PATH
Definition config.cpp:21
#define WIDGET_SPACING
Definition config.h:31

References browse(), browseButton, categoryLabel, checkPhotoMods, config, defaultToThisTheme, defaultToThisThemeFrame, defaultToThisThemeGrid, defaultToThisThemeOnNew, horizontalLine, IMAGE_PATH, mainGrid, tempImageDirectory, tempImageDirectoryFrame, tempImageDirectoryGrid, tempImageDirectoryVal, THEMES_PATH, and WIDGET_SPACING.

Member Function Documentation

◆ browse

void LoadingSavingWidget::browse ( )
privateslot

Definition at line 115 of file loadingSavingWidget.cpp.

116{
117 QString dirName = Q3FileDialog::getExistingDirectory( tempImageDirectoryVal->text(),
118 this, NULL, "Temporary Image Directory");
119 if(!dirName.isNull())
120 tempImageDirectoryVal->setText( dirName );
121}

References tempImageDirectoryVal.

Referenced by LoadingSavingWidget().

◆ loadSettings()

void LoadingSavingWidget::loadSettings ( )

Definition at line 162 of file loadingSavingWidget.cpp.

163{
164 checkPhotoMods->setChecked( ! config->getBool( "loadSave", "disableCheckPhotoMods" ));
165 tempImageDirectoryVal->setText( config->getString( "loadSave", "tempImageDirectory" ) );
166 tempImageDirectoryVal->setCursorPosition(0);
167
168 int i;
169 bool defaultTFound = false;
170 QString defaultT = config->getString( "loadSave", "defaultTheme" );
171 for(i=1; i<defaultToThisTheme->count(); i++)
172 {
173 defaultToThisTheme->setCurrentItem(i);
174 if(defaultToThisTheme->currentText().compare( defaultT ) == 0)
175 {
176 defaultTFound = true;
177 break;
178 }
179 }
180
181 if(!defaultTFound)
182 defaultToThisTheme->setCurrentItem(0);
183}
bool getBool(QString group, QString key)
Fetch bool setting.
QString getString(QString group, QString key)
Fetch string setting.

References checkPhotoMods, config, defaultToThisTheme, Configuration::getBool(), Configuration::getString(), and tempImageDirectoryVal.

Referenced by ConfigurationWidget::ConfigurationWidget().

◆ saveSettings()

void LoadingSavingWidget::saveSettings ( )

Definition at line 185 of file loadingSavingWidget.cpp.

186{
187 config->setBool( "loadSave", "disableCheckPhotoMods", !checkPhotoMods->isChecked() );
188 config->setString( "loadSave", "tempImageDirectory",
189 QDir::convertSeparators( QDir::cleanDirPath( tempImageDirectoryVal->text() ) ) );
190 config->setString( "loadSave", "defaultTheme", defaultToThisTheme->currentText() );
191}
void setBool(QString group, QString key, bool val)
Set bool setting.
void setString(QString group, QString key, QString value)
Sets a setting value, if group does not exist it is created, if setting does not exist it is also cre...

References checkPhotoMods, config, defaultToThisTheme, Configuration::setBool(), Configuration::setString(), and tempImageDirectoryVal.

Referenced by ConfigurationWidget::saveSettings().

◆ setDefaults()

void LoadingSavingWidget::setDefaults ( Configuration * config)
static

Definition at line 123 of file loadingSavingWidget.cpp.

124{
125 config->setBool( "loadSave", "disableCheckPhotoMods", true );
126 config->setString( "loadSave", "defaultTheme", "Last Used" );
127 config->setString( "loadSave", "lastUsedTheme", "Slick" );
128 //-------
129 //set default loading/saving albums, add photo, and temp image directories
130 config->setString( "loadSave", "tempImageDirectory", TEMP_DIR );
131
132 //PLATFORM_SPECIFIC_CODE
133
134 //Mac OS X
135 #if defined(Q_OS_MACX)
136 config->setString( "loadSave", "loadSaveDir", QDir::homeDirPath() + QString("/Pictures") );
137
138 //Windows
139 #elif defined(Q_OS_WIN)
140 config->setString( "loadSave", "loadSaveDir",
141 QDir::convertSeparators( getenv("USERPROFILE") +
142 QString("/My Documents/My Pictures") ));
143
144 //Unix/Linux/BSD
145 #else
146 config->setString( "loadSave", "loadSaveDir", QDir::homeDirPath() );
147 #endif
148
149 config->setString( "loadSave", "addPhotoDir", config->getString( "loadSave", "loadSaveDir") );
150 //-------
151 config->setBool( "loadSave", "useDefaultImageSizes", true );
152 config->setInt( "loadSave", "thumbWidth", 200 );
153 config->setInt( "loadSave", "thumbHeight", 150 );
154 config->setInt( "loadSave", "slideshowWidth", 600 );
155 config->setInt( "loadSave", "slideshowHeight", 400 );
156 config->setInt( "loadSave", "albumWidth", 500 );
157 config->setInt( "loadSave", "albumHeight", 320 );
158 config->setInt( "loadSave", "subalbumWidth", 200 );
159 config->setInt( "loadSave", "subalbumHeight", 150 );
160}
void setInt(QString group, QString key, int val)
Set int setting.
QString TEMP_DIR
Definition config.cpp:23

References config, Configuration::getString(), Configuration::setBool(), Configuration::setInt(), Configuration::setString(), and TEMP_DIR.

Referenced by Window::Window().

Member Data Documentation

◆ browseButton

QPushButton* LoadingSavingWidget::browseButton
private

Definition at line 72 of file loadingSavingWidget.h.

Referenced by LoadingSavingWidget().

◆ categoryLabel

QLabel* LoadingSavingWidget::categoryLabel
private

Definition at line 58 of file loadingSavingWidget.h.

Referenced by LoadingSavingWidget().

◆ checkPhotoMods

QCheckBox* LoadingSavingWidget::checkPhotoMods
private

Check for photo modifications on load.

Definition at line 75 of file loadingSavingWidget.h.

Referenced by LoadingSavingWidget(), loadSettings(), and saveSettings().

◆ config

Configuration* LoadingSavingWidget::config
private

Backend config object pointer.

Definition at line 53 of file loadingSavingWidget.h.

Referenced by LoadingSavingWidget(), loadSettings(), saveSettings(), and setDefaults().

◆ defaultToThisTheme

QComboBox* LoadingSavingWidget::defaultToThisTheme
private

Definition at line 65 of file loadingSavingWidget.h.

Referenced by LoadingSavingWidget(), loadSettings(), and saveSettings().

◆ defaultToThisThemeFrame

Q3Frame* LoadingSavingWidget::defaultToThisThemeFrame
private

Definition at line 62 of file loadingSavingWidget.h.

Referenced by LoadingSavingWidget().

◆ defaultToThisThemeGrid

Q3GridLayout* LoadingSavingWidget::defaultToThisThemeGrid
private

Definition at line 63 of file loadingSavingWidget.h.

Referenced by LoadingSavingWidget().

◆ defaultToThisThemeOnNew

QLabel* LoadingSavingWidget::defaultToThisThemeOnNew
private

Definition at line 64 of file loadingSavingWidget.h.

Referenced by LoadingSavingWidget().

◆ horizontalLine

Q3Frame* LoadingSavingWidget::horizontalLine
private

Definition at line 59 of file loadingSavingWidget.h.

Referenced by LoadingSavingWidget().

◆ mainGrid

Q3GridLayout* LoadingSavingWidget::mainGrid
private

Definition at line 55 of file loadingSavingWidget.h.

Referenced by LoadingSavingWidget().

◆ tempImageDirectory

QLabel* LoadingSavingWidget::tempImageDirectory
private

Definition at line 70 of file loadingSavingWidget.h.

Referenced by LoadingSavingWidget().

◆ tempImageDirectoryFrame

Q3Frame* LoadingSavingWidget::tempImageDirectoryFrame
private

Temporary Image directory.

Definition at line 68 of file loadingSavingWidget.h.

Referenced by LoadingSavingWidget().

◆ tempImageDirectoryGrid

Q3GridLayout* LoadingSavingWidget::tempImageDirectoryGrid
private

Definition at line 69 of file loadingSavingWidget.h.

Referenced by LoadingSavingWidget().

◆ tempImageDirectoryVal

QLineEdit* LoadingSavingWidget::tempImageDirectoryVal
private

Definition at line 71 of file loadingSavingWidget.h.

Referenced by browse(), LoadingSavingWidget(), loadSettings(), and saveSettings().


The documentation for this class was generated from the following files: