ae9afced2aAdded a reminder/TODO related to why I needed to do all that (add resizing).
Pietro Gagliardi
2014-02-12 21:37:24 -0500
3d2df2334eFixed compiler errors. New code structure success!
Pietro Gagliardi
2014-02-12 21:33:24 -0500
8e2f3b136eAdjusted sysData.make() to make the new window class and fixed main(). Now to fix compiler errors...
Pietro Gagliardi
2014-02-12 21:28:58 -0500
40dc20be0dWhoops, forgot to turn Button.sysData.clicked into Button.sysData.event.
Pietro Gagliardi
2014-02-12 21:26:18 -0500
5bc4c49afaModified Button for the new changes. Now I just need to actually create the window class and edit main()...
Pietro Gagliardi
2014-02-12 21:25:25 -0500
942490e1aaAdjusted Control and Window for the new system.
Pietro Gagliardi
2014-02-12 21:23:53 -0500
403ca88316Whoops, class registration now has to go through the UI task.
Pietro Gagliardi
2014-02-12 21:11:21 -0500
bccbc45bcfThe past few commits mean we no longer need to do reverse sysData lookup, so get rid of that.
Pietro Gagliardi
2014-02-12 21:09:28 -0500
3dcbb3920dWindows sysData has been adjusted to deal with child controls. Rather than storing the parent window, it is passed as an argument to sysData.make(), which does the child ID allocation. Child IDs are now window-local, getting rid of that restriction.
Pietro Gagliardi
2014-02-12 21:08:10 -0500
e296398effFormatting change for cSysData itself.
Pietro Gagliardi
2014-02-12 20:57:30 -0500
98d56767a3Each control may only need one event, so combine them all into a single channel whose use depends on the sysData itself. Also we won't need to save the parentWindow anymore, as the change to the make() function will take care of that for us.
Pietro Gagliardi
2014-02-12 20:55:05 -0500
4b16716e61Restructuring the codebase to make things neater. First off: each window now has its own class; the sysData knows about children. This updates the window class to become a generator and rewrites the WndProc as well.
Pietro Gagliardi
2014-02-12 20:51:07 -0500
a9ff388944Added Window.SetTitle(). Also oops, forgot to mark the window as created.
Pietro Gagliardi
2014-02-12 18:14:37 -0500
0a9f408129More TODOs... this time about crashes... oh boy...
Pietro Gagliardi
2014-02-12 14:15:09 -0500
a272436ee6Whoops, forgot to add button.go itself :|
Pietro Gagliardi
2014-02-12 13:52:34 -0500
da92dd55bdEven more TODOs.
Pietro Gagliardi
2014-02-12 11:34:36 -0500
d3dace0c06More TODOs.
Pietro Gagliardi
2014-02-12 11:34:10 -0500
5f587fbf47Added button events.
Pietro Gagliardi
2014-02-12 11:32:17 -0500
ddfb5c7603Added buttons.
Pietro Gagliardi
2014-02-12 11:29:20 -0500
87a99bd675More TODOs.
Pietro Gagliardi
2014-02-12 10:58:05 -0500
33a32c4cdaAdded a TODO list.
Pietro Gagliardi
2014-02-12 10:54:58 -0500
49d0375975Added initial window size and the Window.SetTitle() function.
Pietro Gagliardi
2014-02-12 10:51:27 -0500
3f8fe0e710Separated initial text from sysData and fixed errors in the previous commits.
Pietro Gagliardi
2014-02-12 10:43:57 -0500
f93bebfeecAdded control ID generation.
Pietro Gagliardi
2014-02-12 10:35:15 -0500
e9e2c0f269Set up restrictions tracking. Added a restriction that a window and its controls are fixed to the window once it has been open. Started accounting for parent windows in controls.
Pietro Gagliardi
2014-02-12 10:29:56 -0500
0f373195deChanged the sysData cache so that if we didn't fill it in yet, getSysData() returns nil instead of panicking, and the standard window procedure jumps directly to the default handler. Not what I originally wanted to do, but whatever, it finally works!
Pietro Gagliardi
2014-02-11 22:41:55 -0500
08ba4a1074Fixed the wndproc not responding: turns out I have to have message dispatch in the UI thread...
Pietro Gagliardi
2014-02-11 22:18:14 -0500
ae14253c80Derp me, more incorrect error checking! But now a window shows, and the process hangs, so progress!
Pietro Gagliardi
2014-02-11 20:23:49 -0500
88363e131cGot rid of the reverse HWND->sysData lookup for now, to see if there's a mistake elsewhere. Now we're up to a panic... with Success...
Pietro Gagliardi
2014-02-11 20:14:19 -0500
cee78198e4It appears the result of syscall.StringToUTF16Ptr() is only temporary, so removed all that. Now the program just hangs...
Pietro Gagliardi
2014-02-11 19:52:39 -0500
9bfe67c49dChanged the caching such that the window procedure is held until we added the HWND to the cache. Now we have a mysterious class not regsitered issue...
Pietro Gagliardi
2014-02-11 19:43:07 -0500
bc531d60d7More of the previous error and not printing panics... derp me. Still not fixed yet though...
Pietro Gagliardi
2014-02-11 19:34:28 -0500
a4182c606bWhoops, copy-paste fail somehow changed init error checks. Now it starts... and hangs before creating a window...
Pietro Gagliardi
2014-02-11 19:27:58 -0500
73fa611b37All build errors resolved. Now to test...
Pietro Gagliardi
2014-02-11 19:18:03 -0500
ecb2205e02More error corrections; not done yet...
Pietro Gagliardi
2014-02-11 19:09:10 -0500
09a42e0c34Added the init and testing main functions and started fixing errors. Let's fix the rest and hope it works...
Pietro Gagliardi
2014-02-11 18:57:03 -0500
7686c6e599Added the window creation code. Now let's hope this works...
Pietro Gagliardi
2014-02-11 18:50:33 -0500
aa3e2788f3Moved some more data structures to common_windows.go and made more things private.
Pietro Gagliardi
2014-02-11 18:36:13 -0500
bbff3d4f62Locked the Windows message loop goroutine to the OS thread.
Pietro Gagliardi
2014-02-11 18:32:07 -0500
a1344512aaAdded the Windows message loop.
Pietro Gagliardi
2014-02-11 18:31:24 -0500
b918496ae4Filled in the standard window procedure.
Pietro Gagliardi
2014-02-11 18:22:39 -0500
c6a8a4d2f7(see previous commit; part 2)
Pietro Gagliardi
2014-02-11 17:39:41 -0500
eeff0d8605Migrated over the window class and window procedure stuff, set up the standard window class, and wrote the skeleton window procedure.
Pietro Gagliardi
2014-02-11 17:38:38 -0500
b727a972adSet up initialization on Windows (2/2).
Pietro Gagliardi
2014-02-11 16:25:27 -0500
af22eea889Set up initialization on Windows (1/2) and fixed a leftover error in sysdata_windows.go.
Pietro Gagliardi
2014-02-11 16:23:38 -0500
9b19ee7245Moved things that I haven't migated yet out of the way for now.
Pietro Gagliardi
2014-02-11 16:17:17 -0500
9794814e93Started implementing the public API: added the Window and Control types and the skeleton of the Windows implementation.
Pietro Gagliardi
2014-02-11 16:14:15 -0500
394bf3ed9cSimplifying file structure by combining controls files (2/2).
Pietro Gagliardi
2014-02-11 15:18:28 -0500
cac078b9e9Simplifying file structure by combining controls files (1/2).
Pietro Gagliardi
2014-02-11 15:15:22 -0500
42229820d2Added _windows.go extensions to all the files in preparation for the library writing.
Pietro Gagliardi
2014-02-11 13:06:12 -0500
a488e3ab36Added the initial planning document for the portable API.
Pietro Gagliardi
2014-02-11 12:33:32 -0500
271c89bad5Added window sizing. I think I'm now ready for the wrapper itself.
Pietro Gagliardi
2014-02-11 09:43:18 -0500
6ae39f57a2Added window minimum sizes.
Pietro Gagliardi
2014-02-11 07:50:00 -0500
07f92bb8d9Added some TODOs.
Pietro Gagliardi
2014-02-10 23:45:21 -0500
07c791331cImproved program appearance by setting the correct font, colors, and other styles.
Pietro Gagliardi
2014-02-10 20:48:08 -0500
bcc8751c8bAdded a checkbox to the example window.
Pietro Gagliardi
2014-02-10 17:10:47 -0500
2231c33954Added static controls and added a static label to the example window.
Pietro Gagliardi
2014-02-10 17:02:54 -0500
4d674ebd3dAdded listboxes and added a list box to the example window.
Pietro Gagliardi
2014-02-10 16:00:11 -0500
0808c696f8Added edit controls and added one to the example window.
Pietro Gagliardi
2014-02-10 15:23:09 -0500
e9f25362beAdded combo boxes and added some to the main window example.
Pietro Gagliardi
2014-02-10 12:44:11 -0500
6ae896cd64More TODOs.
Pietro Gagliardi
2014-02-10 05:00:24 -0500
6662e09c30Added a button to the test main window, including click handling.
Pietro Gagliardi
2014-02-10 04:59:39 -0500
ef5739229eAdded button code.
Pietro Gagliardi
2014-02-09 23:22:12 -0500
df8f7a2190Added window messages and custom message loops.
Pietro Gagliardi
2014-02-09 16:40:53 -0500
3482c9c541Added the rest of the skeleton necessary for opening a simple window as well as the code to actually open one. Now for custom window procedures!
Pietro Gagliardi
2014-02-09 14:59:37 -0500
ecc00bd1f5Added a lot of the stuff needed to create a simple window. Not done yet...
Pietro Gagliardi
2014-02-08 23:51:11 -0500
35e8a028f5Initial commit. Added MessageBox() code.
Pietro Gagliardi
2014-02-07 21:17:24 -0500