Commit Graph

4153 Commits

Author SHA1 Message Date
Pietro Gagliardi 167ea85f6e Implemented the proper hugging constraints for stretchy controls in tBox. 2015-08-03 01:10:27 -04:00
Pietro Gagliardi 1d2880895d Started saving the hugging priorities. 2015-08-03 00:56:14 -04:00
Pietro Gagliardi 410478e1c8 Added an orientation variable to the tBox code for when we start dealing with hugging. This is the proper way to prevent controls from stretching. 2015-08-02 23:42:14 -04:00
Pietro Gagliardi e7570c9490 Added another row of buttons to main.m. Non-stretchiness doesn't quite work correctly... 2015-08-02 23:21:27 -04:00
Pietro Gagliardi 0adf51118e Readded stretchiness. 2015-08-02 23:17:20 -04:00
Pietro Gagliardi 17a17b0d27 Fixed build and runtime errors. 2015-08-02 23:05:16 -04:00
Pietro Gagliardi 2eb48aa129 Changed button.m and spinbox.m to use the new model. Let's test this one... 2015-08-02 22:41:07 -04:00
Pietro Gagliardi bd166e601f Modified box.m to use a single NSView. 2015-08-02 22:38:24 -04:00
Pietro Gagliardi f275a9a043 Converted box.m's auto layout code to the new format. Stretchiness isn't handled yet. Next up is box.m's actual view itself. 2015-08-02 22:29:35 -04:00
Pietro Gagliardi bdf3bed5f4 Changed tWindow to use the single-view-per-control model. 2015-08-02 21:34:54 -04:00
Pietro Gagliardi 90cd19fca6 Removed the separate spinbox. It's not going to happen; every component has to be its own NSView for tBox to work. 2015-08-02 21:03:06 -04:00
Pietro Gagliardi f1b372569a Tried to do lateral dimension tuning. Didn't work -_- Recursive tBoxes might have to be individual NSViews as well :|
Psy in #macdev said things which confirm that Auto Layout does NOT give me Interface Builder metrics for free. This destroys the whole point...
2015-08-02 19:27:55 -04:00
Pietro Gagliardi 2fe193563e Resolved that TODO. 2015-08-02 18:54:33 -04:00
Pietro Gagliardi 03212b6b02 More TODOs. 2015-08-02 18:43:50 -04:00
Pietro Gagliardi f434b8e1b9 Started constructing the final test tBox. 2015-08-02 18:40:45 -04:00
Pietro Gagliardi 10efe52513 "Fixed" another crash. 2015-08-02 18:34:47 -04:00
Pietro Gagliardi b3ad1768b0 Fixed Auto Layout prefix issues. 2015-08-02 18:19:11 -04:00
Pietro Gagliardi ebae310ff1 Fixed crashing. Made relayouts optional in tSetParent. Rewrote the tBox auto layout code a fair bit, thinking crashing was caused by stack overflow (it was not). 2015-08-02 18:16:44 -04:00
Pietro Gagliardi 4a97a3cdb9 Wrote the tBox code to deal with starts and ends and attachments. It doesn't quite work yet... 2015-08-02 16:55:21 -04:00
Pietro Gagliardi f72b47c4dc Added horizontal/vertical first/last flags. These flags are used by single controls for attachments. tBox will set them conditionally, so it can use the attachment values directly. 2015-08-02 15:03:30 -04:00
Pietro Gagliardi 3e8aad0068 Started converting tBox to the attachcment-based system. I think I'll need to introduce a few more parameters (first/last horz/vert). 2015-08-02 14:49:10 -04:00
Pietro Gagliardi 15ecebbccc Adjusted tWindow to use the new attachment system. 2015-08-02 14:06:49 -04:00
Pietro Gagliardi b508161d1e Added a framework for handling attachments to the frame. These are only handled by the shallowest control level (the immediate child of a tWindow). 2015-08-02 13:57:59 -04:00
Pietro Gagliardi 5bc53f937d More stretchiness work. 2015-08-02 12:52:24 -04:00
Pietro Gagliardi 88f137aa80 Laid the foundation for handling stretchiness. 2015-08-02 12:35:48 -04:00
Pietro Gagliardi fbbe1fdd3b Added vertical boxes. 2015-08-02 12:22:24 -04:00
Pietro Gagliardi 64ed23e933 Changed the Auto Layout generation function to use a structure of parameters. This will make adding parameters easier. 2015-08-02 11:26:03 -04:00
Pietro Gagliardi 96dfd95fd3 Fixed spinbox single-view issues. 2015-08-02 09:31:49 -04:00
Pietro Gagliardi 2daf46b711 Moved the combined spinbox back. Forgot to auto layout its contents :D 2015-08-02 09:10:17 -04:00
Pietro Gagliardi f0d1c5d171 Added a copy of the spinbox code with just one view containing the two controls. This is going to hurt is it... 2015-08-02 00:39:16 -04:00
Pietro Gagliardi aca81945e8 Added some support code for our changes to tSpinbox to make it have only one view. Unfortunately, this is how we're going to need to do stretchiness with tSpinbox. 2015-08-02 00:10:30 -04:00
Pietro Gagliardi 08c3602130 Saved stretchy values in box.m. We'll need to figure out how to incorporate these into the generated files... 2015-08-01 22:38:01 -04:00
Pietro Gagliardi 30a30cb5be Added tRelayout to all controls. Also changed the order of stretchy controls in main.m because Auto Layout's defaults aren't optimal. 2015-08-01 22:13:41 -04:00
Pietro Gagliardi 8868ad3b53 Stored parents in the various tControls. This is neccessary for making tRelayout on all controls. 2015-08-01 21:41:36 -04:00
Pietro Gagliardi 399f18f3ad Removed the old Auto Layout routines from the other classes. 2015-08-01 18:35:24 -04:00
Pietro Gagliardi a2925e3b0b Implemented more of the tBox auto layout logic. Now we need to get rid of the methods I had before and implement tRelayout on all classes. 2015-08-01 18:33:17 -04:00
Pietro Gagliardi a06216eb34 Fixed some build errors. 2015-08-01 18:13:43 -04:00
Pietro Gagliardi a7b0df8198 Updated the main program to use tBox. If we test it, nothing should show up... 2015-08-01 18:08:45 -04:00
Pietro Gagliardi 7bd98bafc9 Started reimplementing uiBox. Added a first argument to the main Auto Layout function so uiBox can have subviews. 2015-08-01 18:05:50 -04:00
Pietro Gagliardi b528d1ff0c Added multiple primary horizontal and vertical Auto Layout views. This will accomodate tSpinbox. Now we can go back to tBox. 2015-08-01 17:26:56 -04:00
Pietro Gagliardi 4dc63828e4 Added spinboxes to the test. We're going to need multiple horizontals and verticals. 2015-08-01 17:19:45 -04:00
Pietro Gagliardi 554454f036 Added margined to tWindow. 2015-08-01 15:44:06 -04:00
Pietro Gagliardi 391f6dd265 Implemented the basic Auto Layout manager for tWindow and tButton. Added tWindow this time too >_> 2015-08-01 15:38:59 -04:00
Pietro Gagliardi 9ecf15f4e0 Changed things around a bit; going to build things from tWindow's perspective first. 2015-08-01 15:21:03 -04:00
Pietro Gagliardi cdbf2d5b5c Moved tBox out of the way. We'll start with just a tButton for now. 2015-08-01 15:08:33 -04:00
Pietro Gagliardi 63439daffc Some cleanup in the Auto Layout test. 2015-08-01 14:22:45 -04:00
Pietro Gagliardi c9da21e350 More Auto Layout test work. It compiles1 2015-08-01 12:43:54 -04:00
Pietro Gagliardi 8bcaeb5d85 More TODOs. 2015-08-01 02:28:10 -04:00
Pietro Gagliardi 52152f0f9d More uiBox mock work. 2015-08-01 02:16:35 -04:00
Pietro Gagliardi 0d27b4e30f Started mocking the implementation of uiBox. 2015-07-31 23:25:59 -04:00