Pietro Gagliardi
b957558ef4
Even more TODO resolution in uiDateTimePicker on GTK+.
2016-05-22 19:40:56 -04:00
Pietro Gagliardi
f0011d6227
Started resolving TODOs in the GTK+ backend, marking some LONGTERM. In particular, uiDateTimePicker no longer will be localized, as there doesn't seem to be a way to get that info out.
2016-05-22 19:17:42 -04:00
Pietro Gagliardi
07cd03452d
Implemented non-wrapping multiline entries in GTK+ and started implementing them in OS X.
2016-05-22 14:20:54 -04:00
Pietro Gagliardi
5a4b6aa6f0
Switched from using M_PI to a named constant uiPi.
2016-05-22 12:00:44 -04:00
Pietro Gagliardi
1c2acf59a3
Implemented uiControlDestroy() for uiRadioButtons on GTK+. Fixes #40 .
2016-05-21 22:42:55 -04:00
Pietro Gagliardi
5891b764cb
Forgot to take a reference on GtkWindows; this led to weird GObject warnings on the command line when closing a window. Update #40 .
2016-05-21 22:36:21 -04:00
Pietro Gagliardi
0ede964a3d
TODO updates.
2016-05-16 09:58:16 -04:00
Pietro Gagliardi
b47689090e
Implemented uiColorButton on GTK+.
2016-05-15 23:18:11 -04:00
Pietro Gagliardi
6a81921c1a
More TODOs.
2016-05-15 19:26:58 -04:00
Pietro Gagliardi
c82942a81b
More TODO stuff.
2016-05-15 19:15:00 -04:00
Pietro Gagliardi
6d2d977363
Cleaned up the debugging infrastructure on Windows (we stopped using the strsafe functions so there's no useful failure case anymore) and implemented the new one.
2016-05-13 22:05:02 -04:00
Pietro Gagliardi
0205f2e5ca
Got rid of complain() on GTK+.
2016-05-13 21:00:12 -04:00
Pietro Gagliardi
94587b660f
Some TODO resolution and stale TODO removal.
2016-05-13 17:54:10 -04:00
Pietro Gagliardi
02fbb5a559
A lot more drawing migration on Windows. With that done, though, we can finally do this...
2016-05-05 21:49:50 -04:00
Pietro Gagliardi
4e53551e06
Split unix/draw.c into a bunch of smaller files.
2016-05-05 18:23:54 -04:00
Pietro Gagliardi
eff0532760
Some TODO resolution/stale TODO elimination.
2016-05-05 17:58:26 -04:00
Pietro Gagliardi
faeae31acc
Cleaned up unix/box.c and made it not use struct child or ptrArray.
2016-05-05 14:04:07 -04:00
Pietro Gagliardi
f10c760b00
More TODOs.
2016-05-04 23:41:25 -04:00
Pietro Gagliardi
440e8fa47f
Integrated the GTK+ date/time picker. FINALLY!
2016-05-04 23:35:11 -04:00
Pietro Gagliardi
a11e939b34
Wrote the finishing touches on the dptwidget.c needed for the final date-time picker.
2016-05-04 23:28:46 -04:00
Pietro Gagliardi
4e11b6efe1
Fixed build errors. It works! (Except for radiobuttons now needing a destroy; that'll come later.) Next up... Windows. Yay...
2016-04-25 20:34:12 -04:00
Pietro Gagliardi
d65a263bb4
Whoops, forgot unix/area.c. Now let's try.
2016-04-25 20:19:57 -04:00
Pietro Gagliardi
3f16e28d1b
Finished the conversions. Let's hope it works!
2016-04-25 20:15:02 -04:00
Pietro Gagliardi
289ca0ed78
More conversion work, including getting rid of a few now-unnecessary function declarations.
2016-04-25 20:09:20 -04:00
Pietro Gagliardi
01912877ce
Converted the basic GTK+ controls. Now for the containers.
2016-04-25 20:00:25 -04:00
Pietro Gagliardi
85ee2e93dd
More ui_unix.h and unix/control.c work. NOW we're ready to migrate the controls.
2016-04-25 19:45:05 -04:00
Pietro Gagliardi
dda30cdb3c
Started the new uiControl infrastructure.
2016-04-24 19:22:21 -04:00
Pietro Gagliardi
bc0a1d43c9
Applied the new type system to the Windows backend and fixed some more C++ stupidity related to it.
2016-04-24 17:38:48 -04:00
Pietro Gagliardi
96e8f1f8ea
Did the rest of the object changes on GTK+.
2016-04-24 16:59:46 -04:00
Pietro Gagliardi
f60178798f
Removed common type code.
2016-04-24 15:08:48 -04:00
Pietro Gagliardi
7b0f930185
Removed all the type function declarations from all the controls. More TODOs.
2016-04-24 15:04:36 -04:00
Pietro Gagliardi
e6effa042d
Implemented the new fontbutton routines on GTK+.
2016-04-20 13:59:59 -04:00
Pietro Gagliardi
8493bc3c5d
Fixed the GTK+ SetColor() issues. It works!
2016-04-20 01:14:46 -04:00
Pietro Gagliardi
78772ca62d
Fixed most compiler errors and warnings.
2016-04-19 23:58:36 -04:00
Pietro Gagliardi
6b6d6861c1
Wrote the SetColor() for GTK+. Now to test.
2016-04-19 23:52:44 -04:00
Pietro Gagliardi
6fdbd8d68f
Implemented the chars-to-bytes algorithm on the GTK+ code. Now to finally add attributes to uiDrawTextLayout!
2016-04-19 14:57:15 -04:00
Pietro Gagliardi
c2d165af94
Implemented the uiDrawTextFont direct from system font-making functions on other platforms.
2016-04-19 11:23:05 -04:00
Pietro Gagliardi
ccfa3d41a3
More work on the initial font and showing styles. I have a feeling my current approach is a mistake.
2016-04-18 13:32:48 -04:00
Pietro Gagliardi
84fc5dafaa
More TODOs.
2016-04-18 10:22:36 -04:00
Pietro Gagliardi
23ec771c86
Removed uiFontDescriptor.SmallCaps; on Windows this has to be applied to layouts.
2016-04-15 14:23:16 -04:00
Pietro Gagliardi
0bc140cd46
Dropped uiDrawTextGravity. That has to do with vertical text, which we can both abstract into a higher level API and can't do yet because DirectWrite simply does not support vertical text on Windows 7 for reasons that escape logical thought.
2016-04-15 00:24:27 -04:00
Pietro Gagliardi
042b08f31c
Implemented uiFontButton on GTK+.
2016-04-14 15:55:04 -04:00
Pietro Gagliardi
7f2194c383
Typo fixes in the previous commit.
2016-01-24 21:50:10 -05:00
Pietro Gagliardi
ab0230b428
Added a function for scrolling uiAreas. Implemented on OS X; stubbed elsewhere.
2016-01-24 21:41:34 -05:00
Pietro Gagliardi
febb37700a
"Fixed" the FreeBSD build.
2016-01-22 13:08:36 -05:00
Pietro Gagliardi
b0621a6b1f
Implemented the new multiline text stuff on GTK+.
2016-01-16 15:59:34 -05:00
Pietro Gagliardi
9442ebd53a
More TODOs.
2016-01-13 15:59:45 -05:00
Pietro Gagliardi
6394446461
Fixed text rendring on GTK+.
2016-01-13 15:48:39 -05:00
Pietro Gagliardi
621d75695c
More (serious) TODOs.
2016-01-13 14:34:28 -05:00
Pietro Gagliardi
776be61c45
Implemented metrics on Pango.
2016-01-12 23:33:50 -05:00
Pietro Gagliardi
f9b6eba7df
Implemented the new font stuff on GTK+.
2016-01-12 16:59:13 -05:00
Pietro Gagliardi
ca514d94d1
Set up a proper, formal layout and attirbute system. No attributes right now, but initial font style is in. Implemented it on GTK+.
2016-01-07 18:37:43 -05:00
Pietro Gagliardi
6a15e23897
Set up saner handling of sonames at build time.
2016-01-05 11:51:36 -05:00
Florent Clairambault
e24c8f6440
Merge remote-tracking branch 'upstream/master'
2016-01-02 13:27:08 +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
Florent Clairambault
cfcbe9859f
Tiny warning fix.
...
Why not switch to -Werror by the way ?
2016-01-01 01:45:32 +01:00
Pietro Gagliardi
353afcd464
Added the Language field to the text styles list.
2015-12-24 22:31:32 -05:00
Pietro Gagliardi
6ef404c2dd
Implemented the basic uiDrawText() function on GTK+. It looks like I missed some PangoAttributes; I'll add those in next.
2015-12-24 19:48:57 -05:00
Pietro Gagliardi
5d47fcab5a
Implemented the font family enumerator on GTK+.
2015-12-22 19:17:27 -05:00
Pietro Gagliardi
2ce0c810f1
Added a test of mouse events in a scrolled uiArea. Removed some dead code from the GTK+ uiArea. Now to make the changes to the Windows and OS X backends!
2015-12-17 21:21:29 -05:00
Pietro Gagliardi
cc7dd186e5
Fixed runtime issues with uiArea on GTK+. It works!
2015-12-17 19:59:33 -05:00
Pietro Gagliardi
78b714c238
Oh neat, only one compiler error. Now to rewrite the tests.
2015-12-17 19:19:08 -05:00
Pietro Gagliardi
e167b08fdb
Finished reimplementing the GTK+ uiArea. Now to build. Then to rewrite the tests...
2015-12-17 19:16:30 -05:00
Pietro Gagliardi
8ea3b07aa8
Got rid of the clientWidth and clientHeight variables.
2015-12-17 17:37:58 -05:00
Pietro Gagliardi
473c6c92f0
FINALLY removed areaPrivate from uiArea on GTK+, using uiArea itself for everything. Standardized variable names on that front. Also implemented MouseCrossing() there.
2015-12-17 16:49:59 -05:00
Pietro Gagliardi
1957ff1418
More TODOs.
2015-12-17 16:31:56 -05:00
Pietro Gagliardi
ffe9a2db28
Got rid of the GtkScrollable code from GtkDrawingArea for uiArea. Woo! Now we just have to nuke all that from the Cocoa backend and we're good.
2015-12-17 14:48:58 -05:00
Pietro Gagliardi
4e256dfc95
Fixed some oversights in the GTK+ uiArea code.
2015-12-16 18:09:04 -05:00
Pietro Gagliardi
3f9862c472
OUCH. Fixed a MASSIVE bug in the GTK+ implementation of uiWindow: uiWindowSetChild() was DESTROYING the old child, not merely removing it! The other ports don't have this bug.
2015-12-12 15:30:56 -05:00
Pietro Gagliardi
acf3b3564e
Set up the new Unix build. Now to do the OS X build.
2015-12-11 18:37:15 -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
2705f93305
Added uiMultilineEntry, wrote it on GTK+, and wrote the uiQueueMain() test. It works on Unix.
2015-12-06 01:18:32 -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
3943c2c65e
Implemented the dialog changes on the GTK+ backend.
2015-11-28 11:02:58 -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
5e29d07d20
Moved all the table stuff out of the way. I need to decide what I'm going to do with it.
2015-11-16 10:52:19 -05:00
Pietro Gagliardi
5d26b9b059
Finished the uiTable test and fixed errors.
2015-10-19 10:52:36 -04:00
Pietro Gagliardi
056db88de0
More uiTable work. I'm not too happy anymore...
2015-10-18 18:55:06 -04:00
Pietro Gagliardi
4577cb79a1
Started the GTK+ implementation of uiTable and added uiTableSubscriptions. This is a mess already :D
2015-10-18 13:59:38 -04: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
1cadb85bd0
Added line dashing and implemented it on GTK+.
2015-10-16 10:09:41 -04:00
Pietro Gagliardi
6849b01f73
Switched coordinates to floating-point drawing space and implemented such on GTK+.
2015-10-14 08:49:06 -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
cc827919b8
Added uiDrawClip() and implemented it on GTK+.
2015-10-13 11:16:06 -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
818d954654
More transformation tests and work.
2015-10-12 09:08:50 -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
e51fd6e494
Implemented negative arcs on GTK+.
2015-10-11 21:18:39 -04:00
Pietro Gagliardi
b09cdb5137
Made 90° point toward y=+∞.
2015-10-11 20:24:06 -04:00
Pietro Gagliardi
0ae3ef918d
Implemented the matrix stuff on Windows. Also fixed the signature of uiDrawMatrixSkew().
2015-10-11 12:36:48 -04:00
Pietro Gagliardi
3d8f8f0756
Implemented a basic translation.
2015-10-11 11:42:07 -04:00
Pietro Gagliardi
87680a6470
Built the framework for matrices and transformations and implemented it on the GTK+ backend. Tests to come next.
2015-10-11 11:13:01 -04:00
Pietro Gagliardi
7fbabfd8ec
Fixed the GTK+ drawing code to draw arc initial line segments in the correct place.
2015-10-10 08:44:12 -04:00
Pietro Gagliardi
3cbc3f3c67
Made arc angles counterclockwise on the GTK+ backend and fixed the sun in the Direct2D geometries howto.
2015-10-09 23:13:15 -04:00
Pietro Gagliardi
73d77ef38b
Capped sweeps at 2π radians.
2015-10-09 22:00:41 -04:00