Mercurial > malikania
diff examples/js-font/main.cpp @ 215:268b66d72ec0 default tip @
misc: remove Javascript bindings, closes #2402
author | David Demelier <markand@malikania.fr> |
---|---|
date | Thu, 10 Oct 2019 13:52:57 +0200 |
parents | e2574aa8301d |
children |
line wrap: on
line diff
--- a/examples/js-font/main.cpp Sun Sep 01 06:53:48 2019 +0200 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,80 +0,0 @@ -/* - * main.cpp -- test Font (JavaScript binding) - * - * Copyright (c) 2013-2018 David Demelier <markand@malikania.fr> - * - * Permission to use, copy, modify, and/or distribute this software for any - * purpose with or without fee is hereby granted, provided that the above - * copyright notice and this permission notice appear in all copies. - * - * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES - * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF - * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR - * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES - * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN - * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF - * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. - */ - -#include <chrono> -#include <iostream> -#include <thread> - -#include <malikania/locator.hpp> - -#include <malikania/client/loader.hpp> - -#include <malikania/client/js/font_js_api.hpp> -#include <malikania/client/js/loader_js_api.hpp> -#include <malikania/client/js/window_js_api.hpp> -#include <malikania/client/js/painter_js_api.hpp> - -using namespace std::chrono_literals; - -using namespace mlk; -using namespace mlk::client::js; -using namespace mlk::client; -using namespace mlk::js::duk; - -void basic(duk_context* ctx) -{ - const auto ret = duk_peval_string(ctx, - "w = new Malikania.Window();" - "p = new Malikania.Painter(w);" - "f = new Malikania.Font('DejaVuSans.ttf', 10);" - "p.setDrawingColor('lightskyblue');" - "p.clear();" - "s = 'The world is Malikania.';" - "c = f.clip(s);" - "p.setDrawingColor('white');" - "f.draw(p, s, { x: 320 - (c.width / 2), y: 240 - (c.height / 2) });" - "p.present();" - ); - - if (ret != 0) - throw get_stack(ctx, -1); - - std::this_thread::sleep_for(3s); -} - -int main() -{ - try { - directory_locator locator(CMAKE_CURRENT_SOURCE_DIR "/resources"); - client::loader loader(locator); - context ctx; - - duk_push_object(ctx); - duk_put_global_string(ctx, "Malikania"); - - load_font_api(ctx); - load_window_api(ctx); - load_painter_api(ctx); - - put(ctx, loader); - basic(ctx); - } catch (const std::exception& ex) { - std::cerr << ex.what() << std::endl; - return 1; - } -}