![]() |
OpenAlbum 1.0.b
|
00001 /* 00002 Copyright © 2011 Manuel Jesús de la Calle Brihuega 00003 00004 This file is part of Open Album. 00005 00006 Open Album is free software: you can redistribute it and/or modify 00007 it under the terms of the GNU General Public License as published by 00008 the Free Software Foundation, either version 3 of the License, or 00009 (at your option) any later version. 00010 00011 Open Album is distributed in the hope that it will be useful, 00012 but WITHOUT ANY WARRANTY; without even the implied warranty of 00013 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 00014 GNU General Public License for more details. 00015 00016 You should have received a copy of the GNU General Public License 00017 along with Open Album. If not, see <http://www.gnu.org/licenses/>. 00018 */ 00019 00020 #ifndef ALBUM_H 00021 #define ALBUM_H 00022 00023 00024 #include <string> 00025 #include "Portada.h" 00026 #include "Pagina.h" 00027 #include <QString> 00028 #include <QDateTime> 00029 #include <algorithm> 00030 #include "error.h" 00031 #include <QWidget> 00032 00034 00037 typedef struct{ 00038 QString nombre; 00039 QString ruta; 00040 QDateTime fecha; 00041 }ImagenInfo; 00042 00044 00066 class Album{ 00067 00068 public: 00069 00077 Album(QWidget *parent_); 00078 00085 ~Album(); 00086 00094 void OrdenarPersonalizado(std::vector<ImagenInfo> images); 00095 00101 void OrdenarAlfabeticamente(); 00102 00108 void OrdenarFechasCreciente(); 00109 00115 void OrdenarFechasDecreciente(); 00116 00126 void InsertarFoto(QString nom, QDateTime fech, QString rut); 00127 00133 void ResetImagenes(); 00134 00142 std::vector<ImagenInfo> GetVectorImagenes(); 00143 00153 ImagenInfo GetImagen(int i); 00154 00164 Pagina* GetPagina(unsigned i); 00165 00169 std::vector<Pagina*> paginas; 00170 00174 Portada *portada; 00175 00176 00177 private: 00178 00179 QWidget *parent; 00180 int tam_w; 00181 int tam_h; 00182 std::vector<ImagenInfo> imagenes; 00183 00184 }; 00185 00186 #endif