AlbumShaper  1.0a3
Public Member Functions | Static Public Member Functions | Private Slots | Private Attributes | List of all members
LoadingSavingWidget Class Reference

Loading/Saving Settings. More...

#include <loadingSavingWidget.h>

Inheritance diagram for LoadingSavingWidget:
Inheritance graph
[legend]
Collaboration diagram for LoadingSavingWidget:
Collaboration graph
[legend]

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. More...
 
Q3GridLayout * mainGrid
 
QLabelcategoryLabel
 
Q3FramehorizontalLine
 
Q3FramedefaultToThisThemeFrame
 
Q3GridLayout * defaultToThisThemeGrid
 
QLabeldefaultToThisThemeOnNew
 
QComboBox * defaultToThisTheme
 
Q3FrametempImageDirectoryFrame
 Temporary Image directory. More...
 
Q3GridLayout * tempImageDirectoryGrid
 
QLabeltempImageDirectory
 
QLineEdit * tempImageDirectoryVal
 
QPushButton * browseButton
 
QCheckBox * checkPhotoMods
 Check for photo modifications on load. More...
 

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.

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

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 }
Q3Frame * tempImageDirectoryFrame
Temporary Image directory.
Q3GridLayout * defaultToThisThemeGrid
QPushButton * browseButton
Configuration * config
Backend config object pointer.
Q3GridLayout * tempImageDirectoryGrid
QCheckBox * checkPhotoMods
Check for photo modifications on load.
QString IMAGE_PATH
Definition: config.cpp:18
QLineEdit * tempImageDirectoryVal
#define WIDGET_SPACING
Definition: config.h:31
QString THEMES_PATH
Definition: config.cpp:21
QComboBox * defaultToThisTheme

Member Function Documentation

§ browse

void LoadingSavingWidget::browse ( )
privateslot

Definition at line 115 of file loadingSavingWidget.cpp.

References tempImageDirectoryVal.

Referenced by LoadingSavingWidget().

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

§ loadSettings()

void LoadingSavingWidget::loadSettings ( )

Definition at line 162 of file loadingSavingWidget.cpp.

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

Referenced by ConfigurationWidget::ConfigurationWidget().

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 }
Configuration * config
Backend config object pointer.
QString getString(QString group, QString key)
Fetch string setting.
bool getBool(QString group, QString key)
Fetch bool setting.
QCheckBox * checkPhotoMods
Check for photo modifications on load.
QLineEdit * tempImageDirectoryVal
QComboBox * defaultToThisTheme

§ saveSettings()

void LoadingSavingWidget::saveSettings ( )

Definition at line 185 of file loadingSavingWidget.cpp.

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

Referenced by ConfigurationWidget::saveSettings().

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 }
Configuration * config
Backend config object pointer.
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...
void setBool(QString group, QString key, bool val)
Set bool setting.
QCheckBox * checkPhotoMods
Check for photo modifications on load.
QLineEdit * tempImageDirectoryVal
QComboBox * defaultToThisTheme

§ setDefaults()

void LoadingSavingWidget::setDefaults ( Configuration config)
static

Definition at line 123 of file loadingSavingWidget.cpp.

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

Referenced by Window::Window().

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 }
QString TEMP_DIR
Definition: config.cpp:23
void setInt(QString group, QString key, int val)
Set int setting.
QString getString(QString group, QString key)
Fetch string 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...
void setBool(QString group, QString key, bool val)
Set bool setting.

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(), and saveSettings().

§ 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: