80 Commits

Author SHA1 Message Date
Michael Tesch 658d20162c add TB_LIBSTD, const char * -> TBStr &, fix lib build (#16)
- added an option and some code for better libc++ interoperability,
  mainly auto-conversion of TBStr <-> std::string.
- changed some function args from (const char *) to (const TBStr &)
- be clear about TBID vs CTBID
- fix some build stuff, working toward eliminating build.sh
2019-11-28 13:25:48 +01:00
Michael Tesch b950317192 Hb skin (#15)
* HB documentation, fixed an nsvg bug

* fix emscripten demo builds

* fix func sig for win/glfw TBDebutOut()
2019-11-22 17:36:17 +01:00
michael tesch 99f031964b build cleanup, warning cleanup 2019-11-16 21:35:52 +01:00
Michael Tesch 964e1b41ed Hb android fix (#12)
* remove TBSystem::GetRoot.  fix glew header

* make runtime debug info an indepedent setting

* fix IOS and macos high-dpi

* fix win+sdl2 combo

* try to auto detect what can be make-alld

* rework resource file functions for android

* fix android assets, actually runs now
2019-11-14 23:14:49 +01:00
Michael Tesch c23159df2b Hb cmake2 (#11)
* remove TBSystem::GetRoot.  fix glew header

* make runtime debug info an indepedent setting

* windows build on travis

* fix IOS and macos high-dpi

* fix win+sdl2 combo

* try to auto detect what can be make-all'd
2019-11-14 16:59:54 +01:00
michael tesch 435c52d6d1 fix osx build on travis 2019-11-13 23:56:42 +01:00
michael tesch e4d66f9454 get Demo working on iOS 2019-11-13 21:04:29 +01:00
michael tesch 54898c2e30 makefile cleanu, fix win travis? 2019-11-13 19:42:00 +01:00
michael tesch b48b164672 cleanup signed build for iOS & macOS 2019-11-13 19:37:17 +01:00
Michael Tesch 00933a86e9 Hb cmake cleanup (#10)
* cleanup build system, modernize cmake

* build glfw and sdl2, w/ or w/o freetype

* fix android demo build

* win32 with CPack has PACKAGE target now

* added GLEW for windows

* bump to SDL2.0.10. fixes for building as subdir

* constexpr is always available these days.

* cleanup getwd() warning. add rpm to ubuntu packages

* dont use add_compile_definitions() for cmake, too new

* add rpm package to travis

* gh release packages

* build demo target on windows

* see if defines not working on winsodw
2019-11-12 15:45:00 +01:00
Michael Tesch 02dad32701 dont defaul to system_linux on windows 2019-11-07 16:47:15 +01:00
Michael Tesch e1b331eaca bump glfw version to 3.3, minor cmake cleanups 2019-11-07 16:06:13 +01:00
Michael Tesch affca5bc42 more build type cleanup 2019-11-07 15:53:26 +01:00
Michael Tesch 5ff2f27581 rework glfw and sdl2 libraries, add glfw emscripten build option 2019-11-07 15:35:46 +01:00
michael tesch 965fc73a87 build sdl2 properly as a subdirectory 2019-11-07 13:19:29 +01:00
Michael Tesch 0ef38ed632 added a distclean target to root Makefile 2019-03-20 15:24:51 +01:00
Michael Tesch ab219147b1 cleanup cmake build & dependency situation 2019-01-30 16:43:32 +01:00
Michael Tesch ee308dcfb3 emscripben builds 2019-01-24 23:12:45 +01:00
Michael Tesch 558d86d4e1 abstracting backend more 2019-01-24 12:36:21 +01:00
Michael Tesch 62545b85b1 default to demo_in_src OFF 2019-01-23 22:12:25 +01:00
Emil Segerås 902e0ba2ee Removed old Makefile
Rely completely on cmake for linux & macosx
2014-07-28 14:28:00 +02:00
Emil Segerås 7a2467a0d9 Fixed linking on osx with glfw 3.0.4. 2014-04-26 20:15:51 +02:00
Emil Segerås d6c9c0b720 Moved GLFW defines to makefile (linux/mac). 2014-04-21 14:45:34 +02:00
Emil Segerås 87e6f55feb Moved all source files.
Perhaps all includes should also have path added, like "tb/tb_foo.h",
but i'll save this for later.
2014-01-16 21:05:29 +01:00
Emil Segerås c3b3b3fe0c Moved animation files to tinkerbell core. 2014-01-07 21:26:01 +01:00
Emil Segerås 040ad1a34b Renamed tinkerbell.cpp/h to tb_core.cpp/h 2014-01-06 12:35:02 +01:00
Emil Segerås 7eb2e33bcd Moved misc classes to dedicated files. 2014-01-05 14:29:26 +01:00
Emil Segerås b0e83a9673 Support for node references and conditions. Fixes #1.
Also fixed compact parsing of colors without quotes.
2013-12-27 13:27:33 +01:00
Emil Segerås 82761e9628 Moved stb_image to thirdparty subfolder. 2013-12-08 13:49:24 +01:00
Emil Segerås 9828e8f37b Updated project files to new glfw path. 2013-12-08 13:24:02 +01:00
Emil Segerås 1ef4cbddf0 Fixed typo in makefile. 2013-10-19 06:58:56 +02:00
Emil Segerås dfb578e89a Refactorized batching into new TBRendererBatcher.
So it can serve many renderer backends.
2013-10-09 07:14:57 +02:00
Emil Segerås b5d70cd4ea Renamed TBParser.h -> tb_parser.h.
Now all source file names are consistent!
2013-10-01 19:57:16 +02:00
Emil Segerås b466b915ed Moved & renamed parser/TBNodeTree.h to tb_node_tree.h.
It's not part of the parser at all.
2013-10-01 08:10:12 +02:00
Emil Segerås f294f85afc Added option to create missing nodes on get. 2013-09-21 20:51:03 +02:00
Emil Segerås 918c43bf57 Added TBRegion.
Should be useful for a lot of stuff.
2013-08-28 07:48:01 +02:00
Emil Segerås 3555d89ee3 Compilefix for osx with glfw 3.0.1. 2013-08-09 10:07:15 +02:00
Emil Segerås 1660f57197 Updated to glfw 3.0.1 and fixed compilation errors. 2013-08-07 20:24:29 +02:00
Emil Segerås 639ecc2ae7 Added DEBUG=YES option to the Makefile. 2013-07-29 19:39:29 +02:00
Emil Segerås c103288e88 Fixed linker error on some linux systems. 2013-07-17 12:44:27 +02:00
Emil Segerås 8c25e04e39 Major improvements to pointer/touch input:
List of changes:
-Refactorized virtual scroll methods and introduced virtual GetScrollInfo.
-Added TBScroller to do slow down scroll after panning.
-Added TBScrollerSnapListener for snapped smooth scrolling.
-Added keyboard scroll support in TBScrollContainer and TBSelectList.
-Added possibility to cancel EVENT_TYPE_CLICK for current touch (stopping scroll should not cause click)
-Added flag to TBWidgetEvent to distinguish cursor base pointer events from touch events (Fixes issue #2).
 --Pan TBEditField on touch pointer events instead of doing selection scroll.
 --Touch events should not result in setting the hover state automatically.
2013-07-10 21:03:44 +02:00
Emil Segerås aa3001cc9b Runtime debug settings:
-Moved config defines and debug defines to dedicated files.
-Made debug settings slightly more handy (change stuff runtime instead of toggling defines and recompile everything).
2013-06-15 21:16:41 +02:00
Emil Segerås a073e5fca3 Changes to dimensions handling:
- Don't switch TBValue type when going from string to number (preserves numbers unit).
 - Fixed so parser handles numbers with units correctly.
 - Removed TBPx16. Everything is converted to pixels anyway and it was inconsistently used.
2013-03-04 18:28:41 +01:00
Emil Segerås b07606013f Moved TBMenuWindow to separate file, and split it up into TBMenuWindow and TBPopupWindow. 2013-03-04 18:14:37 +01:00
Emil Segerås 547d4594b9 Changed the type system implementation.
- Moved the type code our from TBWidget to new TBTypedObject.
- Work with template generated unique class id, instead of using strcmp on class names.
- Use template functions similar to dynamic_cast.
- Added unit tests.
2013-01-19 21:33:29 +01:00
Emil Segerås 18dd588552 Made it possible to set font from resource.
Also added unit tests for TBPx and TBColor.
2012-12-30 16:11:46 +01:00
Emil Segerås eaa7bb83c0 Implemented clipboard support for linux & mac using glfw. 2012-11-14 19:48:21 +01:00
Emil Segerås 9a7968cc07 Move demo & integration files to more suitable folders. 2012-11-13 18:25:41 +01:00
Emil Segerås 1451647d93 Separate the demo code from the demo integration and renderer. 2012-11-13 18:24:59 +01:00
Emil Segerås 26be187db1 Added edge fadeout to editfields too and moved to util file. 2012-11-11 10:49:27 +01:00