Pietro Gagliardi
3cc2a06147
Added font matching to the OS X backend.
2016-01-09 17:41:05 -05:00
Pietro Gagliardi
dec34670bb
Fixed keyboard events not working on OS X.
2016-01-09 15:05:19 -05:00
Pietro Gagliardi
a826fd7516
Wrote the text drawing code on Windows. Now to build and test.
2016-01-09 01:07:48 -05:00
Pietro Gagliardi
5365453c19
Tried to figure out the traits stuff for myself. I can't quite do that when it has no effect :v
2016-01-08 17:13:31 -05:00
Pietro Gagliardi
11a3fcfad0
Fixed the drawing shenanigans.
2016-01-08 13:51:39 -05:00
Pietro Gagliardi
94883ed620
Kinda sorta fixed the text rendering stuff.
2016-01-08 12:49:52 -05:00
Pietro Gagliardi
4c12934992
Fixed the compiler errors in the previous commit. Things aren't quite right yet.
2016-01-08 10:14:09 -05:00
Pietro Gagliardi
e7a68893e2
Filled in the rest of the beginning of the Core Text implementation.
2016-01-08 02:08:26 -05:00
Pietro Gagliardi
9fc92cf96b
Started doing the Core Text text code. I am completely lost on text styles.
2016-01-07 21:51:37 -05:00
Pietro Gagliardi
4f2dbe2662
Really fixed the NSMapTable nonsense now. Added a TODO to go through the rest of the code for the same.
2016-01-07 16:01:11 -05:00
Pietro Gagliardi
9cfc133481
"Fixed" the weird crashes and fixed the makefile failures.
2016-01-07 15:43:35 -05:00
Pietro Gagliardi
499a93e32e
Completely rewrote the OS X map system to use NSMapTable correctly and hide the details behind more wrapper functions to prevent further mass rewrites; this fixes most of the crashing issues on OS X. The one with package ui still stands...
2016-01-07 14:41:20 -05:00
Pietro Gagliardi
f9b940f698
More TODOs.
2016-01-06 20:39:47 -05:00
Pietro Gagliardi
6a15e23897
Set up saner handling of sonames at build time.
2016-01-05 11:51:36 -05:00
Pietro Gagliardi
24f7c2d803
Merge branch 'master' of github.com:andlabs/libui
2016-01-04 15:49:20 -05:00
Pietro Gagliardi
9e8e09f262
Added an explicit check for ARC.
2016-01-02 09:22:24 -05:00
Florent Clairambault
e24c8f6440
Merge remote-tracking branch 'upstream/master'
2016-01-02 13:27:08 +01:00
Florent Clairambault
bdded52f5e
Mac Os X install rule: Tiny fix.
2016-01-01 23:20:49 +01:00
Florent Clairambault
c204e47b72
Various fixes around makefiles
...
* $PREFIX is uppercase (I have no idea why I put it lowercase before).
* "install" rules is OS specific and moved to new OS specific files. So that they can be included last.
* "examples" rule defines the list of examples to execute.
* Travis launches the "test" rule.
2016-01-01 23:19:14 +01:00
Pietro Gagliardi
1b3d303cbe
More TODOs.
2015-12-27 22:55:41 -05:00
Pietro Gagliardi
a1beccd63d
Pinpointed the issues with mouseExited:. A TODO for now; this is gonna be murder to figure out :)
2015-12-27 22:19:59 -05:00
Pietro Gagliardi
66ad8066ea
Improved the exited debugging.
2015-12-27 17:13:57 -05:00
Pietro Gagliardi
93a9847b59
Added debugging code for mouseExited:. In El Capitan it's not working in scrolled views...
2015-12-27 16:15:18 -05:00
Pietro Gagliardi
0ec70f9111
Removed libgmalloc. That was a mistake; it slows down callbacks tremendously on DEFAULT SETTINGS.
2015-12-27 15:54:53 -05:00
Pietro Gagliardi
c31d06c254
Quick change for now: added libgmalloc to the OS X build so I can debug potential memory allocation issues. I think something is wrong in the mouseExited logic...
2015-12-27 15:19:14 -05:00
Pietro Gagliardi
3b916fa749
Stubbed out the text drawing functions on OS X.
2015-12-27 11:32:47 -05:00
Pietro Gagliardi
a9419e0cc4
Oops, I completely overlooked the Core Text Font Manager Reference, which would have told me that CTFontManagerCopyAvailableFontFamilyNames() was what I was looking for. Yay; the font families stuff now works on OS X as well!
2015-12-23 00:58:06 -05:00
Pietro Gagliardi
bcc17a4e6d
Attempted to write the font enumeration code for OS X. It does not work yet (memory management is borked and duplicate removal does not work, period).
2015-12-22 21:48:26 -05:00
Pietro Gagliardi
33d4217450
Fixed rpath shenanigans on OS X.
2015-12-19 16:46:04 -05:00
Pietro Gagliardi
c095d80098
Implemented mouse tracking on OS X.
2015-12-19 16:35:18 -05:00
Pietro Gagliardi
35f2cc55da
Fixed compiler errors. Now to implement mouse tracking.
2015-12-19 16:15:50 -05:00
Pietro Gagliardi
a0c3c80393
Finished migrating OS X uiArea to the new scroll system. Now to compile and test. Crossed events come next.
2015-12-19 15:33:54 -05:00
Pietro Gagliardi
8cf437211d
Dropped ALL the custom scrolling crap from darwin/area.m. We're going back to NSScrollView baby!
2015-12-19 15:13:44 -05:00
Pietro Gagliardi
327abd04b0
Re-established the OS X build.
2015-12-11 18:58:27 -05:00
Pietro Gagliardi
70886e4ade
Moved the old build files away. Yes that's right folks, we're redoing the build system *again*! Isn't that *fun*?
2015-12-10 18:49:50 -05:00
Pietro Gagliardi
529620eb47
Updated a TODO.
2015-12-09 09:07:00 -05:00
Pietro Gagliardi
c5a5038382
Fixed the uiMultilineEntry on OS X so that it now actually displays something. More TODOs.
2015-12-09 09:05:28 -05:00
Pietro Gagliardi
11fe5deb73
More NSTextView work.
2015-12-08 21:09:23 -05:00
Pietro Gagliardi
ea6e903069
TRIED TO add uiMultilineEntry on OS X. It does not quite work yet.
2015-12-08 13:06:26 -05:00
Pietro Gagliardi
f77955aefb
Added uiQueueMain() (basically g_idle_add()) and implemented it on all platforms except Haiku. A test to come. After this we can start rewriting the Go package ui at long last.
2015-12-04 23:42:03 -05:00
Pietro Gagliardi
8084041139
Removed uiAreaHandler.RedrawOnResize(); Direct2D requires us to always redraw on resize (see previous commit). Added windows/amd64 to the example makefiles and updated them to use libui.xxx instead of new.xxx.
2015-12-04 21:04:51 -05:00
Pietro Gagliardi
8adb1a25a2
More TODOs.
2015-11-28 12:16:05 -05:00
Pietro Gagliardi
bf6fabef21
Implemented the dialog stuff on OS X.
2015-11-28 12:09:14 -05:00
Pietro Gagliardi
ff9dcc6d58
Wrote the Haiku allocator and fixed some leftovers in other allocators.
2015-11-17 12:51:51 -05:00
Pietro Gagliardi
c40e80d5a5
Added C++ to the build and started writing the actual Haiku code. I think this isg oing to have to require a GCC 4 hybrid...
2015-11-17 11:49:23 -05:00
Pietro Gagliardi
f19d3cd0c7
More makefile work.
2015-10-16 22:49:54 -04:00
Pietro Gagliardi
790edf0df8
Assembled a new make system. Not quite working the way I'd like yet, but definitely a start.
2015-10-16 20:55:09 -04:00
Pietro Gagliardi
ab97e26efc
Moved all the common stuff in a new folder common/. This is part of the makefile simplification.
2015-10-16 18:31:14 -04:00
Pietro Gagliardi
b4cbf79cbb
Implemented dashing on OS X.
2015-10-16 11:05:08 -04:00
Pietro Gagliardi
191c026d29
And implemented on OS X.
2015-10-14 08:50:56 -04:00
Pietro Gagliardi
2cbbc6c69d
Removed the DPI fields from uiAreaDrawParams. We no longer worry about DPI.
2015-10-13 19:44:16 -04:00
Pietro Gagliardi
c3fdd3050d
Implemented clipping on OS X.
2015-10-13 13:53:24 -04:00
Pietro Gagliardi
c6cdabe20d
Preparation for proper, extensible state tracking and clipping on Windows.
2015-10-12 21:11:42 -04:00
Pietro Gagliardi
de3ccecd5b
Implemented skewing. Will do the test now.
2015-10-12 07:58:07 -04:00
Pietro Gagliardi
46e3fee40d
Added a center point to scaling transforms. Fixed rotations on GTK+.
2015-10-12 01:43:12 -04:00
Pietro Gagliardi
5792ac76fc
Work on more tests. Scaling will need a center point for this test to work correctly...
2015-10-12 01:18:08 -04:00
Pietro Gagliardi
41a33a1aa1
Fixed the failing test.
2015-10-12 00:27:34 -04:00
Pietro Gagliardi
f4b0e7e35e
Added negative arcs to the OS X backend. Now we have a crash in one of the tests; still debugging.
2015-10-11 23:48:40 -04:00
Pietro Gagliardi
b09cdb5137
Made 90° point toward y=+∞.
2015-10-11 20:24:06 -04:00
Pietro Gagliardi
40acbd8fa0
Did the matrix stuff on OS X. Now we can implement more tests.
2015-10-11 13:53:47 -04:00
Pietro Gagliardi
3a932d281b
Fixed arcs on the OS X backend too. Woo!
2015-10-10 11:04:15 -04:00
Pietro Gagliardi
73d77ef38b
Capped sweeps at 2π radians.
2015-10-09 22:00:41 -04:00
Pietro Gagliardi
2c7ed07747
Changed the arc functions to take a start angle and a sweep amount instead of a start angle and an end angle. This makes it easier to reason about sweeps > 2π radians.
2015-10-09 21:51:43 -04:00
Pietro Gagliardi
844015f71a
Fixed typos in the test program that in turn fixed the gradients; also fixed a few Objective-C-isms in the OS X backend.
2015-10-09 18:49:41 -04:00
Pietro Gagliardi
7075bea0f5
Added uiAreaQueueRedrawAll() and implemented on all platforms. NOW we can focus exclusively on the test suite.
2015-10-09 15:27:57 -04:00
Pietro Gagliardi
5da68c64b3
Implemented uiComboboxSetSelected() on OS X and Windows; fixed editable combobox minimum widths on OS X.
2015-10-09 14:39:26 -04:00
Pietro Gagliardi
56d0d35f83
More TODOs.
2015-10-09 12:34:26 -04:00
Pietro Gagliardi
4deb0f364c
Migrated the OS X uiArea back into main.
2015-10-09 12:33:45 -04:00
Pietro Gagliardi
8fb5d1212f
Implemented the new uiCombobox behavior on OS X.
2015-10-08 16:32:12 -04:00
Pietro Gagliardi
54332b90fb
Finally merged out the redo folder.
2015-09-02 13:48:06 -04:00
Pietro Gagliardi
269e99aec3
Removed the old OS X code.
2015-08-27 11:56:07 -04:00
Pietro Gagliardi
3d79ccf24c
Migrated container.m. This will behave similarly to the GTK+ backend; bin.m will come next.
2015-07-29 12:17:12 -04:00
Pietro Gagliardi
2e4af8a123
More OS X uiControl work... kinda. At least all the controls that were in previously are now back in; that just leaes the new ones now.
2015-07-24 15:42:10 -04:00
Pietro Gagliardi
62b5365577
More OS X uiControl work.
2015-07-22 23:20:01 -04:00
Pietro Gagliardi
d5744df476
More OS X uiControl work, finally.
2015-07-22 23:03:26 -04:00
Pietro Gagliardi
4234b47f62
More OS X uiControl work.
2015-07-11 22:56:43 -04:00
Pietro Gagliardi
89f8bd8643
Migrated OS X uiButton. We're off to a meh start...
2015-07-11 20:28:04 -04:00
Pietro Gagliardi
9f1ef9eaa1
Migrated the OS X uiWindow code back, modernizing it in the process. Also fixed a latent bug in the GTK+ uiWindow code.
2015-07-03 23:12:31 -04:00
Pietro Gagliardi
ed9e70c058
Started redoing the OS X port.
2015-07-02 16:09:57 -04:00
Pietro Gagliardi
a517beccae
Added uiContainerUpdate() calls to each SetMargined().
2015-05-11 12:42:13 -04:00
Pietro Gagliardi
2c9e63d8d2
Same as previous commits, but for uiContainer. We don't need to do these because everything that calls uiControlSetParent() (which should only ever be a uiContainer) should also be updating themselves afterward (or are about to be destroyed).
2015-05-11 12:20:41 -04:00
Pietro Gagliardi
df376a5e0b
Started to optimize container updating. Removed container updates from each new control set parent.
2015-05-11 12:16:28 -04:00
Pietro Gagliardi
c0c6b4fed6
Made all variables that refer to a tab page be called 'page'.
2015-05-10 21:22:22 -04:00
Pietro Gagliardi
e1e9dddfdd
Fixed some more warnings on the OS X backend. This also introduces realNSApp() and makes applicationClass global, which is important for fixing a few other TODOs (the setAppleMenu: one, for instance).
2015-05-10 14:27:25 -04:00
Pietro Gagliardi
ce96272f03
Fixed a bunch of warnings on the OS X backend.
2015-05-10 14:21:35 -04:00
Pietro Gagliardi
262ffb0bde
Migrated to uiBin on OS X and adjusted TODO.md.
2015-05-10 14:17:16 -04:00
Pietro Gagliardi
c062d2d0b5
Got rid of darwin/main.m and moved darwin/init.m in its place. The GTK+ backend won't need any of the should quit work; only the Quit item needs work and that shouldn't take too long. The Windows backend needs WM_QUERYENDSESSION support.
2015-05-09 10:24:07 -04:00
Pietro Gagliardi
2b83300e0b
Implemented the quitting logic on OS X. Now I can get rid of darwin/main.m and move darwin/init.m in its place.
2015-05-09 10:18:19 -04:00
Pietro Gagliardi
8032c24f74
Implemented the should quit logic on Mac OS X. The actual new quitting logic isn't in yet; that will wait for tests.
2015-05-09 10:05:24 -04:00
Pietro Gagliardi
3d714e03c1
Laid down the scaffolding for application termination on Mac OS X.
2015-05-09 00:37:24 -04:00
Pietro Gagliardi
86a4b0a7ba
More expository comments and TODOs.
2015-05-08 20:34:57 -04:00
Pietro Gagliardi
f47c8172e1
Implemented uninitMenus() on Mac OS X.
2015-05-08 20:31:19 -04:00
Pietro Gagliardi
2ec8fb8589
Fixed a typo.
2015-05-08 20:24:53 -04:00
Pietro Gagliardi
ada7608c14
Added menu tracking to the OS X backend. This is needed for uninitMenus().
2015-05-08 19:33:51 -04:00
Pietro Gagliardi
cf89124be5
Fixed allocation tracking on OS X.
2015-05-08 18:54:42 -04:00
Pietro Gagliardi
cc1491d1a7
More TODOs.
2015-05-08 18:02:02 -04:00
Pietro Gagliardi
c079e43784
Somewhat implemented uninitAlloc() on OS X.
2015-05-08 17:51:05 -04:00
Pietro Gagliardi
33f41d6c37
Implemented the allocation type stuff on OS X.
2015-05-08 17:29:36 -04:00
Pietro Gagliardi
27d6994bdc
Implemented stub uiUninit()s.
2015-05-07 22:32:17 -04:00
Pietro Gagliardi
6c9a122a7d
Changed the default uiWindowOnClosing() behavior. Decided to keep the int return.
2015-05-07 20:01:17 -04:00