Skip to content
/ tdj4 Public

The Daily Journal is a PIM utility based on the Qt toolkit

License

Notifications You must be signed in to change notification settings

letapk/tdj4

Repository files navigation

What is tdj4?
------------
The letters in "tdj4" stand for "The Daily Journal". It is a PIM program, and
is also the name of the binary executable. It is written using the Qt toolkit from
www.qt.io.

This is version 4-0.1.

More information below, if you still want to read on.

What does PIM mean?
-------------------
Personal Information Manager (I think), a program which manages daily notes,
appointments, alarms, to-do lists, contacts, addresses, etc.

What can it do, in its present form?
------------------------------------
If you are in the habit of keeping daily notes, or a diary, or a journal  of
your activities, tdj can keep them organised and accessible.

That's nice, but does it ever do anything useful?
-------------------------------------------------
If it does, it does it when I'm not looking. Besides, if it did, do you think
I would be giving it away free?

While there is no guarantee that it will do anything useful, or anything at all,
there is every probability of the version number increasing in the future as
and when I get the time to add more features (especially if anyone asks).

How do I use it?
----------------
The user interface is basically a nice, very versatile calendar, with an editor
capable of handling rich text.

You can store your thoughts for a particular day by clicking on the appropriate
date, and entering the data into the editor at the right. To retrieve the notes
for a particular day, click on the desired date. The same editor window displays
the notes, and you can add to or modify the text if needed.

There is a row of tabs which give access to the various components of the PIM.

You can bring up your appointment table for the current day and you can add and
make changes to or delete any appointment.

You can maintain multiple to-do lists, a table of anniversaries as well as names
and addresses of your contacts, sorted into any organized set of categories of
your choice.

Selecting these tabs will display windows where you can enter, modify, or delete
data.

There is a manual also. Read the file "tdjhelp.pdf" in the downloaded package for
more details.

tdj4 is a small and handy program, and takes up very little space on the desktop,
as wellas your hard disk.

Availability
------------
The Daily Journal is available as source code to compile on your own machine, or
as a package containing binaries to install and use.

Compiling the source
--------------------
ALl the source files are available on Github under the following link:
https://github.com/letapk/tdj4

The repository is public. Anyone can check out the branch onto her local machine.

In addition, you will need the libraries and developement files from Qt, which are
available from the depository of your Linux distribution or from www.qt.io.
The current source tree compiles and runs using Qt version 5.15.3.

Also required are the development files and libraries of the GNU Cryptographic library.
They can be found from the GNU website, www.gnu.org, as well as the Linux distribution
depository.

If you are using QtCreator, load the project file tdj4.pro which is available in the source
package. Select the version you want to build (debug version or release version) and hit
Ctrl-B. If there are no problems, this should build the binary.

The program has been compiled and tested on version 5.15.3 of Qt, under Ubuntu
22.04.

The binary may be stored locally in a directoriy separate from the source subdirectory,
depending on how QtCreator is configured. This location will be available within QtCreator.

If you are not using QtCreator, running the comand:
qmake tdj4.pro
should create a Makefile for your system. Then, running:
make
should create a running binary.

When the program is executed, tdj4 searches for a hidden subdirectory called
“.cryptdj”. If this is absent (which will be the case when it is executed the first
time) it issues a notification that it will be created. Subsequently all data is
stored in this subdirectory.

Exit the program and copy the help and image files in the downloaded package to the
hidden data subdirectory. Either use a file manager or open a terminal and do the
following from within the tdj4 subdirectory:

cp tdjhelp.* ~/.cryptdj
cp COPYING ~/.cryptdj

Remember to put the dot (".") in the right place. This will make the on-line help
available when the program is running.

If you are using QtCreator, the location of the locally compiled binary will be
available from within QtCreator. If not, the binary will be in the same location as the
source files. From this location copy the binary to a place from where everyone working
on the computer can run it.

From the subdirectory containing the binary do:
sudo cp ./tdj4 /usr/local/bin/tdj4
Enter the password when prompted.

If your preferred language locale is German, and you wish that the program present
its user interface also in theGerman language, then the file containing the
translations should be in the same location as the program binary, so copy it there
as well:
cp ./tdj4_de.qm /usr/local/bin/tdj4_de.qm

Changes in version 4-0.1
------------------------
1. Added the facility to encrypt user data. This is stored in a subdirectory
different from the one used by version 3-0.3. Data created by each version can
coexist without interference, and since the binaries have different names, they
can also coexist peacefully.

2. Modification of the user manual.

3. One consequence of encryption is that THE FORMAT OF THE DATA FILES IS DIFFERENT.
You cannot read data created by version 3-0.3 into version 4-0.1. However, you can
run both the programs together, side by side, and copy-paste information from one
version to the other.

4. Incorporation of the German language translation in a translation file, which is
used by the user-interface if the language locale is German.

Changes in version 3-0.3
------------------------
1. Added a toolbar and converted the editors from plaintext to rich text. Code for
this has been shamelessly re-used from the Richtext example in the Qt documentation.

A major consequence of the change from plaintext editors to richtext editors is
that the data is stored and interpreted as HTML. This means that earlier notes will
be interpreted as HTML. Since HTML rendering recognizes line breaks and paragraphs
in a different manner, all line breaks and paragraphs in existing notes will be
ignored, and you will have see an unbroken stream of text.

The notes, lists and contact data will have to be re-formatted manually.

3. Added the facility to export the notes and lists as plaintext.

4. Removed the facility to convert data created by the FLTK version "fltdj2" to the
new version 3 format. This is available in version 3-0.2, for those who need to
convert old data.

Changes in version 3-0.2
------------------------
Added compiler directives to detect whether the binary is running under MS-Windows
or Linux, and to set the data path correctly.

Changes in version 3-0.1
------------------------
Converted the user inteface from FLTK to Qt.
This was a complete program rewrite with modifications of the layout in accordance
with the new toolkit.
The notes and appointments data have been split into different files.
Addition of appointments which repeat daily.
The program converts fltdj2 data to the new format once when it is newly installed.
Modification of the user manual.

All versions of The Daily Journal prior to ver. 3 were named "fltdj" and used FLTK,
"The Fast, Light Toolkit" from www.fltk.org for the user interface.

What is the copying policy?
---------------------------
While it is copyright, (C) 2001 onwards, Kartik Patel  the program is also free
software; you can redistribute it and/or modify it under the terms of the GNU
General Public License as published by  the Free Software Foundation; either
version 2 of the License, or (at your option) any later version.  This program
is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY;
without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
PARTICULAR PURPOSE.  See the GNU General Public License for more details.  You
will receive a copy of the GNU General Public License along with this program;
for more information, write to the Free Software  oundation, Inc., 675 Mass
Ave, Cambridge, MA 02139, USA.

What else?
----------
That covers it, more or less. Email me if there is anything left out, or there are
problems in istallation.

Enjoy!

Kartik Patel
letapk@gmail.com
https://letapk.wordpress.com