mirror of https://github.com/YGGverse/Yoda.git
yggverse
4 months ago
16 changed files with 72 additions and 147 deletions
@ -0,0 +1,40 @@ |
|||||||
|
#include "app.hpp" |
||||||
|
#include "app/browser.hpp" |
||||||
|
|
||||||
|
int main( |
||||||
|
int argc, |
||||||
|
char * argv[] |
||||||
|
) { |
||||||
|
// Init database
|
||||||
|
SQLite::Database db( |
||||||
|
"database.sqlite3", |
||||||
|
SQLite::OPEN_READWRITE | SQLite::OPEN_CREATE |
||||||
|
); |
||||||
|
|
||||||
|
// Init application
|
||||||
|
auto app = Gtk::Application::create( |
||||||
|
"io.github.yggverse.Yoda" |
||||||
|
); |
||||||
|
|
||||||
|
// Init actions
|
||||||
|
app->add_action( |
||||||
|
"quit", |
||||||
|
[app] |
||||||
|
{ |
||||||
|
app->quit(); |
||||||
|
} |
||||||
|
); |
||||||
|
|
||||||
|
app->set_accel_for_action( |
||||||
|
"app.quit", |
||||||
|
"<Primary>q" |
||||||
|
); |
||||||
|
|
||||||
|
// Launch browser component
|
||||||
|
return app->make_window_and_run<app::Browser>( |
||||||
|
argc, |
||||||
|
argv, |
||||||
|
db, |
||||||
|
app |
||||||
|
); |
||||||
|
} |
@ -1,5 +1,6 @@ |
|||||||
#include <glibmm/refptr.h> |
#include <glibmm/refptr.h> |
||||||
#include <gtkmm/application.h> |
#include <gtkmm/application.h> |
||||||
|
#include <SQLiteCpp/SQLiteCpp.h> |
||||||
|
|
||||||
int main( |
int main( |
||||||
int argc, |
int argc, |
@ -1,17 +0,0 @@ |
|||||||
#include "database.hpp" |
|
||||||
#include "database/session.hpp" |
|
||||||
|
|
||||||
using namespace lib; |
|
||||||
|
|
||||||
Database::Database( |
|
||||||
const char * filename |
|
||||||
) { |
|
||||||
status = sqlite3_open( |
|
||||||
filename, |
|
||||||
&connection |
|
||||||
); |
|
||||||
|
|
||||||
session = new database::Session( |
|
||||||
connection |
|
||||||
); |
|
||||||
} |
|
@ -1,31 +0,0 @@ |
|||||||
#ifndef LIB_DATABASE_HPP |
|
||||||
#define LIB_DATABASE_HPP |
|
||||||
|
|
||||||
#include <sqlite3.h> |
|
||||||
|
|
||||||
namespace lib |
|
||||||
{ |
|
||||||
namespace database |
|
||||||
{ |
|
||||||
class Session; |
|
||||||
} |
|
||||||
|
|
||||||
class Database |
|
||||||
{ |
|
||||||
int status; |
|
||||||
|
|
||||||
char * error; |
|
||||||
|
|
||||||
sqlite3 * connection; |
|
||||||
|
|
||||||
public: |
|
||||||
|
|
||||||
database::Session * session; |
|
||||||
|
|
||||||
Database( |
|
||||||
const char * filename |
|
||||||
); |
|
||||||
}; |
|
||||||
} |
|
||||||
|
|
||||||
#endif // LIB_DATABASE_HPP
|
|
@ -1,22 +0,0 @@ |
|||||||
#include "session.hpp" |
|
||||||
|
|
||||||
using namespace lib::database; |
|
||||||
|
|
||||||
Session::Session( |
|
||||||
sqlite3 * connection |
|
||||||
) { |
|
||||||
status = sqlite3_exec( |
|
||||||
connection, |
|
||||||
R"SQL( |
|
||||||
CREATE TABLE IF NOT EXISTS `session` |
|
||||||
( |
|
||||||
`id` INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, |
|
||||||
`time` INTEGER NOT NULL, |
|
||||||
`request` VARCHAR(1024) |
|
||||||
) |
|
||||||
)SQL", |
|
||||||
nullptr, |
|
||||||
nullptr, |
|
||||||
&error |
|
||||||
); |
|
||||||
} |
|
@ -1,24 +0,0 @@ |
|||||||
#ifndef LIB_DATABASE_SESSION_HPP |
|
||||||
#define LIB_DATABASE_SESSION_HPP |
|
||||||
|
|
||||||
#include <sqlite3.h> |
|
||||||
|
|
||||||
namespace lib::database |
|
||||||
{ |
|
||||||
class Session |
|
||||||
{ |
|
||||||
int status; |
|
||||||
|
|
||||||
char * error; |
|
||||||
|
|
||||||
sqlite3 * connection; |
|
||||||
|
|
||||||
public: |
|
||||||
|
|
||||||
Session( |
|
||||||
sqlite3 * connection |
|
||||||
); |
|
||||||
}; |
|
||||||
} |
|
||||||
|
|
||||||
#endif // LIB_DATABASE_SESSION_HPP
|
|
@ -1,41 +0,0 @@ |
|||||||
#include "main.hpp" |
|
||||||
#include "app/browser.hpp" |
|
||||||
#include "lib/database.hpp" |
|
||||||
|
|
||||||
int main( |
|
||||||
int argc, |
|
||||||
char * argv[] |
|
||||||
) { |
|
||||||
// Init profile database
|
|
||||||
const std::shared_ptr<lib::Database> DB( // @TODO
|
|
||||||
new lib::Database( |
|
||||||
"database.sqlite3" |
|
||||||
) |
|
||||||
); |
|
||||||
|
|
||||||
// Init app
|
|
||||||
const Glib::RefPtr<Gtk::Application> APP = Gtk::Application::create( |
|
||||||
"io.github.yggverse.Yoda" |
|
||||||
); |
|
||||||
|
|
||||||
APP->add_action( |
|
||||||
"quit", |
|
||||||
[APP] |
|
||||||
{ |
|
||||||
APP->quit(); |
|
||||||
} |
|
||||||
); |
|
||||||
|
|
||||||
APP->set_accel_for_action( |
|
||||||
"app.quit", |
|
||||||
"<Primary>q" |
|
||||||
); |
|
||||||
|
|
||||||
// Launch browser component
|
|
||||||
return APP->make_window_and_run<app::Browser>( |
|
||||||
argc, |
|
||||||
argv, |
|
||||||
APP |
|
||||||
// DB
|
|
||||||
); |
|
||||||
} |
|
Loading…
Reference in new issue