Talk:Phooey
Getting Phooey to Run
This is very interesting. Getting this apparently simple proof of concept working is difficult for me. I've tried on Suse 10.2 and Windows XP. files I used on XP:
wxMSW-2.4.2-setup.zip
ghc-6-4-bld2.msi
wxhaskell-bin-msw2.4.2-ghc6.4-0.9.4-1.zip
The recommended wxwindows 2.4.2 requires a wxhaskell dependent on ghc640. The problem is that arrows require base >=2.0 I could update Cabal to 1.1.7 using darcs etc. But I find no instructions on how to update the base-1.0 which comes with GHC 6.4.0. Even with instructions I think it requires a C compiler or more?
I use WinXP, GHC 6.6, and wxWidgets 2.4.2. I compiled wxWidgets and wxHaskell from sources. Conal 23:47, 20 February 2007 (UTC)
Yes, this looks nice; I can report partiual success on linux. I was able to build using ghc6.6 on Fedora 5, using wxGTK version 2.6.3 (built from source) and then wxHaskell. Phooey examples ran, however titles (window and panel) did not appear correctly, nor did text output, e.g. on the "shopping list" example the "total" field remains blank. On checking the wxHaskell demos, it seems the problem is in there. User:Djd 04:54, 14 May 2007
Thanks for the report. I expected wxHaskell to take care of cross-platform compatibility, but I guess not. Hm. Conal 17:26, 14 May 2007 (UTC)
Adding additional compound widgets
Hi Conal, I am looking to extend Phooey to include a record editor widget, a record list widget, as well as a tree widget. The first two being based on Grid. This is so that I can continue my work on HGene. i.e. the record editor would allow users to edit Person records, the list widget would show the children of a person and the tree to allow them to view a tree of Persons. For the editor I have so far (in the imperative world so far)
-- List of field name, field getter, field setter
type EditorProps a = [ ( String, a -> String, a -> String -> a )]
-- Create an editor for 'a'.
-- Returns a grid, a means of reseting the record being edited, an extractor and notifier
mkEditor :: Show a => Window b -> EditorProps a -> a -> IO ( (Grid (), a -> IO(), IO a, IO () -> IO () ))
Is this in line with where you think Phooey can go and is this on the right track? Mark_Wassell