Temporary prototypes of a document management program and gui toolkit I'm working on.
Go to file
2022-07-07 00:35:54 -04:00
btk Upload files to 'btk' 2022-07-06 22:11:17 -04:00
htpt-db-example Upload files to 'htpt-db-example' 2022-07-07 00:35:54 -04:00
hello.c Upload files to '' 2022-07-06 22:07:48 -04:00
LICENSE Initial commit 2022-07-06 22:04:43 -04:00
main.c Upload files to '' 2022-07-06 22:07:48 -04:00
makefile Upload files to '' 2022-07-06 22:07:48 -04:00
README Update 'README' 2022-07-06 23:07:50 -04:00
screenshot.png Upload files to '' 2022-07-06 22:07:48 -04:00

This is a prototype (I'd even say a mockup) of an application I am developping as
well as a custom gui lib, so please keep that in mind.
I'm aware that this code is pure spagetti garbage, mostly because I was just throwing
shit at the wall to see what sticks and also to quickly get an MVP (somewhat) for
personal usage.

!!!
This software is provided as is and should be treated as INCOMPLETE, BUGGY and
UNMAINTAINED.
!!!

This is just a peek for those that are interested.
A small walkthought video can be found here : https://files.catbox.moe/mv5vio.mp4

I am currently in the process of slowly redoing everything from scratch the
right way. And except for the core ideas, nothing will be left in the new codebase,
not even the name of the project.

No keyboard controls are implemented except for text fields (recognisable with a red
underscore in the text, arrows, pgup/down, home/end, only ascii letters - I didn't
bother with utf8 in this for now - it will be done in the real release tho).

Use your mouse to navigate, left click to activate stuff.
For the  chart in the main program you will need to be able to use mouse button 6-7 to
pan it left-right, usually it will be the left-right gestures on a trackpad (I made
this shit on a laptop). Mouse wheel (or button 4-5) to scroll up and down. You can also
left-right click on the table header to grow-shrink a column.
Double left cliking on a list or table row will activate it.
Windows can be resized.

If you wish to fuck around with the appearance of the program, you can edit the
btk/btk-config.h file.
Btw the font is set to Terminus, if its not installed on your system the rendering
will be fucked up, so either install that font or change the btk_font_name[] property
to your font of choice - note that the internal font parameters have antialias disabled,
so preferably use a bitmap font or it will look like shit.

There is a test "database" that the program takes cares of in ./htpt-db-example navigate
to it from the open button in the main program (in the file list if you want to go up to a
parent folder double click the topmost ".." row), a folder that has been populated with this 
specific "db" (its a hidden ".htpt" file in the target dir) will be highlighed in green
by default, select it (without double click) then click the open button.
The "add file" button will copy whatever you select into the location the of "db"

to compile:
	make hello        (just a hello world window)
or:
	make hotpot       (the actual program)

dependencies :
	xcb
	cairo
	libc
	pthread
	c99 compiler

Again, this is a mockup of a program and lib, please don't scorn me for this, I promise
that in the actual release everything should be done as one would expect form a normal
library.