Commit Graph

200 Commits

Author SHA1 Message Date
Pietro Gagliardi 6d796b5642 More removal of uiWindow move events. 2016-10-22 18:11:49 -04:00
Pietro Gagliardi f46edd097b uiDrawTextWeightUtraBold. 2016-10-21 16:35:46 -04:00
Pietro Gagliardi 7995a4460c Got rid of uiDrawImage stuff. I need to decide if the drawing API should care about scaling or not. 2016-06-25 14:33:42 -04:00
Pietro Gagliardi da24b7154b Started the work toward adding images. 2016-06-25 11:22:55 -04:00
Pietro Gagliardi 80b8fddbea Started mapping out uiTable and uiTree. 2016-06-20 22:14:26 -04:00
Pietro Gagliardi 9656a81c77 Added uiNewVerticalSeparator(). 2016-06-17 11:02:17 -04:00
Pietro Gagliardi ae14542c9a Improved uiMainSteps(). 2016-06-17 09:22:31 -04:00
Pietro Gagliardi 798061f7f6 Merge pull request #144 from ProtonMail/progress-bar
Improves progress bar
2016-06-16 16:44:42 -04:00
Pietro Gagliardi d4492c06a9 Changed the uiMainSteps() API as the GTK+ port will need it to be done this way... 2016-06-16 13:49:50 -04:00
Pietro Gagliardi da4b396aaf Added uiMainSteps(), which sets things up to use uiMainStep() for the main loop. Implemented on OS X. 2016-06-16 13:45:24 -04:00
Pietro Gagliardi 377f46814a Started adding borderless uiWindow support; implemented on Windows. 2016-06-16 11:20:28 -04:00
Pietro Gagliardi 69cafde7f3 Started the fullscreen window stuff. 2016-06-16 08:07:50 -04:00
Pietro Gagliardi 5fbe85c21a Started adding the uiWindow size code. 2016-06-15 22:28:44 -04:00
emersion 983a53d3c3 Replaces uiProgressBar(Set)Indeterminate() by value=-1 2016-06-15 23:17:23 +02:00
emersion 560cca5bc9 Adds uiProgressBar(Set)Indeterminate for unix 2016-06-15 21:51:08 +02:00
Pietro Gagliardi 53bec81925 More uiWindow positioning refinement and implementation on OS X. 2016-06-15 14:57:52 -04:00
Pietro Gagliardi 4465d37d2e Started uiWindow positioning stuff. 2016-06-15 13:21:07 -04:00
emersion e07a7b3d05 Adds uiProgressBarValue() in unix 2016-06-15 18:51:12 +02:00
emersion 52bd3b2c35 Adds uiFormDelete() 2016-06-14 22:41:37 +02:00
Pietro Gagliardi 864c6c2511 Finished stripping ui.h of intmax. 2016-06-13 21:20:20 -04:00
Pietro Gagliardi 155299cdb9 More intmax_t removal. 2016-06-13 21:11:59 -04:00
Pietro Gagliardi 440635447d More intmax_t removal. 2016-06-13 21:05:40 -04:00
Pietro Gagliardi 8d48d42201 More intmax_t elminiation. 2016-06-13 20:55:50 -04:00
Pietro Gagliardi b26354d1e7 Started replacement of intmax_t and uintmax_t with int. 2016-06-13 20:46:11 -04:00
Pietro Gagliardi 075eae15e5 Started uiGrid. 2016-06-09 17:15:59 -04:00
Pietro Gagliardi c6e8537269 Started the implementation of uiForm on OS X. Mostly works, but there are Auto Layout glitches (of course there are Auto Layout glitches) 2016-06-07 11:29:49 -04:00
Pietro Gagliardi 1ad18ddc8e We are FINALLY adding uiForm. About time :V 2016-06-07 09:56:53 -04:00
Pietro Gagliardi 5accda32e5 Added new uiRadioButtons functions and implemented them on GTK+. More TODOs. 2016-06-06 18:56:58 -04:00
Pietro Gagliardi d0be2979e4 Added Password and Search Entries. Now for the implementation. 2016-06-05 20:26:44 -04:00
Pietro Gagliardi 7dcfb8c6c3 Reworked how _UI_EXTERN works to allow MinGW static linking on Windows. 2016-06-03 22:19:33 -04:00
Pietro Gagliardi 1e8a90d9a2 Eschewed chronological order in ui.h for logical order. 2016-05-28 22:35:40 -04:00
Pietro Gagliardi a9e731ed59 Added uiMainStep() and implemented it on Windows. 2016-05-24 22:14:05 -04:00
Pietro Gagliardi 363916855c Split uiCombobox on OS X. 2016-05-23 18:50:02 -04:00
Pietro Gagliardi 996ba99b0f Began uiEditableCombobox splitting. 2016-05-23 17:41:37 -04:00
Pietro Gagliardi ab0a9102b4 Added a user bug for calling SetParent() on a uiWindow. 2016-05-22 20:02:47 -04:00
Pietro Gagliardi 313ce47833 Started non-wrapping multiline entries. Implemented on Windows. 2016-05-22 13:56:36 -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 1d8ea79e45 Removed uiControlVerifyDestroy(); we could have just had it in uiFreeControl(). 2016-05-22 01:07:25 -04:00
Pietro Gagliardi bf411e787e Implemented uiColorButton on OS X. 2016-05-15 20:51:33 -04:00
Pietro Gagliardi 68ad5f53fa Added uiColorButton. Let's implement this on OS X first. 2016-05-15 20:06:57 -04:00
Pietro Gagliardi 7b0780be2a Made SyncEnableState() a uiDarwinControl method instead of a uiControl method since it's not needed on GTK+. 2016-04-25 17:52:16 -04:00
Pietro Gagliardi d0d0efce1a Fixed build errors. Now to test! 2016-04-25 13:38:17 -04:00
Pietro Gagliardi 31dee85b5e More work with changing things for OS X. Still not fully sure about things... 2016-04-24 21:51:08 -04:00
Pietro Gagliardi dda30cdb3c Started the new uiControl infrastructure. 2016-04-24 19:22:21 -04:00
Pietro Gagliardi 19f563a2ac ...and a new system for allocating uiControls. 2016-04-24 18:49:28 -04:00
Pietro Gagliardi 5f624f6a38 Set up a new system for uiControl methods. 2016-04-24 18:46:03 -04:00
Pietro Gagliardi fa4632d101 Fixed more build errors building the tests. OS X backend converted! 2016-04-24 16:20:57 -04:00
Pietro Gagliardi b6c54aac43 Fixed build errors. Let's test! 2016-04-24 16:14:19 -04:00
Pietro Gagliardi 24ac560f4b Elminated the type functions FOR REAL THIS TIME. 2016-04-24 15:18:14 -04:00
Pietro Gagliardi 8a532d66cc Adjusted common/control.c for the new type-based control system. Now to fix up the individual OSs. 2016-04-24 15:15:36 -04:00
Pietro Gagliardi 2870f3239d More TODOs. 2016-04-24 13:32:20 -04:00
Pietro Gagliardi 712be2608e Got rid of the type checking stuff from ui.h. 2016-04-24 13:31:33 -04:00
Pietro Gagliardi 47aff78aae More compiler error fixes. Warning fixes will come later. 2016-04-23 21:38:51 -04:00
Pietro Gagliardi cfa1b6bf0a Added uiFontButtonFont() and uiFontButtonOnChanged(); implemented on OS X. 2016-04-20 13:40:54 -04:00
Pietro Gagliardi 7a568f6bf4 Added the first text layout attribute: foreground color. Now to implement. 2016-04-19 15:38:24 -04:00
Pietro Gagliardi 7cf8420682 Hooked the Windows font button and font dialog together at last. More TODOs. Now we just need to actually convert everything to DirectWrite and implement the label. 2016-04-17 22:09:18 -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 423719b21f Started adding uiFontButton. Duplicated Page 9 to Page 10 to test it. 2016-04-14 12:54:37 -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 b5292e4e80 More TODOs. 2016-01-15 20:19:56 -05:00
Pietro Gagliardi c0db113367 Started adding support for multiline uiDrawTextLayouts and extracting the extents from them. 2016-01-14 20:02:01 -05:00
Pietro Gagliardi d6063394ee Implemented the metrics stuff on OS X and improved the test a bit. 2016-01-12 22:07:24 -05:00
Pietro Gagliardi a082469cf8 Started working on text metrics support. 2016-01-12 21:52:45 -05:00
Pietro Gagliardi 980f5a7419 Some more text API changes. 2016-01-10 21:02:40 -05:00
Pietro Gagliardi 2342f191f4 More TODOs. Big TODOs. 2016-01-09 20:58:52 -05:00
Pietro Gagliardi 9b1b7ce365 More TODOs. 2016-01-09 18:36:21 -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 6f10fcaee7 Trivial change: Windows sizing stuff gone. 2016-01-04 16:13:54 -05: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 280ef464f6 Started work on text rendering. Right now, features match Pango; they will be stripped as needed. Also I never committed test/page8.c; whoops. 2015-12-24 18:05:16 -05:00
Pietro Gagliardi 5d47fcab5a Implemented the font family enumerator on GTK+. 2015-12-22 19:17:27 -05:00
Pietro Gagliardi 9987c98dcd Began the work to list font families. This is the first of the text rendering work. 2015-12-22 19:01:56 -05:00
Pietro Gagliardi 4edcddce14 Fixed the ID2D1RenderTarget::GetSize() madness a *SECOND* time. Urgh. Also removed a now-irrelevant TODO. 2015-12-18 15:04:37 -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 e9247858d4 Forgot a parameter in uiAreaHandler.MouseCrossed(). 2015-12-17 14:20:17 -05:00
Pietro Gagliardi 4e015cf4d6 More parameter updating. 2015-12-17 13:54:54 -05:00
Pietro Gagliardi 12a94404aa Set up a new infrastruture which allows both scrolling and non-scrolling areas AND mouse entered/exited events. 2015-12-17 13:50:07 -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 994d43c00e More TODOs. 2015-12-05 18:42:28 -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 d12974eef1 More TODOs. 2015-12-04 21:11:43 -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 0bcd620a62 Started a change which will allow a parent of the standard dialogs to be specified. 2015-11-27 23:23:54 -05:00
Pietro Gagliardi 4d3d80736b Fixed stupid STUPID **STUPID** C and C++ language bullshit. 2015-11-17 20:01:01 -05:00
Pietro Gagliardi a9316a04b0 Added C++ extern guards. 2015-11-16 10:55:44 -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 66cd3542bc Reworked the table model system a bit. 2015-10-18 18:05:38 -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 60accb0676 Set up the API for tables. 2015-10-18 11:21:56 -04:00
Pietro Gagliardi 8119a69572 Implemented dashing on Windows. 2015-10-16 10:46:26 -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 a504bcee40 More TODOs. 2015-10-13 22:17:25 -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