This is gui library and a text editor. This library is built upon shotodol development environment. It consists of modules that enable document rendering and basic gui rendering in different platforms.
You need to get the following project sources,
You need to get compressed(tar.gz/zip) distribution from the servers(for example, github.com/kamanashisroy/). Otherwise you can use git to clone the repositories, which is important if you want to change and develop the code or if you want to see the history.
You need to create a project directory for all the associated projects. Then you need to decompress the projects in this directory.
Suppose you are in 'a' directory. Then you need to decompress aroop,shotodol,shotodol_media,roopkotha in 'a' directory. If you are in linux, then putting 'ls' command in shell looks like this,
a$ ls
aroop shotodol shotodol_media roopkotha . ..
Now you need to build the projects sequentially. Please see the readme in aroop, shotodol and shotodol_media to build them.
To build roopkotha, you need to configure and generate the makefiles. To do that you need lua. And if you have filesystems module in lua then it would be easy. You need to execute the configure.lua script, like the following,
a/roopkotha$ lua configure.lua
And you will get the output like the following,
Project path /a/roopkotha >
Aroop path /a/aroop >
Shotodol path /a/shotodol >
Shotodol Media path /a/shotodol_media >
enable bluetooth ?(y/n) > n
enable debug (ggdb3) ?(y/n) > y
enable GUI debug ?(y/n) > n
Now, after you have the Makefile in the roopkotha directory you are ready to build.
a/roopkotha$ ls
Makefile
You need to build platform specific implementation first. You can either build x11 based implementation or you can build Qt based implementation.
Suppose we want to build it with Qt, then the following commands should build the platform library,
a/roopkotha$ cd linux/platform_gui/build
a/roopkotha/linux/platform_gui/build$ make -f Makefile.build
a/roopkotha/linux/platform_gui/build$ make
a/roopkotha/linux/platform_gui/build$ make staticlib
a/roopkotha/linux/platform_gui/build$ cd ../../../
In order to build x11 you need to go to x11 project directory and make.
a/roopkotha$ cd linux/platform_gui/x11project
a/roopkotha/linux/platform_gui/x11project$ make
a/roopkotha/linux/platform_gui/x11project$ ls
x11_impl.o
a/roopkotha/linux/platform_gui/x11project$ cd ../../../
Now you can easily build roopkotha like,
a/roopkotha$ make
a/roopkotha$ ls
shotodol.bin
The above command will create shotodol.bin as an executable binary. It reads the shotodol.ske (shake script file) for loading required plugins.
Now go to tests/guiapps/vela and put make command and see if it works .
a/roopkotha$ cd tests/guiapps/vela
a/roopkotha/tests/guiapps/vela$ make
The primary design goal is seperation of concern.This project consists of modules and plugins. You may want to know the architecture of shotodol to understand it better.
- GUI Core
- List View
- Vela
- GUI Modules are command pattern execution of events.
- History Command
You can also get the source code documentation in html/other document formats. You need doxygen installed. And you can just make the document and see the output in docs/doxygen/ (or more specifically in docs/doxygen/html/).
a/roopkotha$ make document
a/roopkotha$ ls docs/doxygen/html/
a/roopkotha$ firefox docs/doxygen/html/
Historic versions are the specific commits tagged to be addressed by name. They may be used for releasing software or to address a specific feature.
- QtBasedV0:2842669c29e2d075e2a82c2ee5ae2f8850ef5298
Enjoy !