|
From: shelarcy <she...@gm...> - 2009-03-21 15:28:10
|
DarcsURL: C:/home/shelarcy/wxhaskell
MIME-Version: 1.0
Content-Type: multipart/mixed; boundary="=_"
--=_
Content-Type: text/plain
Content-Transfer-Encoding: quoted-printable
Sat Mar 21 15:57:48 =93=8C=8B=9E (=95W=8F=80=8E=9E) 2009 shelarcy <shelarc=
y...@gm...>
* Use Foreign.Concurrent.newForeignPtr instead of Foreign.ForeignPtr.newF=
oreignPtr.
--=_
Content-Type: text/x-darcs-patch; name="use-foreign_concurrent_newforeignptr-instead-of-foreign_foreignptr_newforeignptr_.dpatch"
Content-Transfer-Encoding: quoted-printable
Content-Description: A darcs patch for your repository!
New patches:
[Use Foreign.Concurrent.newForeignPtr instead of Foreign.ForeignPtr.newFore=
ignPtr.
shelarcy <she...@gm...>**20090321065748
Ignore-this: a7a92ba715f83d252d3b89158b34ba59
] {
hunk ./wxcore/src/Graphics/UI/WXCore/WxcObject.hs 33
import Foreign.Marshal.Alloc
import Foreign.Marshal.Array
=
-{- note: for GHC 5.04, replace the following two imports by "import Foreig=
n.ForeignPtr" -}
-import Foreign.ForeignPtr =
-{-
-hiding (newForeignPtr,addForeignPtrFinalizer)
+{- note: for GHC 6.10.2 or higher, recommends to use "import Foreign.Concu=
rrent"
+ See http://www.haskell.org/pipermail/cvs-ghc/2009-January/047120.html -=
}
+import Foreign.ForeignPtr hiding (newForeignPtr,addForeignPtrFinalizer)
import Foreign.Concurrent
hunk ./wxcore/src/Graphics/UI/WXCore/WxcObject.hs 37
--}
=
{-------------------------------------------------------------------------=
----------------
Objects
hunk ./wxcore/src/Graphics/UI/WXCore/WxcObject.hs 177
-- | Create a managed object with a given finalizer.
objectFromManagedPtr :: ManagedPtr a -> IO (Object a)
objectFromManagedPtr mp
- =3D do -- wxManagedPtr_NoFinalize mp {- turn off finalization -}
- -- GHC 6.0.1 switches the parameters, use: =
- -- fp <- newForeignPtr mp wxManagedPtrDeleteFunction =
- fp <- newForeignPtr wxManagedPtrDeleteFunction mp
+ =3D do fun <- wxManagedPtrDeleteFunction
+ -- wxManagedPtr_NoFinalize mp {- turn off finalization -}
+ fp <- newForeignPtr mp (fun mp)
return (Managed fp)
=
=
hunk ./wxcore/src/Graphics/UI/WXCore/WxcObject.hs 183
-wxManagedPtrDeleteFunction :: FunPtr (ManagedPtr a -> IO ())
+wxManagedPtrDeleteFunction :: IO (ManagedPtr a -> IO ())
wxManagedPtrDeleteFunction
hunk ./wxcore/src/Graphics/UI/WXCore/WxcObject.hs 185
- =3D unsafePerformIO $ wxManagedPtr_GetDeleteFunction
+ =3D do fun <- wxManagedPtr_GetDeleteFunction
+ return $ wxManagedPtr_CallbackFunction fun
=
{-------------------------------------------------------------------------=
-
Managed pointers
hunk ./wxcore/src/Graphics/UI/WXCore/WxcObject.hs 195
foreign import ccall wxManagedPtr_Finalize :: ManagedPtr a -> IO ()
foreign import ccall wxManagedPtr_NoFinalize :: ManagedPtr a -> IO ()
foreign import ccall wxManagedPtr_GetDeleteFunction :: IO (FunPtr (Managed=
Ptr a -> IO ()))
+foreign import ccall "dynamic" wxManagedPtr_CallbackFunction :: FunPtr (Ma=
nagedPtr a -> IO ()) -> ManagedPtr a -> IO ()
hunk ./wxcore/src/Graphics/UI/WXCore/WxcTypes.hs 127
import Foreign.Marshal.Array
import Foreign.Marshal.Utils (fromBool, toBool)
=
-{- note: for GHC 5.04, replace the following two imports by "import Foreig=
n.ForeignPtr" -}
+{- note: for GHC 6.10.2 or higher, recommends to use "import Foreign.Concu=
rrent"
+ See http://www.haskell.org/pipermail/cvs-ghc/2009-January/047120.html -=
}
import Foreign.ForeignPtr hiding (newForeignPtr,addForeignPtrFinalizer)
import Foreign.Concurrent
=
}
Context:
[Move reimp.exe to wxc/util.
shelarcy <she...@gm...>**20090316033739
Ignore-this: 5d26d2c189796b8a4e91c6418643cd4f
] =
[Add util directory to wxc.
shelarcy <she...@gm...>**20090313065547
Ignore-this: b133e073586824e1d9f4e6c57779a06c
util contains a few files. These are come from Subversion repository at
http://snmsts.dreamhosters.com/wxc for to sync two repositories.
] =
[Add socket.cpp and sckaddr.cpp to wxc.
shelarcy <she...@gm...>**20090313064952
Ignore-this: a15673b832efc7dc3b7d99544e572b96
MERGED: add socket/sckaddr
------------------------------------------------------------------------
r25 | snmsts | 2009-01-17 10:33:37 +0900 (Sat, 17 Jan 2009) | 1 line
from Subversion repository at http://snmsts.dreamhosters.com/wxc
] =
[Use filepath package instead of defining same functionality (dirSep and pa=
thSep are deprecated now).
shelarcy <she...@gm...>**20090312181517
Ignore-this: d39415c33e3c0f4a4326b4e29a9fe3a1
] =
[Change Color type function to be more flexible.
shelarcy <she...@gm...>**20090312171934
Ignore-this: 5e778e86a6123c8f77ef92cebbac5ca8
] =
[Fix typo in previous Refactor to return wxPoint/wxSize/wxRect class direct=
ly patch.
shelarcy <she...@gm...>**20090312171345
Ignore-this: 9788064c548976d584252389fb26191d
] =
[Refactor to return wxPoint/wxSize/wxRect class directly in wxc.
shelarcy <she...@gm...>**20090310053838
Ignore-this: e414ff89344e856a3f61a0e6f318c427
We accept to return wxPoint, wxSize and wxRect class directly in wxc, now.
=
We always used passing int* pointer arguments to return Point, Size and Re=
ct
type, previously. But this convention is complex. We sometimes mistook to
return wxPoint, wxSize and wxRect. Its mistake causes problems.
=
So, we accept to return wxPoint, wxSize and wxRect now. And we refactor so=
me
old code to return these types, to show we can return these types now.
] =
[Bump version number to 0.11.1.2.
shelarcy <she...@gm...>**20090305140242
Ignore-this: f13691126a6cf23247b66e55488065dd
] =
[Fix: previous Refactor to use C++ bool directly patch causes build error o=
n Linux.
shelarcy <she...@gm...>**20090305125306
Ignore-this: 7059932f64f20392ceee48d255d31045
] =
[Fix: wxHaskell documents refer to old sourceforge's web page.
shelarcy <she...@gm...>**20090301075411
Ignore-this: e2228b995afcf476bcd3e02195519ba8
] =
[Add to generate Readme.txt file for source distribution.
shelarcy <she...@gm...>**20090301075126
Ignore-this: fc749fdadbd9e49b38682acbab85e6c
] =
[Refactor to use C++ bool directoly, instead of casting to int type and con=
verting to bool type.
shelarcy <she...@gm...>**20090228023601
=
We cast int type where wxWidgets' method returns bool type, and
we convert int to bool where wxWidgets method's argument is bool.
=
But some new wxc code uses bool type directly. This causes
problems.
=
So, we changed to use bool type directly everwhere in wxc code.
We hope this change avoid to occur problem and fixes a few bugs.
] =
[Change version number from 0.11.1 to 0.11.1.0.
shelarcy <she...@gm...>**20090227150124
Ignore-this: c6772c8eac4bd552702e469b76a3101a
] =
[Fix: managed.cpp causes problem on Linux (Debian and Ubuntu) platform.
shelarcy <she...@gm...>**20090115080604
=
MERGED: manage to run managed.cpp on ubuntu
r21 | snmsts | 2009-01-10 05:49:49 +0900 (Sat, 10 1 2009)
from Subversion repository at http://snmsts.dreamhosters.com/wxc
=
This change probably fixes #1924535.
See http://snmsts.dreamhosters.com/diary/index.cgi?routine=3Done&name=3D20=
09-01-08-1756
(Note: This page isn't English page. This page is written in Japanese.) =
] =
[Add int / C++ bool conversion function in wxc.
shelarcy <she...@gm...>**20090113135754
Ignore-this: 83a08a3687437074e79f8c8da12c1626
] =
[Remove unused eljtreectrl.cpp.
shelarcy <she...@gm...>**20090113104755
Ignore-this: a64b576e93152ebe3474c368fcfc03e9
] =
[Refactor to use wxString instead of calling WString (wxChar) directly.
shelarcy <she...@gm...>**20090113094641
=
This change will be easy to add encoding mode. wxWidget 2.9 and 3.0 will
support to build UTF-8 mode. If we use wxChar directly, we must change
many part to support this build mode.
=
http://www.wxwidgets.org/develop/roadmap.htm
=
And we think we get some advantages from this change. utf8-string package
only support UTF-8, so we want to use full unicode support we must write
UTF-8 <-> UTF-16 <-> UTF-32 conversion layer, or we must support new UTF-8
build mode.
=
(C++0x and C1x will support new string charactor set types, char16_t and
char32_t. Haskell and wxWidgets will support these types if compiler
(e.g. gcc, VC) support theirs. If we use abstract layer to use string,
we can extend wxHaskell support soonly when compiler and library change.) =
] =
[Use wxString_Length function instead of getting wxString twice.
shelarcy <she...@gm...>**20090108142643
Ignore-this: 2160aa7a6c9e4b5ed07ea0f17be20332
] =
[Fix typos in previous color's alpha channel support.
shelarcy <she...@gm...>**20090107021037
Ignore-this: 710e1ec9472142465ed050c97e49892d
] =
[Add experimental alpha channel support to Color type.
shelarcy <she...@gm...>**20090106182310
Ignore-this: 6c35ed5d80bed81134a6110cd9cfb60a
] =
[Add Word support.
shelarcy <she...@gm...>**20090106171139
Ignore-this: 81376472899f15f9724f724b656c251d
] =
[Change Color's primitive type from CChar to Word8.
shelarcy <she...@gm...>**20090106151818
Ignore-this: a63da969a83ee42f141db3797b824fc8
] =
[Add Word8 and Word32 support.
shelarcy <she...@gm...>**20090106141358
Ignore-this: 704189efa0ea7576c4752df6d9a39faf
] =
[Bump version number to 0.11.1
shelarcy <she...@gm...>**20090106132911
Ignore-this: d945970996e6812d312a0592c2ff2b6e
] =
[Remove unused wxWidgets 2.4 and 2.6's Visual Studio project files.
shelarcy <she...@gm...>**20090105012854
Ignore-this: 20cc431e49694e048d1d676170200ed6
] =
[TAG 0.11.0
shelarcy <she...@gm...>**20090102223052] =
Patch bundle hash:
c005a51aa2dcacfa868be90aacefed1e6e57f680
--=_--
.
|