select owner, object_name, package_name, argument_name, position, data_type, in_out
where owner = (case when lc_user is null then user else lc_user end)
and package_name = (case when lc_pkg_nm is null then package_name else lc_pkg_nm end)
order by owner, package_name, object_name, position;
Further another view called all_source is also pretty useful if you have to look at the actual source code of a component.
Following links helped me on this -