Florian Geyer
6f4e855b02
Rename EditEntryWidgetIcons to EditWidgetIcons.
2012-05-15 18:46:59 +02:00
Florian Geyer
7e1f7a8729
Coding style improvements.
2012-05-15 18:46:59 +02:00
Felix Geyer
56ac80f475
Assign some keyboard shortcuts.
2012-05-15 18:16:04 +02:00
Felix Geyer
b90807c4d3
Coding style fixes.
2012-05-15 17:48:48 +02:00
Florian Geyer
0c7e1f1a6b
Entry edit widget inherits from base edit widget.
2012-05-15 11:58:09 +02:00
Florian Geyer
eb3a0be809
Group edit widget inherits from base edit widget.
2012-05-15 11:58:09 +02:00
Florian Geyer
f596cc4eec
Add base edit widget.
2012-05-15 11:58:03 +02:00
Felix Geyer
7986fd3e31
Use stylesheets to color the password edit background.
2012-05-14 20:24:00 +02:00
Felix Geyer
a407e0082b
Coding style improvements.
2012-05-14 19:10:42 +02:00
Felix Geyer
924130e0fe
Use Q_FOREACH instead of QListIterator.
2012-05-14 17:56:43 +02:00
Felix Geyer
cd41727583
Get rid of Database pointer in Metadata.
2012-05-14 17:04:05 +02:00
Felix Geyer
10e24e7343
Connect to selectionModel()->currentChanged() instead of reimplementing currentChanged().
2012-05-14 16:50:28 +02:00
Felix Geyer
120be979e9
Add missing break in switch statements.
2012-05-14 16:45:32 +02:00
Felix Geyer
53fb28624e
Fix memory leak in Entry::truncateHistory().
2012-05-14 16:29:22 +02:00
Felix Geyer
b88a0d8de3
Coding style improvements.
2012-05-14 16:27:59 +02:00
Florian Geyer
89361b3bea
Readability fix in custom icon model.
2012-05-13 21:27:56 +02:00
Florian Geyer
a197cdcce5
Improve selection when adding/removing a custom icon.
2012-05-13 21:19:45 +02:00
Florian Geyer
a57e8f9864
Preserve order of custom icons.
...
Closes #25
2012-05-13 20:50:41 +02:00
Florian Geyer
459cf051bf
Truncate history of all items when history limits are changed.
2012-05-13 19:43:01 +02:00
Florian Geyer
8cd5b1f582
Use current index changed slot instead of selection changed signal in group view to update the entry view.
2012-05-13 19:21:23 +02:00
Florian Geyer
0e19b47755
Disable some menu actions while searching.
2012-05-13 19:21:23 +02:00
Florian Geyer
6b6c109903
Add search.
...
Refs #24
2012-05-13 19:21:10 +02:00
Florian Geyer
f836629dda
Don't reset entry model if the same group is set.
2012-05-13 19:03:41 +02:00
Florian Geyer
746a535c7d
Create recycle bin with search state and auto type disabled.
2012-05-13 19:03:41 +02:00
Florian Geyer
078fe3ccf1
Pass database instead of metadata to edit entry widget.
2012-05-13 19:02:07 +02:00
Felix Geyer
af726d465d
Fix typo.
2012-05-13 13:33:55 +02:00
Felix Geyer
23792eb069
Remove some asserts in KeePass1Reader.
2012-05-13 13:32:28 +02:00
Felix Geyer
0387da48a4
Add transform round benchmark button to DatabaseWidget.
2012-05-12 15:39:55 +02:00
Felix Geyer
efb40a6567
Fix transform round benchmark.
2012-05-12 15:39:33 +02:00
Felix Geyer
05c41c083e
Implement GUI to import KeePass 1 databases.
...
Closes #2
2012-05-12 10:13:00 +02:00
Florian Geyer
4807ec3368
Include groups in custom icon delete check.
...
Refs #22
2012-05-12 02:14:06 +02:00
Florian Geyer
e4b6289c0b
Prevent deletion of custom icon if it is still used by other entries.
...
Refs #22
2012-05-12 00:30:29 +02:00
Florian Geyer
15fa09167b
Toggle enabled status of add/remove custom icon buttons based on radio button selection.
2012-05-12 00:28:05 +02:00
Florian Geyer
1c24b2c5c4
Add gui option for history max items and size to database settings widget.
2012-05-11 20:14:52 +02:00
Florian Geyer
1a74feb253
Improve history limits.
...
Closes #16
2012-05-11 20:14:43 +02:00
jacek81
8c87a87da6
Added history limits enforcement
2012-05-11 20:04:51 +02:00
Felix Geyer
860a2131b3
Emit dataChanged() when the entry icon has changed.
2012-05-11 14:14:12 +02:00
Felix Geyer
0b592c69b0
Emit defaultKeyModified() only when the data has actually changed.
2012-05-11 14:13:22 +02:00
Felix Geyer
587a647c11
New TODO comment style.
...
Qt Creator 2.5 is able to parse those.
2012-05-11 12:39:06 +02:00
Felix Geyer
8faac078fd
Make EntryView sortable.
2012-05-11 12:01:01 +02:00
Florian Geyer
44489bf6f8
Fix creation of history item when a new entry is added.
...
Add corresponding gui test.
2012-05-11 09:16:45 +02:00
Florian Geyer
887e4067ec
Improve selection handling in edit icon widget.
2012-05-11 08:40:02 +02:00
Felix Geyer
65bdc207b7
Make sure we don't create DeletedObjects when importing databases.
2012-05-10 22:54:26 +02:00
Felix Geyer
366d8a0f0e
Set master key after reading the database.
2012-05-10 22:46:36 +02:00
Felix Geyer
9d8e276950
Set uuids for entries.
2012-05-10 21:35:26 +02:00
Felix Geyer
cf4e574c50
Support Twofish encrypted KeePass 1 databases.
...
Refs #2
2012-05-10 21:06:33 +02:00
Felix Geyer
c02b5abc6e
Fix composite keys in KeePass1Reader.
2012-05-10 19:33:49 +02:00
Felix Geyer
7fd8154ea8
Add support for parsing KeePass 1 keyfiles.
...
Refs #2
2012-05-10 19:33:16 +02:00
Felix Geyer
cc6f524168
Add Tools::readFromDevice() and make FileKey use it.
2012-05-10 19:00:36 +02:00
Felix Geyer
6eebd95de1
Move FileKey::isHex() to Tools.
2012-05-10 18:34:51 +02:00
Felix Geyer
ce0007acd2
Improve file dialog filter for adding custom icons.
2012-05-10 18:09:42 +02:00
Felix Geyer
8204f2007a
Icon model fixes.
2012-05-10 13:59:36 +02:00
Florian Geyer
0d2ce4c038
Add icon selection for entries.
...
Refs #22 .
2012-05-10 12:05:29 +02:00
Felix Geyer
65f2790170
Parse KeePass 1 database meta streams.
...
Refs #2
2012-05-10 11:44:25 +02:00
Felix Geyer
79b15e2ac6
Implement support for parsing groups and entries from KeePass 1 databases.
...
Still missing:
- Key files.
- Twofish encryption.
Refs #2
2012-05-09 23:16:32 +02:00
Felix Geyer
6234065898
Make sure TimeInfo only contains UTC values.
2012-05-09 23:16:32 +02:00
Andreas Piesk
7568582b05
compile with QT < 4.7 (RHEL6 an clones)
2012-05-09 22:15:28 +02:00
Florian Geyer
93a868a571
Don't show message box when creation of database is canceled.
2012-05-09 20:56:22 +02:00
Florian Geyer
f20d892573
Fix use of wrong slot when connecting the close request signal of the database widget.
2012-05-09 20:11:37 +02:00
Florian Geyer
07aa46c2d6
Activate corresponding tab when closing a database.
2012-05-09 20:11:27 +02:00
Florian Geyer
09248fdb14
Select newly created entries.
2012-05-09 20:03:13 +02:00
Felix Geyer
8122ab2b2c
Use quint64 everywhere for the transform rounds number.
2012-05-08 22:31:09 +02:00
Felix Geyer
ebce183925
Start implementing support for reading KeePass 1 databases.
...
For now only decrypting the database works.
Still missing:
- Actually parsing the database.
- Key files.
Refs #1
2012-05-08 22:06:12 +02:00
Felix Geyer
38e421d9c1
Fix padding handling in SymmetricCipherStream.
...
The implementation had two issues:
- It didn't add a block full of padding when the input size was a multiple
of the block size.
- It didn't strip the padding when reading data.
2012-05-08 21:46:01 +02:00
Felix Geyer
7790f2e7ba
Add CompositeKey::transformKeyBenchmark().
...
This method tests how many key transformation rounds can be calculated
within a specific time.
2012-05-07 14:41:31 +02:00
Felix Geyer
d5fc1bf0b4
Improve performance of the key transformation.
2012-05-07 14:31:18 +02:00
Felix Geyer
7649c781dc
Improve error handling in HashedBlockStream.
2012-05-06 20:19:20 +02:00
Felix Geyer
35cb4343e6
Set proper text for the toggle toolbar action.
2012-05-06 20:17:26 +02:00
Felix Geyer
f753728e97
Only use one additional thread in CompositeKey::transform().
2012-05-03 12:21:42 +02:00
Felix Geyer
18c7fae463
Add icons used by KMessageWidget.
2012-05-03 00:15:31 +02:00
Felix Geyer
539ea5bd44
Add generic DataPath::icon() method.
2012-05-02 23:48:17 +02:00
Felix Geyer
e81ac20442
Fix GPL version number in the about dialog.
2012-05-02 22:43:24 +02:00
Felix Geyer
674320fe2a
Set proper window title for DatabaseOpenDialog.
2012-05-02 22:43:00 +02:00
Felix Geyer
739f4d97a6
Coding style fixes.
2012-05-02 17:04:03 +02:00
Felix Geyer
f89a2a4045
Move recycle bin checkbox to the left side.
2012-05-02 16:34:06 +02:00
Florian Geyer
b217475dff
Set default name for root group when creating new database.
2012-05-02 16:26:32 +02:00
Felix Geyer
98a2950941
Add KeePassX icon to about dialog.
2012-05-02 16:21:59 +02:00
Felix Geyer
31ab2677f8
Remove status bar in main window.
2012-05-02 15:37:37 +02:00
Felix Geyer
d60e27b4cf
Add about dialog.
2012-05-02 15:37:21 +02:00
Felix Geyer
eb430d78a0
Sync expanded state to the view for new groups.
2012-05-02 15:36:27 +02:00
Felix Geyer
1ea14e1090
Turn attachmentsView into a QListView with wrapping turned on.
2012-05-02 11:15:50 +02:00
Felix Geyer
3552a79f13
Implement saving, adding and removing attachments.
2012-05-02 11:11:28 +02:00
Felix Geyer
f89ffa10e6
Add Tools::readAllFromDevice().
...
Make KeePass2XmlReader::readCompressedBinary() use the new function.
2012-05-02 11:06:24 +02:00
Felix Geyer
f8f52419c8
Turn EntryAttachmentsModel into a QAbstractListModel.
2012-05-02 10:30:30 +02:00
Florian Geyer
93982aa0c9
Clear attributes edit if there are no attributes.
2012-04-30 18:25:09 +02:00
Florian Geyer
4968292a05
Fix missing connect of collapsed signal.
2012-04-28 22:51:22 +02:00
Florian Geyer
272da8c99c
Fix check if file can be opened read only.
2012-04-28 21:43:23 +02:00
Florian Geyer
64170a16ab
Fix command line argument parsing.
2012-04-28 21:43:23 +02:00
Florian Geyer
ab32452920
Show entry title/group name in delete dialog.
2012-04-28 21:43:23 +02:00
Florian Geyer
554029ac31
Select newly created groups and expand parent.
2012-04-28 21:43:23 +02:00
Florian Geyer
84a9e397d2
Fix missing connect of expanded signal.
2012-04-28 21:43:23 +02:00
Felix Geyer
599d60270d
Coding style fixes.
2012-04-28 21:42:23 +02:00
Felix Geyer
3649c7753c
Fix the vertial size policy of the edit entry widget.
2012-04-28 21:30:11 +02:00
Felix Geyer
1d39368f8d
Support editing attribute values in a separate text edit.
2012-04-28 19:11:15 +02:00
Felix Geyer
3ab81ea776
Fix bug that EntryAttributesModel isn't updated on reset.
2012-04-28 16:50:51 +02:00
Felix Geyer
7f67019f63
Turn EntryAttributesModel into a QAbstractListModel.
2012-04-28 16:50:17 +02:00
Felix Geyer
6140a688d7
Make EntryAttributesModel editable.
2012-04-27 12:35:13 +02:00
Felix Geyer
7c094d4723
Add EntryAttributes::rename().
2012-04-27 12:34:15 +02:00
Felix Geyer
de4b90cdf1
Copy custom icons when moved to another database.
...
Closes #9
2012-04-27 11:22:02 +02:00
Felix Geyer
c36481edae
Support setting a new parent group with an empty db.
2012-04-27 10:50:32 +02:00
Felix Geyer
74ac6c27d7
Support moving entries with drag and drop.
2012-04-26 16:35:13 +02:00
Felix Geyer
79b6ff99e4
Mark library include dirs as SYSTEM.
...
Compilers will suppress warnings from files in those directories.
2012-04-26 12:18:38 +02:00
Felix Geyer
7865f5eee9
Fix some pedantic compiler warnings.
2012-04-26 11:59:53 +02:00
Felix Geyer
e4bc302d3d
Coding style fixes.
2012-04-25 20:22:55 +02:00
Florian Geyer
c29c423ec8
Add enum to describe current mode of database widget.
2012-04-25 19:46:19 +02:00
Felix Geyer
0ad4b3d8fe
Minor improvements in CompositeKey and TestKeys.
2012-04-25 18:35:30 +02:00
Florian Geyer
71b15c589c
Implement default username.
2012-04-25 00:30:23 +02:00
Florian Geyer
7a3a783eeb
Make dialogy widget work with arbitrary buttons in button boxes.
2012-04-25 00:30:23 +02:00
Florian Geyer
5ce9b5da78
Reset focus when opening database settings, edit entry and edit group widget.
2012-04-25 00:30:23 +02:00
Florian Geyer
f7bdeefbe3
Edit widgets inherit from DialogyWidget.
...
Closes #17
2012-04-25 00:30:23 +02:00
Florian Geyer
279793365a
Add dialogy widget which implements default button behaviour.
2012-04-25 00:30:23 +02:00
Felix Geyer
d3fbb291bd
Support moving groups with drag and drop.
2012-04-25 00:22:55 +02:00
Felix Geyer
9e0a6ad2d8
Add an assignment operator to Uuid and support serialization with QDataStream.
2012-04-25 00:15:40 +02:00
Felix Geyer
d5cd0dcd14
Add a method to get databases by uuid.
...
Each database gets a random uuid on construction which is not saved by
KeePass2XmlWriter and only valid until the database object is deleted.
2012-04-25 00:12:23 +02:00
Felix Geyer
0d20955920
Fix bug where index is wrong when a group is moved to the end from the same parent.
...
This triggered the bug:
group->setParent(group->parentGroup());
Then index was group->parentGroup()->children().size() instead of size()-1.
2012-04-25 00:10:06 +02:00
Felix Geyer
974d4f5807
Allow passing a filename and password on the command line.
...
Passing passwords on the command line is not exactly best practice but will
greatly improve development productivity.
2012-04-24 11:47:16 +02:00
Felix Geyer
3aac16f03e
Make DatabaseWidget ignore the size hint of non-active widgets.
2012-04-24 11:22:55 +02:00
Felix Geyer
e026f3d1eb
Create a history item when changing entries.
...
Closes #15
2012-04-23 21:20:05 +02:00
Felix Geyer
3df2ad35cb
Constification and some style fixes.
2012-04-23 21:09:01 +02:00
Florian Geyer
b3ddfca2bd
Focus the password line edit on switch to change master key widget.
2012-04-23 17:14:22 +02:00
Felix Geyer
f28f868671
Coding style fixes.
2012-04-23 17:02:09 +02:00
Felix Geyer
bddc29101c
Introduce Group::aboutToMove() and moved() signals.
...
Emit them instead of remove/add when groups are moved within
a database.
2012-04-23 16:57:08 +02:00
Felix Geyer
67bf8e7b2a
Write history only for entries that are not history items.
2012-04-22 22:33:14 +02:00
Felix Geyer
7063f5296a
Fix memory leak in SymmetricCipherStream.
2012-04-22 22:26:05 +02:00
Felix Geyer
f9abf2171b
Focus the password line edit by default.
2012-04-22 20:57:42 +02:00
Florian Geyer
222abe09d9
Make save order for deleted objects consistent.
2012-04-22 19:59:50 +02:00
Felix Geyer
baed7d76cf
Use QHash for temporary entry/group containers.
...
Closes #11
2012-04-22 12:30:38 +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
9726046e24
Display current tab name in window title.
2012-04-22 00:11:17 +02:00
Florian Geyer
e7d0dfbd26
Ask before closing database when in edit mode.
...
Fixes #12
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
db52267400
Clear keys in assignment operator of composite key.
...
Fixes corruption of key if master key and then transform rounds is changed.
2012-04-21 18:28:06 +02:00
Florian Geyer
4e2407b3ba
Fix groupChanged signal not emitted in all cases.
2012-04-21 18:26:18 +02:00
Florian Geyer
b1db565bee
Hide the tar bar when only one database is opened.
...
Closes #10
2012-04-21 18:24:30 +02:00
Florian Geyer
e06937287c
Make toggle password button in ChangeMasterKey widget work.
2012-04-21 17:28:44 +02:00
Florian Geyer
26c4dedd01
Add more options to database settings widget.
2012-04-21 17:28:44 +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
e8ac70120b
Delete entries for good if already in recycle bin
2012-04-19 01:02:23 +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
Florian Geyer
5661f29f7d
Add ability to delete entries via gui.
2012-04-18 23:06:21 +02:00
Felix Geyer
37291d278e
Fix some more lines that are too long.
2012-04-18 23:05:31 +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
89f138a868
Remove unnecessary currentIndexChanged signal in database widget.
2012-04-18 17:03:58 +02:00
Florian Geyer
3b603f685a
Display expiry time in local time, but save in utc.
2012-04-18 17:03:58 +02:00
Florian Geyer
48f8b1a116
Do not partly update an entry when different passwords are supplied.
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
9dc362c97e
Add tabstop order for EditEntryWidgetMain.
2012-04-18 17:03:58 +02:00
Florian Geyer
7c70eccaf7
Add password repeat check for entry passwords.
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
e1632e8087
Disable timeinfo update for history entries on database parsing.
2012-04-18 17:03:57 +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
900420630d
Fix checking if database has a key.
2012-04-18 17:03:57 +02:00
Florian Geyer
26436d764a
Remove duplicate connect on currentChanged signal of the tab widget.
2012-04-18 17:03:57 +02:00
Florian Geyer
fec19b475e
Disable/enable menu actions depending on what currently can be done.
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
afb521c6bf
Silence some unused variable warnings when building in release mode.
2012-04-18 16:07:58 +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
3baaf6be97
Add TestGui::testEditEntry().
...
This tests that the database isn't marked as modified when we don't change
anything but still press the Ok button.
2012-04-14 20:31:35 +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
8f79e914f4
Create m_entryAttachments in EditEntryWidget. Fixes a crash.
2012-04-14 18:45:32 +02:00
Felix Geyer
849f83e030
Add a new tab to the entry widget that shows attributes and attachments.
2012-04-14 15:43:41 +02:00
Felix Geyer
2b16648370
Add EntryAttachmentsModel and EntryAttributesModel.
2012-04-14 15:41:57 +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
0ca32ea110
Fix syntax error.
2012-04-11 23:40:53 +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
73e1104442
Fix database name showing a star at the end when asking to save changes.
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
3c0efd6809
Fix missing write of group notes.
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
a058dcee5d
Multiple DatabaseTabWidget fixes.
...
Close databases on exit. Ask to save changes on database close.
Remove database from db list on database close.
Delete file pointer on database close.
Require to set master key at database creation time.
Append "*" to tabname if database is modified.
Handle database modified signals in database tab widget.
2012-04-11 21:50:20 +02:00
Felix Geyer
e39827d777
Only delete old file when the new one has been saved successfully.
2012-04-11 21:50:20 +02:00
Florian Geyer
7880c0e4f5
Check both password edit fields.
2012-04-11 21:49:59 +02:00
Florian Geyer
1d23ed46e5
Add modified signal for database.
2012-04-11 20:01:36 +02:00
Felix Geyer
2f58b854ed
Print warning about invalid entry references.
2012-04-11 18:46:23 +02:00
Felix Geyer
cba8fd7e51
Add Tools.cpp to the cmake file.
2012-04-10 15:31:47 +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
b3063c6fc8
Small include file cleanup.
2012-04-05 19:08:45 +02:00
Felix Geyer
8fc68045f6
Move the code to open database files from DatabaseTabWidget to DatabaseOpenDialog.
2012-04-05 19:03:55 +02:00
Felix Geyer
9d1838a0fe
Rename KeyOpenDialog to DatabaseOpenDialog.
2012-04-05 18:31:12 +02:00
Tim Swast
585e77e85c
Fixed build for MacOS.
...
Signed-off-by: Felix Geyer <debfx@fobos.de>
2012-01-13 18:25:04 +01:00
Felix Geyer
2612fc8e44
Expand GUI to allow changing the master key.
2012-01-13 17:52:37 +01:00
Felix Geyer
0ad1bf0a70
Add CompositeKey::clear().
2012-01-11 23:59:50 +01:00
Felix Geyer
279585fff4
Mark some constructor as explicit.
2012-01-11 19:18:35 +01:00
Felix Geyer
6422dee4fc
Update include guard name.
2012-01-11 18:12:41 +01: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
40e96ad7b3
Make password and expiry information editable in EditEntryWidget.
2012-01-07 16:18:21 +01:00
Felix Geyer
007a901dba
Proper error handling for reading databases.
2012-01-06 20:03:13 +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
17d0fb9963
Add include guards.
2012-01-01 21:57:13 +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
Felix Geyer
fdf600e09a
Mark some methods as private.
2012-01-01 18:10:51 +01:00
Felix Geyer
4cb8cffe3f
Rename DatabaseManager to DatabaseTabWidget and turn it into a QTabWidget.
2011-12-30 18:43:24 +01:00
Felix Geyer
752c720226
Install the keepassx binary and database icons.
2011-12-29 23:50:22 +01:00
Florian Geyer
42773f51a4
Add function to get current database widget.
2011-12-29 20:03:20 +01:00
Felix Geyer
58d4a0208b
Fix crash when editing an entry.
2011-12-29 19:04:25 +01:00
Felix Geyer
73b84ff670
Make the edit entry button work.
2011-12-29 19:01:58 +01:00
Felix Geyer
e11b0061d4
Fix coding style.
2011-12-28 19:05:31 +01:00
Florian Geyer
d2712b2a95
Pre-select current file in save as dialog.
2011-12-27 16:06:07 +01:00
Felix Geyer
4d8e9561a7
Implement GUI for creating entries.
2011-12-27 16:04:59 +01:00
Felix Geyer
019bcd380e
Implement the GUI for editing and creating groups.
2011-12-27 15:49:06 +01:00
Felix Geyer
bce46c5ece
Enforce that group/entry uuid is set when writing a database.
2011-12-27 15:47:06 +01:00
Felix Geyer
4ebcd53801
Ignore compiler warnings in qendian.h.
2011-12-26 19:34:34 +01:00
Felix Geyer
fb6ab63d6b
Merge git://gitorious.org/~blueice/keepassx/blueices-keepassx into merge-request
2011-12-26 19:21:08 +01:00
Felix Geyer
509328343f
Show KeyOpenDialog with show() instead of exec().
2011-12-26 19:17:11 +01:00
Florian Geyer
cef8032a74
Activate corresponding tab when opening new database.
2011-12-26 18:58:14 +01:00
Felix Geyer
57388ac896
Add UI as a member variable instead of inheriting it.
2011-12-26 18:55:50 +01:00
Felix Geyer
f90831b809
Use an own FileDialog class instead of QFileDialog.
2011-12-26 01:21:29 +01:00
Felix Geyer
256dc89466
Remember last key file.
2011-12-25 20:36:45 +01:00
Felix Geyer
62e7ba6e55
Fix tab names and add tab tooltips.
2011-12-25 19:47:41 +01:00
Felix Geyer
35066bca8b
Implement global config class.
2011-12-25 19:17:40 +01:00
Felix Geyer
21acb02e3e
Fix code formatting.
2011-12-24 23:50:05 +01:00
Felix Geyer
f7b95842b9
Merge git://gitorious.org/~blueice/keepassx/blueices-keepassx into merge-request
2011-12-24 23:46:57 +01:00
Felix Geyer
c5100594b2
Add missing tr().
2011-12-24 19:26:18 +01:00
Florian Geyer
1dc90c1a77
Implement save as.
2011-12-24 19:22:42 +01:00
Felix Geyer
566b239a50
Implement opening databases with key files.
2011-12-24 19:19:52 +01:00
Felix Geyer
61dc295fa0
Syntax fixes.
2011-12-24 17:26:04 +01:00
Felix Geyer
1e4587c7a3
Add a class which provides the path to data files.
2011-12-23 11:59:09 +01:00
Felix Geyer
af820f4931
Add missing include guards.
2011-12-23 10:28:18 +01:00
Felix Geyer
f215ffa3fa
Implement support for key files.
...
Closes #5 .
2011-12-21 23:22:07 +01:00
Felix Geyer
cd919949fd
Add a bunch of entry and group actions.
2011-12-16 17:56:13 +01:00
Felix Geyer
11ccdd4c9c
Add more Crypto::initalized() assertions.
2011-11-20 11:46:09 +01:00
Felix Geyer
bc63d18f68
Make sure gcrypt is initalized when SymmetricCipherGcrypt objects are created.
2011-11-20 10:24:12 +01:00
Felix Geyer
baace14918
Initalize autoEnableVisualHiding.
2011-11-20 10:16:13 +01:00
Felix Geyer
5df933be25
New actions: new, save and close database.
2011-11-16 18:47:17 +01:00
Felix Geyer
0ba03920df
Automatically check password checkbox and make toggle password button work.
2011-11-16 18:46:09 +01:00
Felix Geyer
c7ed5f8421
Implement opening/closing databases.
2011-11-13 14:55:20 +01:00
Felix Geyer
0e41ed72dd
Emit signal when changing the database name.
2011-11-13 14:54:11 +01:00
Felix Geyer
0014d50b59
Deep copy subkeys when cloning CompositeKey.
2011-11-13 14:52:43 +01:00
Felix Geyer
9b46225937
Fix cmake files to use new gcrypt variables.
2011-11-12 14:30:16 +01:00
Felix Geyer
9ffa5232f5
Remove some unneeded includes.
2011-11-12 12:20:08 +01:00
Felix Geyer
8a964f35d1
Add brackets.
2011-11-12 10:42:34 +01:00
Felix Geyer
9ef105e1ae
Use QtConcurrentRun instead of subclassing QThread.
2011-11-12 01:49:19 +01:00
Felix Geyer
027362be76
Notify entry/group parent on deletion.
...
Also make the root group pseudo static, i.e. it shouldn't be changed
after the database has been fully constructed.
2011-07-09 21:54:01 +02:00
Felix Geyer
d4f02a78a7
Coding style fixes.
2011-07-08 14:51:14 +02:00
Felix Geyer
8335db4db5
Add Random::randomUInt() and Random::randomUIntRange().
2011-07-08 14:40:42 +02:00
Felix Geyer
4dbdc4d847
Make some Group methods private.
2011-07-08 13:57:02 +02:00
Felix Geyer
a1bfb1f319
Initalize more member variables.
2011-07-07 12:52:30 +02:00
Felix Geyer
afb285a476
Use a special enum for inherit/enable/disable variables.
2011-07-07 12:45:14 +02:00
Felix Geyer
be934b2fce
Always add the default attributes to Entry and don't allow to delete them.
2011-07-07 12:42:08 +02:00
Felix Geyer
a299dd9715
Integrate KeePass2RandomStream into KeePass2 reader and writer classes.
...
This hopefully completes support for reading/writing kdbx <= 2.14 files.
Also fix a bug in KeePass2XmlWriter so it sets Protected="True" in the Value
tag instead of Key.
2011-07-07 00:15:52 +02:00
Felix Geyer
58e048be96
Add KeePass2RandomStream class.
...
It's responsible for processing protected strings in kdbx files.
2011-07-07 00:08:37 +02:00
Felix Geyer
1d6e106aee
Initalize protect switch variables.
2011-07-06 23:44:29 +02:00
Felix Geyer
6d4561bc57
Initalize pointer in Group. *sigh*
2011-07-06 23:43:02 +02:00
Felix Geyer
ef8935431c
Add ability to grab the raw xml string of kdbx databases.
2011-07-06 20:21:40 +02:00
Felix Geyer
5cb906c235
Properly initialize various attributes.
2011-06-29 16:47:05 +02:00
Felix Geyer
c548c7f4b4
Add initial support for writing protected strings.
2011-06-29 16:43:14 +02:00
Felix Geyer
6afda908bc
Move key transform() call into Database.
2011-06-29 16:39:39 +02:00
Felix Geyer
fd9685037b
Support writing empty color.
2011-06-29 16:33:23 +02:00
Felix Geyer
2adf3770b0
Fix typo.
...
aka project might be still alive commit
2011-06-25 23:10:42 +02:00
Felix Geyer
cfb55828b6
Add initial support for encrypted database fields.
2011-01-13 22:31:17 +01:00
Felix Geyer
2c8da57ce5
Make some methods static.
2010-11-21 23:11:16 +01:00
Felix Geyer
230d24a123
No longer use automoc.
2010-11-21 23:06:30 +01:00
Felix Geyer
a428464573
Add Salsa20 cipher.
...
Restructure SymmetricCipher implementation to allow multiple backends.
2010-11-21 16:19:27 +01:00
Felix Geyer
3b9982c0a3
Add .h files that don't have a corresponding .cpp file so QtCreator picks them up.
2010-10-08 16:36:40 +02:00
Felix Geyer
8fc2b9328e
Improve EditEntryWidget.
2010-10-06 22:54:07 +02:00
Felix Geyer
0c91be8eac
Add initial UI for entry editing.
2010-10-06 19:40:50 +02:00
Felix Geyer
e3da80fcc6
Add KeePass2Writer.
...
Support attributes MasterKeyChanged, MasterKeyChangeRec, MasterKeyChangeForce and Tags.
Close streams in the dtor.
2010-09-25 12:41:00 +02:00
Felix Geyer
b8dfb9cc4d
Add support for gzip compressed databases.
2010-09-23 22:27:59 +02:00
Felix Geyer
f0e711ac23
Warn about unsupported icon ids.
2010-09-23 00:21:36 +02:00
Felix Geyer
8b5dcc7bee
Use the Uuid::LENGTH constant instead of literals.
2010-09-23 00:19:02 +02:00
Felix Geyer
9f0c3e5411
Implement Uuid::random().
2010-09-22 00:16:01 +02:00
Felix Geyer
eb6eec616c
Add username and URL columns.
2010-09-21 23:01:56 +02:00
Felix Geyer
89e778d324
Display warning when an invalid icon index is requested.
2010-09-21 22:39:42 +02:00
Felix Geyer
537ffafefd
Add unit test TestKeePass2Reader.
2010-09-20 00:16:30 +02:00
Felix Geyer
567dd92d4c
Add built-in icons.
2010-09-19 21:22:24 +02:00
Felix Geyer
24158bb032
Add signal EntryView::entryActivated().
2010-09-19 19:45:14 +02:00
Felix Geyer
1ee0c804be
Add MainWindow.
2010-09-19 16:59:32 +02:00
Felix Geyer
a49cf184ea
Code cleanup.
2010-09-19 16:58:21 +02:00
Felix Geyer
1678351d11
Enable and fix more warnings.
2010-09-18 20:31:14 +02:00
Felix Geyer
5da7d3fca6
Implement writing in SymmetricCipherStream and add a unit test.
2010-09-18 17:19:42 +02:00
Felix Geyer
36d974649e
Write the remaining buffer in reset().
2010-09-18 17:13:28 +02:00
Felix Geyer
c2bdfab158
Implement writing to the SymmetricCipherStream.
2010-09-16 18:20:46 +02:00
Felix Geyer
49d64d8162
Better error checking when opening the stream.
2010-09-16 18:20:22 +02:00
Felix Geyer
d508c2dd68
Open a kdbx file in main() and add more SymmetricCipher tests.
2010-09-13 23:25:48 +02:00
Felix Geyer
9f282928e8
Implement reading encrypted kdbx files.
2010-09-13 23:24:36 +02:00
Felix Geyer
bb6ae3a014
Add reset() and blockSize().
2010-09-13 23:18:31 +02:00
Felix Geyer
26de957a98
Indentation and variable naming fixes.
2010-09-13 23:16:28 +02:00
Felix Geyer
6a2034fa24
Add crypto classes and tests. Link to libgcrypt.
2010-09-11 19:49:30 +02:00
Felix Geyer
f5dd24fdbe
Use upper case names for constants.
2010-09-05 11:46:36 +02:00
Felix Geyer
1cfc34361a
Add interface for database reader/writer.
2010-08-31 16:18:45 +02:00
Felix Geyer
ee4c2c3dd4
Move core/Parser to format/KeePass2XmlReader and core/Writer to format/KeePass2XmlWriter.
2010-08-31 14:39:35 +02:00
Felix Geyer
3bf0564436
Handle CustomData element.
...
This should make support for reading and writing
KeePass 2 XML files complete (closes #1 ).
2010-08-26 00:31:07 +02:00
Felix Geyer
8df8f69e10
Actually calling writeDeletedObjects() would be a good idea.
2010-08-25 23:45:16 +02:00
Felix Geyer
cd26e9d474
Add a bunch of new Parser testcases.
2010-08-25 21:14:41 +02:00
Felix Geyer
542ecd41d1
Fix UUID not being set for history entries.
2010-08-25 21:13:50 +02:00
Felix Geyer
e7a9d57800
Set icon id even if it's 0 as icon numbering starts at 0.
2010-08-25 19:26:01 +02:00
Felix Geyer
82cb315977
Implement some const methods properly.
2010-08-25 14:00:46 +02:00
Felix Geyer
3193adc215
Support Entry History and DeletedObjects.
2010-08-25 13:52:59 +02:00
Felix Geyer
5efccf32c9
Set horizontal stretch factors.
2010-08-25 10:46:26 +02:00
Felix Geyer
19063d9894
Disable icons in the models for now.
2010-08-24 23:17:09 +02:00
Felix Geyer
ef52e98ee6
Coding style++
2010-08-24 23:12:01 +02:00
Felix Geyer
194a081bd7
Use a splitter between Group and Entry View.
2010-08-24 23:06:35 +02:00
Felix Geyer
621b367f45
Add EntryView and DatabaseWidget.
2010-08-24 22:26:52 +02:00
Felix Geyer
e96c3bb011
Un-constify Entry* and Group* in various related signals and models/views.
2010-08-23 21:30:20 +02:00
Felix Geyer
d2e677c7f4
Prefix object attribute with "m_".
2010-08-23 20:57:38 +02:00
Felix Geyer
97ca81f316
Add GroupView.
2010-08-22 16:02:44 +02:00
Felix Geyer
707cf1bbe8
Some Writer fixes and add methods to actually make it write.
2010-08-22 16:01:09 +02:00
Felix Geyer
82afd43f12
Support EnableAutoType and EnableSearching group properties.
2010-08-19 14:03:54 +02:00
Felix Geyer
2b939617bb
Implement XML Writer (maybe even works!)
2010-08-18 22:57:26 +02:00
Felix Geyer
8d623f37ca
Add EntryModel.
2010-08-18 16:22:48 +02:00
Felix Geyer
84bc5ef463
Add convenience methods to access common attributes.
2010-08-18 15:08:17 +02:00
Felix Geyer
623b325fa1
Implement support for group tree changes in GroupModel.
2010-08-18 10:27:40 +02:00
Felix Geyer
e28ed4891b
Add signal for changes in Group.
2010-08-15 15:03:47 +02:00
Felix Geyer
072a8ccf1b
Add GroupModel and corresponding unit test.
2010-08-15 12:31:48 +02:00
Felix Geyer
a3211872e0
Use static method instead of a constructor for random Uuids.
2010-08-14 12:44:55 +02:00
Felix Geyer
d8b21c8b04
Mark constructors as explicit.
2010-08-14 12:28:52 +02:00
Felix Geyer
01694c3271
Implement Entry::image().
2010-08-14 12:24:35 +02:00
Felix Geyer
bd1ea05017
Fix parser and add unit tests.
2010-08-13 18:08:06 +02:00
Felix Geyer
b64dbce2da
Build fixes.
2010-08-12 21:43:57 +02:00
Felix Geyer
dae532d659
More work on the parser and Entry/Group data structures.
2010-08-12 21:38:59 +02:00
Felix Geyer
3e3c23e4ad
Initial import.
2010-08-07 15:10:44 +02:00