BiblioteQ

biblioteq_photographcollection.h
1 /*
2 ** Copyright (c) 2006 - present, Alexis Megas.
3 ** All rights reserved.
4 **
5 ** Redistribution and use in source and binary forms, with or without
6 ** modification, are permitted provided that the following conditions
7 ** are met:
8 ** 1. Redistributions of source code must retain the above copyright
9 ** notice, this list of conditions and the following disclaimer.
10 ** 2. Redistributions in binary form must reproduce the above copyright
11 ** notice, this list of conditions and the following disclaimer in the
12 ** documentation and/or other materials provided with the distribution.
13 ** 3. The name of the author may not be used to endorse or promote products
14 ** derived from BiblioteQ without specific prior written permission.
15 **
16 ** BIBLIOTEQ IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
17 ** IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
18 ** OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
19 ** IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
20 ** INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
21 ** NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
22 ** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
23 ** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
24 ** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
25 ** BIBLIOTEQ, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
26 */
27
28 #ifndef _BIBLIOTEQ_PHOTOGRAPHCOLLECTION_H_
29 #define _BIBLIOTEQ_PHOTOGRAPHCOLLECTION_H_
30
31 #include "biblioteq_item.h"
32 #include "ui_biblioteq_photograph.h"
33 #include "ui_biblioteq_photographinfo.h"
34
35 class biblioteq_bgraphicsscene;
36
37 class biblioteq_photographcollection: public QMainWindow, public biblioteq_item
38 {
39 Q_OBJECT
40
41 public:
42 biblioteq_photographcollection(biblioteq *parentArg,
43 const QString &oidArg,
44 const QModelIndex &index);
45 ~biblioteq_photographcollection();
46 void duplicate(const QString &p_oid, const int state);
47 void insert(void);
48 void modify(const int state, const QString &behavior = "");
49 void search(const QString &field = "", const QString &value = "");
50
51 void setPublicationDateFormat(const QString &dateFormat)
52 {
53 pc.publication_date->setDisplayFormat(dateFormat);
54 }
55
56 void updateWindow(const int state);
57
58 private:
59 QDialog *m_photo_diag;
60 QString m_engWindowTitle;
61 QString m_itemOid;
62 Ui_pcDialog pc;
63 Ui_photographDialog photo;
64 biblioteq_bgraphicsscene *m_scene;
65 bool verifyItemFields(void);
66 int photographsPerPage(void);
67 void changeEvent(QEvent *event);
68 void closeEvent(QCloseEvent *event);
69 void loadPhotographFromItem(QGraphicsScene *scene,
70 QGraphicsPixmapItem *item,
71 const int percent);
72 void loadPhotographFromItemInNewWindow(QGraphicsPixmapItem *item);
73 void setSceneRect(const qint64 size);
74 void showPhotographs(const int page);
75 void storeData(void);
76 void updateTablePhotographCount(const qint64 count);
77
78 private slots:
79 void slotAddItem(void);
80 void slotCancel(void);
81 void slotClosePhoto(void);
82 void slotDeleteItem(void);
83 void slotExportItem(void);
84 void slotExportPhotographs(void);
85 void slotGo(void);
86 void slotImageViewSizeChanged(int index);
87 void slotImportItems(void);
88 void slotInsertItem(void);
89 void slotModifyItem(void);
90 void slotPageChanged(int index);
91 void slotPrint(void);
92 void slotQuery(void);
93 void slotReset(void);
94 void slotSaveRotatedImage(const QImage &image,
95 const QString &format,
96 const qint64 oid);
97 void slotSceneSelectionChanged(void);
98 void slotSelectAll(void);
99 void slotSelectImage(void);
100 void slotUpdateItem(void);
101 void slotViewContextMenu(const QPoint &pos);
102 void slotViewNextPhotograph(void);
103 void slotViewPhotograph(void);
104 void slotViewPreviousPhotograph(void);
105 };
106
107 #endif
biblioteq_bgraphicsscene
Definition: biblioteq_bgraphicsscene.h:34
biblioteq_item
Definition: biblioteq_item.h:72
biblioteq_photographcollection
Definition: biblioteq_photographcollection.h:38
biblioteq
Definition: biblioteq.h:274