Commit Graph

932 Commits

Author SHA1 Message Date
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