306 Commits

Author SHA1 Message Date
Florian Geyer
222abe09d9 Make save order for deleted objects consistent. 2012-04-22 19:59:50 +02:00
Felix Geyer
ef26065a99 Update LocationChanged time when entries and groups are moved.
Closes #3
2012-04-22 12:10:21 +02:00
Felix Geyer
cc426d2453 Add missing check for group database. 2012-04-22 00:58:35 +02:00
Felix Geyer
0bcce7ce7f Remove some unnecessary initializations. 2012-04-22 00:38:21 +02:00
Felix Geyer
411617cc8b Add convenience function Database::addDeletedObject(const Uuid&).
Drop Group::addDeletedObject() and make Entry call the Database function
instead.
2012-04-22 00:29:39 +02:00
Florian Geyer
5dc21a191b Clean up group deletion. 2012-04-22 00:11:17 +02:00
Florian Geyer
8467e7756d Add ability to delete groups via gui. 2012-04-22 00:11:17 +02:00
Felix Geyer
19bacd6737 Use QPointer for Entry::m_lastTopVisibleEntry.
Closes #14
2012-04-22 00:10:04 +02:00
Felix Geyer
a3e7c93b59 Store group references in Metadata as QPointer.
QPointer sets itself to 0 when the referenced object has been deleted.

Refs #14
2012-04-22 00:07:27 +02:00
Felix Geyer
19a5aad90a Declare the TypeInfo for some classes/structs.
Qt's container classes benefit from this information.
2012-04-21 18:39:09 +02:00
Florian Geyer
258af265c7 Save reference to deleted entries in deletedObject list. 2012-04-21 17:28:44 +02:00
Florian Geyer
1fc5f7a69f Add database settings widget and ability to change transform rounds count. 2012-04-21 17:28:44 +02:00
Felix Geyer
8acd6f74d8 Support KeePass format 3.00 (used by KeePass2 >= 2.15).
Closes #6

Attachments are now stored in a pool under Metadata instead of in entries.
The protected flag of attachments isn't supported anymore.
New metadata attributes: color, historyMaxItems and historyMaxSize.
Dropped metadata attribute: autoEnableVisualHiding.
2012-04-21 16:45:46 +02:00
Florian Geyer
f8e2c95162 Add hasChild function to check for a child in a QObject tree. 2012-04-19 01:02:23 +02:00
Felix Geyer
246bc0115e More coding style fixes. 2012-04-19 00:25:57 +02:00
Felix Geyer
3d1fc6cd6d Set the group of the entry in Database::recycleEntry().
Drop Metadata::addEntryToRecycleBin() and add a non-const
Metadata::recycleBin() getter instead.
2012-04-18 23:27:14 +02:00
Florian Geyer
8735a4846c Move deleted entries to recycle bin if enabled. 2012-04-18 23:09:00 +02:00
Felix Geyer
2e011d5362 Improve code style. 2012-04-18 22:08:22 +02:00
Felix Geyer
cfe5b48bfd Handle Group::setIcon() manually instead of calling set().
That way we don't emit modified() in between setting the attributes.
2012-04-18 17:14:51 +02:00
Felix Geyer
ca5dd373ed Only disconnect m_db when it exists.
Previously we disconnected everyone when m_db == 0.
2012-04-18 17:07:40 +02:00
Florian Geyer
84d9d2ec47 Update timeinfo of group only when properties of the group itself change. 2012-04-18 17:03:58 +02:00
Florian Geyer
34204f3281 Disconnect entry from database, when removed. 2012-04-18 17:03:58 +02:00
Florian Geyer
d85e5d7560 Update connection of modified signals of entries when a parent group changes database. 2012-04-18 17:03:58 +02:00
Florian Geyer
d73cbafb8e Add slot to update the timeinfo of a group and connect it on modified signal.
Connect modified signal of entries directly to database, so timeinfo of group is not updated.
2012-04-18 17:03:58 +02:00
Florian Geyer
fc8f1231c6 Fix expiry time and bool not being updated. 2012-04-18 17:03:58 +02:00
Florian Geyer
46bbabbe3c Use UTC time spec. 2012-04-18 17:03:57 +02:00
Florian Geyer
ad865774d1 Add slot to update the timeinfo of an entry and connect it on modified signal. 2012-04-18 17:03:57 +02:00
Florian Geyer
eb4f82a7ed Add hasKey property to database and also make it accessible via the DatabaseWidget. 2012-04-18 17:03:57 +02:00
Felix Geyer
a5ac1f2e80 Call m_group->database() instead of keeping a reference to Database in Entries.
Previously we didn't update m_db when the database of the group changed.
2012-04-18 13:57:57 +02:00
Felix Geyer
38585663e1 Don't modify the protected status of default attributes.
They are handled by Metadata::protect*.
2012-04-14 19:41:56 +02:00
Felix Geyer
3d7479c67b Change EntryAttributes::copyFrom() to copyCustomKeysFrom().
That way we don't overwrite the default entries in EditEntryWidget::saveEntry().
2012-04-14 19:38:45 +02:00
Felix Geyer
51854a7a45 Only emit signals from clear() when the internal data is non-empty.
Also make sure that m_attributes always contains the default attributes.
2012-04-14 18:47:40 +02:00
Felix Geyer
d4a94a8996 Move attributes and attachments handking from Entry into own classes. 2012-04-14 15:38:20 +02:00
Felix Geyer
4334824e85 Emit modified() after all icon attributes have been set in Entry::setIcon(). 2012-04-11 22:05:24 +02:00
Florian Geyer
674909f635 Add modified signals for entries. 2012-04-11 21:50:20 +02:00
Florian Geyer
8b62365f8e Add modified signals for groups. 2012-04-11 21:50:20 +02:00
Florian Geyer
c80be1dd84 Add modified signals for metadata. 2012-04-11 21:50:20 +02:00
Florian Geyer
1d23ed46e5 Add modified signal for database. 2012-04-11 20:01:36 +02:00
Felix Geyer
08c8afc8f0 Add a Tools class with a humanReadableFileSize() method. 2012-04-09 23:53:46 +02:00
Felix Geyer
9aaec3499d Add signals for attribute and attachment changes. 2012-04-09 23:52:06 +02:00
Felix Geyer
57a953476a Use QMap to store attributes and attachments.
QMap keeps the keys in a consistent order (sorted).
2012-04-09 22:20:11 +02:00
Felix Geyer
d527e63f1f Change the Entry attributes/attachment API to provide a stable key order. 2012-04-06 19:33:29 +02:00
Felix Geyer
a8a6439ba0 Fix typo. 2012-01-07 17:18:48 +01:00
Felix Geyer
f39dfa1c88 Honor protect parameter when overwriting an attribute/attachment. 2012-01-07 16:23:20 +01:00
Felix Geyer
e397080d79 Rename addAttribute() to setAttribute() and addAttachment() to setAttachment(). 2012-01-07 16:22:11 +01:00
Felix Geyer
fea148803c Rename getPath() -> path(). 2012-01-06 15:49:52 +01:00
Felix Geyer
bda22394f5 Add a dataPath() generater function instead of using static DataPath methods. 2012-01-05 22:36:06 +01:00
Felix Geyer
5db102d668 Compress svg icon. 2012-01-05 22:33:05 +01:00
Felix Geyer
55c94e6166 Set application window icon. 2012-01-05 22:27:08 +01:00
Felix Geyer
00aafa69f5 Store database icons as QImage instead of QIcon.
This has the advantage that they can be used without a running X server.
Add methods to retrieve QPixmaps that are converted from the stored QImages
and cached by QPixmapCache.
2012-01-01 21:52:54 +01:00