Andrea Blankenstijn
a54dc9c2b2
some comment edits, readme draft
2021-08-27 16:08:14 +02:00
Andrea Blankenstijn
d8f56e0e5f
Delete OpaqueStruct and use directly fancy pointers now that I know
...
how to set the deleter correctly.
2021-08-26 18:59:52 +02:00
Andrea Blankenstijn
5f341149fa
clang-format header sorting conf fix. Some spacing and order of
...
include/declaration changes.
2021-08-24 00:12:57 +02:00
Andrea Blankenstijn
299b39ad28
little tweaks here and there.
2021-08-24 00:10:09 +02:00
Andrea Blankenstijn
dc243a9fdf
little fixes here and there.
2021-08-24 00:00:28 +02:00
Andrea Blankenstijn
f6ae2c51e8
Comment a bit the code.
2021-08-23 23:50:14 +02:00
Andrea Blankenstijn
5020eab828
remove some asserts and use exceptions for the remaining ones.
2021-08-23 18:41:11 +02:00
Andrea Blankenstijn
0c0b03aeac
fix sdl include path
2021-08-23 00:00:57 +02:00
Andrea Blankenstijn
a19d2ea6bd
- mark as const every single read only variable.
...
- mark as const every pointer that can be const.
- in implementation mark const args passed by value that are meant to be read-only.
- wrap in a lambda complex initializations of (const) values.
- argument passing:
- pass by value arguments of cheap-to-copy types or meant to be copied
anyway.
- pass by (const) reference args not meant to outlive called
function scope and not cheap-to-copy.
- pass (const) pointers to (const) args when null is a valid option
and pointed data aren't expected to outlive function scope.
- use string_view for non-owned strings (not meant to outlive function
scope).
- use span for collection types like vector and arrays.
- fancy pointers passing:
- pass by value if a reference will be held:
- pass by const reference if a reference _may_ be hell.
- when no references are meant to be held:
- dereference the pointer to pass the pointed data by reference
if null is not an option.
- pass the underlying raw pointer if null is an option.
… and random subtle changes and fixes here and there that I forgot to mention.
2021-08-22 00:57:55 +02:00
Andrea Blankenstijn
76d319fb69
trash commit, style, small api changes (ref vs ptr) and who knows
2021-08-19 15:00:44 +02:00
Andrea Blankenstijn
6a14cd635d
almost finished work on interface-impl separation
2021-08-18 18:27:48 +02:00
Andrea Blankenstijn
eb777db6dd
layout interface-api separation
2021-08-17 12:10:41 +02:00
Andrea Blankenstijn
fbaabd5aa7
button interface-api separation
2021-08-17 12:08:38 +02:00
Andrea Blankenstijn
0eb300ceeb
caption interface-api separation
2021-08-17 11:39:07 +02:00
Andrea Blankenstijn
bb934d4f86
separate widget interface-implementation
2021-08-17 00:27:51 +02:00
Andrea Blankenstijn
d9eccc940a
rewrite how events are held
2021-08-16 23:13:59 +02:00
Andrea Blankenstijn
3458ca123b
pass by value vs by ref thing
2021-08-14 16:37:42 +02:00
Andrea Blankenstijn
6ba5d7fc1c
enable widget debug outline when BWIDGETS_DEBUG is defined
2021-08-14 12:06:21 +02:00
Andrea Blankenstijn
b11d574d9c
constructor style refactor
2021-08-14 11:53:51 +02:00
Andrea Blankenstijn
280575a0e2
make aligned layout orientation a template parameter.
2021-08-14 11:48:24 +02:00
Andrea Blankenstijn
50a324cc95
button border gradient lambda deduplication
2021-08-14 10:20:00 +02:00
Andrea Blankenstijn
151c502472
explicitly initialize value to shut up linter
2021-08-14 09:25:18 +02:00
Andrea Blankenstijn
f78fa82ae8
better smart ptr owner semantic
2021-08-12 23:27:09 +02:00
Andrea Blankenstijn
d7abc49d07
remove useless calls to Color::operator()
2021-08-12 16:38:55 +02:00
Andrea Blankenstijn
d78a6b0f0e
initialize static members in source file.
2021-08-12 16:04:02 +02:00
Andrea Blankenstijn
43dd6ab820
use raw ptr instead of fancy one when no references are kept after function
...
exit.
2021-08-12 15:55:47 +02:00
Andrea Blankenstijn
79f83abe3b
smart ptr and a bit of doc
2021-08-10 23:48:19 +02:00
Andrea Blankenstijn
e71a16208b
noexcept correctness intent
2021-08-08 16:04:33 +02:00
Andrea Blankenstijn
4f82826bbc
constness
2021-08-08 14:30:56 +02:00
Andrea Blankenstijn
cab6fa0cf4
wip general code improvement
2021-08-07 20:11:28 +02:00
Andrea Blankenstijn
2d4c6e3694
Extract linear and smoothstep functions. Minor tweaks.
2021-08-01 11:19:06 +02:00
Andrea Blankenstijn
13bdb970c0
config clang-tidy linter and fix code based on linting err/warn
2021-07-30 21:37:14 +02:00
Andrea Blankenstijn
3b6e900a22
format code with custom clang-format style
2021-07-29 16:06:03 +02:00
Andrea Blankenstijn
80576bdab8
fix memory leak in text rendering
2021-07-27 22:15:43 +02:00
Andrea Blankenstijn
55fbd59c36
half workaround to fix corner glitch in draw_rect and minor changes
2021-07-26 23:48:04 +02:00
Andrea Blankenstijn
369e1c1f1b
'fix' input widget size and set back dbg outline to vp boundaries
2021-07-24 22:07:28 +02:00
Andrea Blankenstijn
ef294d67fc
rewrite template to discard pointers
2021-07-24 08:28:51 +02:00
Andrea Blankenstijn
cc0bed2287
fix numeric input initial value to be in range
2021-07-23 22:32:56 +02:00
Andrea Blankenstijn
4b87af7bc4
various changes and fixes
2021-07-23 20:08:52 +02:00
Andrea Blankenstijn
94f4536f45
fix layout margins
2021-07-20 15:05:14 +02:00
Andrea Blankenstijn
ec0d85b97a
remove unused caption vertical alignment as we use all viewport height
2021-07-20 12:29:17 +02:00
Andrea Blankenstijn
30c4205dab
some fixes and working sdl wrapper
2021-07-19 23:50:50 +02:00
Andrea Blankenstijn
dd3ff9358a
big hierarchy refactor, some little changes, add Font class
2021-07-18 18:26:12 +02:00