diff options
author | Dan Gudmundsson <[email protected]> | 2013-01-25 15:56:43 +0100 |
---|---|---|
committer | Dan Gudmundsson <[email protected]> | 2013-01-25 15:56:43 +0100 |
commit | 697e9178b8c9dc825e221f2750afac516478976a (patch) | |
tree | 30ed18f6a14c825b7ee78fac8ab82c4ad63e4f5a /lib/wx/api_gen/wx_gen_erl.erl | |
parent | ed2be3f6913559b8d9ffd65609b7a2ca32367c05 (diff) | |
parent | 489b963bae3dd522bca228978f0b164ec422fc6f (diff) | |
download | otp-697e9178b8c9dc825e221f2750afac516478976a.tar.gz otp-697e9178b8c9dc825e221f2750afac516478976a.tar.bz2 otp-697e9178b8c9dc825e221f2750afac516478976a.zip |
Merge branch 'dgud/wx/treectrl/OTP-10743'
* dgud/wx/treectrl/OTP-10743:
wx: Add wxTreeCtrl:isTreeItemIdOk/1
wx: Fix wxTreeCtrl return values
Diffstat (limited to 'lib/wx/api_gen/wx_gen_erl.erl')
-rw-r--r-- | lib/wx/api_gen/wx_gen_erl.erl | 59 |
1 files changed, 34 insertions, 25 deletions
diff --git a/lib/wx/api_gen/wx_gen_erl.erl b/lib/wx/api_gen/wx_gen_erl.erl index a999a869e6..2e1a0d617a 100644 --- a/lib/wx/api_gen/wx_gen_erl.erl +++ b/lib/wx/api_gen/wx_gen_erl.erl @@ -1,7 +1,7 @@ %% %% %CopyrightBegin% %% -%% Copyright Ericsson AB 2008-2012. All Rights Reserved. +%% Copyright Ericsson AB 2008-2013. All Rights Reserved. %% %% The contents of this file are subject to the Erlang Public License, %% Version 1.1, (the "License"); you may not use this file except in @@ -218,33 +218,37 @@ check_class(#type{base={class,Name},xml=Xml}) -> gen_export(#class{name=Class,abstract=Abs},Ms0) -> RemoveC = fun(#method{where=merged_c}) -> false;(_Other) -> true end, Res = filter(RemoveC, Ms0), + GetF = fun(M=#method{method_type=constructor,where=W,params=Ps}) -> + {Args,Opts} = split_optional(Ps), + OptLen = case Opts of + [] -> 0; + _ when W =:= erl_no_opt -> 0; + _ -> 1 + end, + deprecated(M, "new" ++ "/" ++ integer_to_list(length(Args)+OptLen)); + (M=#method{method_type=destructor}) -> + case Abs of + true -> []; + _ -> deprecated(M, "destroy/1") + end; + (M=#method{name=N,alias=A,where=W, params=Ps}) -> + {Args,Opts} = split_optional(Ps), + OptLen = case Opts of + [] -> 0; + _ when W =:= erl_no_opt -> 0; + _ -> 1 + end, + deprecated(M, erl_func_name(N,A) ++ "/" ++ integer_to_list(length(Args) + OptLen)) + end, case Res of [] -> []; [M=#method{where=taylormade}|_] -> - [deprecated(M, taylormade_export(Class, M))]; + try + [deprecated(M, taylormade_export(Class, M))] + catch error:{badmatch, {error, enoent}} -> + lists:map(GetF, Res) + end; Ms -> - GetF = fun(M=#method{method_type=constructor,where=W,params=Ps}) -> - {Args,Opts} = split_optional(Ps), - OptLen = case Opts of - [] -> 0; - _ when W =:= erl_no_opt -> 0; - _ -> 1 - end, - deprecated(M, "new" ++ "/" ++ integer_to_list(length(Args)+OptLen)); - (M=#method{method_type=destructor}) -> - case Abs of - true -> []; - _ -> deprecated(M, "destroy/1") - end; - (M=#method{name=N,alias=A,where=W, params=Ps}) -> - {Args,Opts} = split_optional(Ps), - OptLen = case Opts of - [] -> 0; - _ when W =:= erl_no_opt -> 0; - _ -> 1 - end, - deprecated(M, erl_func_name(N,A) ++ "/" ++ integer_to_list(length(Args) + OptLen)) - end, lists:map(GetF, Ms) end. @@ -262,7 +266,12 @@ gen_method(Class,Ms0) -> case Res of [] -> Ms0; [#method{where=taylormade}|_] -> - taylormade_func(Class, Res), + try + taylormade_func(Class, Res) + catch error:{badmatch, {error, enoent}} -> + gen_doc(Class,Res), + gen_method1(Res) + end, Ms0; Ms -> gen_doc(Class,Ms), |