From: Duncan C. <dun...@us...> - 2005-04-06 22:04:09
|
Update of /cvsroot/gtk2hs/gtk2hs/tools/apiGen In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv21415/tools/apiGen Modified Files: ApiGen.hs Template.chs CodeGen.hs FormatDocs.hs Marshal.hs MarshalFixup.hs gtk.ignore Log Message: More ApiGen updates: ApiGen.hs, Template.chs: fix rcs tags. CodeGen.hs: minor bug fixes. FormatDocs.hs: rename a function. Allow us to fix when a module is available from since the mechanism we use to detect this does not always work. Marshal.hs: rename a function. Add marshaling support for GdkColor and improve support for GtkTreePath. MarshalFixup.hs: add fixup info for the version when a module is available from. Generalise stripKnownPrefixes to cTypeNameToHSType so we can deal with the naming of GdkWindow -> DrawWindow and PangoLayout remains PangoLayout rather than having the Pango prefix stripped off. Add many more cases to the other fixup tables. gtk.ignore: ignore more internal functions that we do not want to bind. Index: Template.chs =================================================================== RCS file: /cvsroot/gtk2hs/gtk2hs/tools/apiGen/Template.chs,v retrieving revision 1.10 retrieving revision 1.11 diff -u -d -r1.10 -r1.11 --- Template.chs 1 Apr 2005 22:55:22 -0000 1.10 +++ Template.chs 6 Apr 2005 22:03:59 -0000 1.11 @@ -5,7 +5,7 @@ -- -- Created: @DATE@ -- --- Version $Revision$ from $Date$ +-- Version @RCS_VERSION@ from @RCS_TIMESTAMP@ -- -- Copyright (C) @YEAR@ @COPYRIGHT@ -- Index: Marshal.hs =================================================================== RCS file: /cvsroot/gtk2hs/gtk2hs/tools/apiGen/Marshal.hs,v retrieving revision 1.10 retrieving revision 1.11 diff -u -d -r1.10 -r1.11 --- Marshal.hs 31 Mar 2005 16:39:19 -0000 1.10 +++ Marshal.hs 6 Apr 2005 22:03:59 -0000 1.11 @@ -147,7 +147,7 @@ \body -> body. indent 2. implementation) where typeName = init typeName' - shortTypeName = stripKnownPrefixes typeName + shortTypeName = cTypeNameToHSType typeName typeKind = lookupFM knownSymbols typeName -- Enums ------------------------------- @@ -157,7 +157,7 @@ (Nothing, InParam shortTypeName, \body -> body. indent 2. ss "((fromIntegral . fromEnum) ". ss name. ss ")") - where shortTypeName = stripKnownPrefixes typeName + where shortTypeName = cTypeNameToHSType typeName typeKind = lookupFM knownSymbols typeName -- Flags ------------------------------- @@ -167,7 +167,7 @@ (Nothing, InParam ("[" ++ shortTypeName ++ "]"), \body -> body. indent 2. ss "((fromIntegral . fromFlags) ". ss name. ss ")") - where shortTypeName = stripKnownPrefixes typeName + where shortTypeName = cTypeNameToHSType typeName typeKind = lookupFM knownSymbols typeName genMarshalParameter _ _ name textIter | textIter == "const-GtkTextIter*" @@ -181,11 +181,22 @@ \body -> body. indent 2. ss name) -genMarshalParameter _ _ name "GtkTreePath*" = - (Nothing, InParam "TreePath", - \body -> ss "withTreePath ". ss name. ss " $ \\". ss name. ss " ->". +genMarshalParameter _ funcName name "GtkTreePath*" = + if maybeNullParameter funcName name + then (Nothing, InParam "Maybe TreePath", + \body -> ss "maybeWith withTreePath ". ss name. ss " $ \\". ss name. ss " ->". + indent 1. body. + indent 2. ss name) + else (Nothing, InParam "TreePath", + \body -> ss "withTreePath ". ss name. ss " $ \\". ss name. ss " ->". + indent 1. body. + indent 2. ss name) + +genMarshalParameter _ _ name "const-GdkColor*" = + (Nothing, InParam "Color", + \body -> ss "with ". ss name. ss " $ \\". ss name. ss "Ptr ->". indent 1. body. - indent 2. ss name) + indent 2. ss name. ss "Ptr") -- Out parameters ------------------------------- @@ -216,6 +227,11 @@ \body -> body. indent 2. ss name. ss "Ptr") +genMarshalParameter _ _ name "GdkColor*" = + (Nothing, OutParam "Color", + \body -> body. + indent 2. ss name. ss "Ptr") + -- Catch all case ------------------------------- genMarshalParameter _ _ name unknownType = (Nothing, InParam $ "{-" ++ unknownType ++ "-}", @@ -241,6 +257,9 @@ genMarshalOutParameter "String" name = (ss "alloca $ \\". ss name. ss "Ptr ->". indent 1 ,indent 1. ss "peek ". ss name. ss "Ptr >>= readUTFString >>= \\". ss name. ss " ->" ,ss name) +genMarshalOutParameter "Color" name = (ss "alloca $ \\". ss name. ss "Ptr ->". indent 1 + ,indent 1. ss "peek ". ss name. ss "Ptr >>= \\". ss name. ss " ->" + ,ss name) genMarshalOutParameter paramType name = (id, id, ss name) @@ -309,7 +328,7 @@ \body -> ss constructor. ss " mk". ss shortTypeName. ss " $". cast. indent 1. body) where typeName = init typeName' - shortTypeName = stripKnownPrefixes typeName + shortTypeName = cTypeNameToHSType typeName typeKind = lookupFM knownSymbols typeName constructor | "GtkObject" `elem` sym_object_parents (fromJust typeKind) = "makeNewObject" @@ -317,8 +336,8 @@ = "makeNewGObject" cast | funcIsConstructor && constructorReturnType /= typeName = - indent 1. ss "liftM (castPtr :: Ptr ". ss (stripKnownPrefixes constructorReturnType). - ss " -> Ptr ". ss (stripKnownPrefixes typeName). ss ") $" + indent 1. ss "liftM (castPtr :: Ptr ". ss (cTypeNameToHSType constructorReturnType). + ss " -> Ptr ". ss (cTypeNameToHSType typeName). ss ") $" | otherwise = id where constructorReturnType | "GtkWidget" `elem` sym_object_parents (fromJust typeKind) = "GtkWidget" @@ -330,7 +349,7 @@ (shortTypeName, \body -> ss "liftM (toEnum . fromIntegral) $". indent 1. body) - where shortTypeName = stripKnownPrefixes typeName + where shortTypeName = cTypeNameToHSType typeName typeKind = lookupFM knownSymbols typeName genMarshalResult knownSymbols _ _ typeName @@ -339,7 +358,7 @@ ("[" ++ shortTypeName ++ "]", \body -> ss "liftM (toFlags . fromIntegral) $". indent 1. body) - where shortTypeName = stripKnownPrefixes typeName + where shortTypeName = cTypeNameToHSType typeName typeKind = lookupFM knownSymbols typeName genMarshalResult _ _ _ unknownType = ("{-" ++ unknownType ++ "-}", id) @@ -358,21 +377,21 @@ | isUpper (head typeName) && symbolIsObject typeKind = (shortTypeName, "GVobject") - where shortTypeName = stripKnownPrefixes typeName + where shortTypeName = cTypeNameToHSType typeName typeKind = lookupFM knownSymbols typeName genMarshalProperty knownSymbols typeName | isUpper (head typeName) && symbolIsEnum typeKind = (shortTypeName, "GVenum") - where shortTypeName = stripKnownPrefixes typeName + where shortTypeName = cTypeNameToHSType typeName typeKind = lookupFM knownSymbols typeName genMarshalProperty knownSymbols typeName | isUpper (head typeName) && symbolIsFlags typeKind = (shortTypeName, "GVflags") - where shortTypeName = stripKnownPrefixes typeName + where shortTypeName = cTypeNameToHSType typeName typeKind = lookupFM knownSymbols typeName genMarshalProperty _ unknown = ("{-" ++ unknown ++ "-}", "{-" ++ unknown ++ "-}") @@ -395,14 +414,14 @@ convertSignalType _ "gchar*" = ("STRING", "String") convertSignalType _ "const-gchar*" = ("STRING", "String") convertSignalType knownSymbols typeName - | symbolIsEnum typeKind = ("ENUM", stripKnownPrefixes typeName) - | symbolIsFlags typeKind = ("FLAGS", stripKnownPrefixes typeName) + | symbolIsEnum typeKind = ("ENUM", cTypeNameToHSType typeName) + | symbolIsFlags typeKind = ("FLAGS", cTypeNameToHSType typeName) where typeKind = lookupFM knownSymbols typeName convertSignalType knownSymbols typeName@(_:_) | last typeName == '*' - && symbolIsBoxed typeKind = ("BOXED", stripKnownPrefixes (init typeName)) + && symbolIsBoxed typeKind = ("BOXED", cTypeNameToHSType (init typeName)) | last typeName == '*' - && symbolIsObject typeKind = ("OBJECT", stripKnownPrefixes (init typeName)) + && symbolIsObject typeKind = ("OBJECT", cTypeNameToHSType (init typeName)) where typeKind = lookupFM knownSymbols (init typeName) convertSignalType _ typeName = ("{-" ++ typeName ++ "-}", "{-" ++ typeName ++ "-}") Index: CodeGen.hs =================================================================== RCS file: /cvsroot/gtk2hs/gtk2hs/tools/apiGen/CodeGen.hs,v retrieving revision 1.16 retrieving revision 1.17 diff -u -d -r1.16 -r1.17 --- CodeGen.hs 1 Apr 2005 22:55:22 -0000 1.16 +++ CodeGen.hs 6 Apr 2005 22:03:59 -0000 1.17 @@ -13,7 +13,7 @@ import Marshal import StringUtils import ModuleScan -import MarshalFixup (stripKnownPrefixes, maybeNullParameter, maybeNullResult, +import MarshalFixup (cTypeNameToHSType, maybeNullParameter, maybeNullResult, fixCFunctionName, leafClass, nukeParameterDocumentation) import Prelude hiding (Enum, lines) @@ -94,8 +94,9 @@ ,DocText " - "] ) ++ paramdoc_paragraph paramdoc) | paramdoc <- funcdoc_params doc - , not (nukeParameterDocumentation (method_cname method) - (paramdoc_name paramdoc))] + , not $ nukeParameterDocumentation + (method_cname method) + (cParamNameToHsName (paramdoc_name paramdoc)) ] formatParamTypes :: [(String, Maybe [DocParaSpan])] -> ShowS formatParamTypes paramTypes = format True False paramTypes @@ -207,8 +208,8 @@ | (doc,index) <- zip docs [1..] ] infomap = [ (methodinfo_cname info, (info,index)) | (info,index) <- zip methodsInfo [1..] ] - endDocIndex = length docs - endInfoIndex = length methodsInfo + endDocIndex = length docs + 1 + endInfoIndex = length methodsInfo + 1 mungeMethod :: Object -> Method -> Method mungeMethod object method = @@ -243,7 +244,7 @@ where docmap = [ (funcdoc_name doc, deleteReturnDoc doc) | doc <- docs ] infomap = [ (methodinfo_cname info, (info,index)) | (info,index) <- zip methodsInfo [1..] ] - endInfoIndex = length methodsInfo + endInfoIndex = length methodsInfo + 1 -- the documentation for the constructor return value is almost -- universally useless and pointless so remove it. deleteReturnDoc doc = doc { funcdoc_params = [ p | p <- funcdoc_params doc @@ -422,7 +423,7 @@ | implement <- object_implements object ] genImplement object implements = - ss "instance ".ss (stripKnownPrefixes implements). ss "Class ". ss (object_name object) + ss "instance ".ss (cTypeNameToHSType implements). ss "Class ". ss (object_name object) canonicalSignalName :: String -> String canonicalSignalName = map dashToUnderscore Index: FormatDocs.hs =================================================================== RCS file: /cvsroot/gtk2hs/gtk2hs/tools/apiGen/FormatDocs.hs,v retrieving revision 1.9 retrieving revision 1.10 diff -u -d -r1.9 -r1.10 --- FormatDocs.hs 1 Mar 2005 21:20:45 -0000 1.9 +++ FormatDocs.hs 6 Apr 2005 22:03:59 -0000 1.10 @@ -23,7 +23,8 @@ import Api (NameSpace(..), Object(..), Method(..)) import Docs import Marshal (KnownSymbols, CSymbol(..)) -import MarshalFixup (stripKnownPrefixes, knownMiscType, fixCFunctionName) +import MarshalFixup (cTypeNameToHSType, knownMiscType, fixCFunctionName + ,fixModuleAvailableSince) import StringUtils import Maybe (isJust) @@ -68,7 +69,7 @@ haddocTweakHierarchy :: String -> String haddocTweakHierarchy ('+':'-':'-':'-':'-':cs@(c:_)) | c /= ''' = - case span isAlpha cs of (word, rest) -> "+----" ++ stripKnownPrefixes word ++ rest + case span isAlpha cs of (word, rest) -> "+----" ++ cTypeNameToHSType word ++ rest haddocTweakHierarchy (c:cs) = c : haddocTweakHierarchy cs haddocTweakHierarchy [] = [] @@ -85,7 +86,8 @@ [ if funcdoc_since funcdoc > baseVersion then funcdoc { funcdoc_paragraphs = funcdoc_paragraphs funcdoc ++ - let line = "Available since " ++ namespace_name namespace + let line = "Available since " ++ (let name = namespace_name namespace + in if name == "Gtk" then "Gtk+" else name) ++ " version " ++ funcdoc_since funcdoc in [DocParaListItem [DocText line]] } @@ -116,10 +118,12 @@ -- figure out if the whole module appeared in some version of gtk later -- than the original version moduleVersion :: String - moduleVersion = case [ funcdoc_since funcdoc - | funcdoc <- moduledoc_functions apiDoc ] of - [] -> "" - versions -> minimum versions + moduleVersion | null fixed = case [ funcdoc_since funcdoc + | funcdoc <- moduledoc_functions apiDoc ] of + [] -> "" + versions -> minimum versions + | otherwise = fixed + where fixed = fixModuleAvailableSince (moduledoc_name apiDoc) moduleDeprecatedParagraph = if maybe False object_deprecated object @@ -183,12 +187,12 @@ Nothing | text == "TRUE" -> "@True@" | text == "FALSE" -> "@False@" | otherwise -> "{" ++ text ++ ", FIXME: unknown type/value}" - Just (SymObjectType _) -> "'" ++ stripKnownPrefixes text ++ "'" - Just (SymEnumType _) -> "'" ++ stripKnownPrefixes text ++ "'" + Just (SymObjectType _) -> "'" ++ cTypeNameToHSType text ++ "'" + Just (SymEnumType _) -> "'" ++ cTypeNameToHSType text ++ "'" Just SymEnumValue -> "'" ++ cConstNameToHsName text ++ "'" Just SymStructType -> "{" ++ text ++ ", FIXME: struct type}" Just SymBoxedType -> if knownMiscType text - then "'" ++ stripKnownPrefixes text ++ "'" + then "'" ++ cTypeNameToHSType text ++ "'" else "{" ++ text ++ ", FIXME: boxed type}" Just SymClassType -> "{" ++ text ++ ", FIXME: class type}" Just SymTypeAlias -> "{" ++ text ++ ", FIXME: type alias}" @@ -207,14 +211,14 @@ case lookupFM knownSymbols text of Nothing -> "@" ++ escapeHaddockSpecialChars text ++ "@" Just SymEnumValue -> "'" ++ cConstNameToHsName text ++ "'" - Just (SymObjectType _) -> "'" ++ stripKnownPrefixes text ++ "'" + Just (SymObjectType _) -> "'" ++ cTypeNameToHSType text ++ "'" _ -> "{" ++ text ++ ", FIXME: unknown literal value}" --TODO fill in the other cases haddocFormatSpan _ _ (DocArg text) = "@" ++ cParamNameToHsName text ++ "@" cFuncNameToHsName :: String -> String cFuncNameToHsName = lowerCaseFirstChar - . stripKnownPrefixes + . cTypeNameToHSType . toStudlyCapsWithFixups . takeWhile ('('/=) @@ -225,7 +229,7 @@ cConstNameToHsName :: String -> String cConstNameToHsName = --change "GTK_UPDATE_DISCONTINUOUS" to "UpdateDiscontinuous" - stripKnownPrefixes + cTypeNameToHSType . toStudlyCaps . map toLower @@ -243,8 +247,8 @@ . splitBy '_' changeIllegalNames :: String -> String -changeIllegalNames "type" = "type_" --this is a common variable name in C but of - --course a keyword in Haskell +changeIllegalNames "type" = "type_" --these are common variable names in C but +changeIllegalNames "where" = "where_" --of course are keywords in Haskell changeIllegalNames other = other escapeHaddockSpecialChars = escape @@ -269,12 +273,12 @@ ++ "be converted to a Maybe data type}" ++ remainder | word' == "G_MAXINT" = "@('maxBound' :: Int)@" ++ remainder | isJust e = case e of - Just (SymObjectType _) -> "'" ++ stripKnownPrefixes word' ++ "'" ++ remainder - Just (SymEnumType _) -> "'" ++ stripKnownPrefixes word' ++ "'" ++ remainder + Just (SymObjectType _) -> "'" ++ cTypeNameToHSType word' ++ "'" ++ remainder + Just (SymEnumType _) -> "'" ++ cTypeNameToHSType word' ++ "'" ++ remainder Just SymEnumValue -> "'" ++ cConstNameToHsName word' ++ "'" ++ remainder Just SymStructType -> "{" ++ word' ++ ", FIXME: struct type}" Just SymBoxedType -> if knownMiscType word' - then "'" ++ stripKnownPrefixes word' ++ "'" + then "'" ++ cTypeNameToHSType word' ++ "'" else "{" ++ word' ++ ", FIXME: boxed type}" Just SymClassType -> "{" ++ word' ++ ", FIXME: class type}" Just SymTypeAlias -> "{" ++ word' ++ ", FIXME: type alias}" Index: ApiGen.hs =================================================================== RCS file: /cvsroot/gtk2hs/gtk2hs/tools/apiGen/ApiGen.hs,v retrieving revision 1.22 retrieving revision 1.23 diff -u -d -r1.22 -r1.23 --- ApiGen.hs 1 Apr 2005 22:55:22 -0000 1.22 +++ ApiGen.hs 6 Apr 2005 22:03:58 -0000 1.23 @@ -166,8 +166,8 @@ "OBJECT_KIND" -> ss $ if object_isinterface object then "Interface" else "Widget" "OBJECT_NAME" -> ss $ module_name moduleInfo "AUTHORS" -> ss $ concat $ intersperse ", " $ module_authors moduleInfo - "RCS_VERSION" -> ss $ module_rcs_version moduleInfo - "RCS_TIMESTAMP" -> ss $ module_rcs_timestamp moduleInfo + "RCS_VERSION" -> ss "$Revision$" + "RCS_TIMESTAMP" -> ss "$Date$" "COPYRIGHT" -> ss $ concat $ intersperse ", " $ module_copyright_holders moduleInfo "DESCRIPTION" -> haddocFormatParas knownTypes False (moduledoc_summary moduleDoc) "DOCUMENTATION" -> genModuleDocumentation knownTypes moduleDoc Index: gtk.ignore =================================================================== RCS file: /cvsroot/gtk2hs/gtk2hs/tools/apiGen/gtk.ignore,v retrieving revision 1.2 retrieving revision 1.3 diff -u -d -r1.2 -r1.3 --- gtk.ignore 27 Mar 2005 12:59:06 -0000 1.2 +++ gtk.ignore 6 Apr 2005 22:03:59 -0000 1.3 @@ -31,3 +31,14 @@ exclude gtk_widget_hide_on_delete exclude gtk_widget_destroyed +#these function is mostly intended for use by accessibility technologies +exclude gtk_combo_box_get_popup_accessible + +#internal or unnecessary GtkAaccelLabel methods +exclude gtk_accel_label_get_accel_width +exclude gtk_accel_label_refetch +exclude gtk_accel_label_set_accel_closure + +#internal FileFilter methods +exclude gtk_file_filter_get_needed +exclude gtk_file_filter_filter Index: MarshalFixup.hs =================================================================== RCS file: /cvsroot/gtk2hs/gtk2hs/tools/apiGen/MarshalFixup.hs,v retrieving revision 1.5 retrieving revision 1.6 diff -u -d -r1.5 -r1.6 --- MarshalFixup.hs 1 Apr 2005 22:55:22 -0000 1.5 +++ MarshalFixup.hs 6 Apr 2005 22:03:59 -0000 1.6 @@ -5,13 +5,15 @@ module MarshalFixup where -stripKnownPrefixes :: String -> String -stripKnownPrefixes ('A':'t':'k':remainder) = remainder -stripKnownPrefixes ('G':'t':'k':remainder) = remainder -stripKnownPrefixes ('G':'d':'k':remainder) = remainder -stripKnownPrefixes ('P':'a':'n':'g':'o':remainder) = remainder -stripKnownPrefixes ('G':'n':'o':'m':'e':remainder) = remainder -stripKnownPrefixes other = other +cTypeNameToHSType :: String -> String +cTypeNameToHSType ('A':'t':'k':remainder) = remainder +cTypeNameToHSType ('G':'t':'k':remainder) = remainder +cTypeNameToHSType "GdkWindow" = "DrawWindow" +cTypeNameToHSType ('G':'d':'k':remainder) = remainder +cTypeNameToHSType "PangoLayout" = "PangoLayout" +cTypeNameToHSType ('P':'a':'n':'g':'o':remainder) = remainder +cTypeNameToHSType ('G':'n':'o':'m':'e':remainder) = remainder +cTypeNameToHSType other = other -- some special cases for when converting "gtk_foo_bar" to "GtkFooBar" -- eg instead of doing gtk_hadjustment -> GtkHadjustment @@ -34,8 +36,20 @@ fixCFunctionName "vseparator" = "VSeparator" fixCFunctionName "hscrollbar" = "HScrollbar" fixCFunctionName "vscrollbar" = "VScrollbar" +fixCFunctionName "uri" = "URI" +fixCFunctionName "uris" = "URIs" fixCFunctionName other = other +-- In some cases the way we work out the minimum version of the module doesn't +-- work (since the docs sometimes miss marking the version of some functions) +-- So to fix it just specify here the version of the library from which the +-- module is available. +fixModuleAvailableSince "GtkComboBox" = "2.4" +fixModuleAvailableSince "GtkFileChooser" = "2.4" +fixModuleAvailableSince "GtkCellView" = "2.6" +fixModuleAvailableSince "GtkIconView" = "2.6" +fixModuleAvailableSince _ = "" + -- These are ones we have bound and so we can make documentation references to -- them. Otherwise we generate FIXME messages in the docs. knownMiscType :: String -> Bool @@ -58,11 +72,16 @@ leafClass "GtkImage" = True leafClass "GtkIconFactory" = True leafClass "GtkEntryCompletion" = True -leafClass "GtkFileFilter" = True +leafClass "GtkFileFilter" = True leafClass "GtkUIManager" = True leafClass "GtkRadioButton" = True leafClass "GtkEventBox" = True leafClass "GtkExpander" = True +leafClass "GtkAccelGroup" = True +leafClass "GdkScreen" = True +leafClass "GtkTooltips" = True +leafClass "GtkTextChildAnchor" = True +leafClass "GdkWindow" = True leafClass _ = False -- This is a table of fixup information. It lists function parameters that @@ -76,13 +95,27 @@ -- out which function doc NULLs correspond to which parameters). -- maybeNullParameter :: String -> String -> Bool -maybeNullParameter "gtk_entry_completion_set_model" "model" = True -maybeNullParameter "gtk_label_new" "str" = True -maybeNullParameter "gtk_about_dialog_set_license" "license" = True -maybeNullParameter "gtk_about_dialog_set_logo" "logo" = True +maybeNullParameter "gtk_entry_completion_set_model" "model" = True +maybeNullParameter "gtk_label_new" "str" = True +maybeNullParameter "gtk_about_dialog_set_license" "license" = True +maybeNullParameter "gtk_about_dialog_set_logo" "logo" = True maybeNullParameter "gtk_about_dialog_set_logo_icon_name" "logo" = True -maybeNullParameter "gtk_layout_new" _ = True -maybeNullParameter "gtk_notebook_set_menu_label" "menuLabel" = True +maybeNullParameter "gtk_layout_new" _ = True +maybeNullParameter "gtk_notebook_set_menu_label" "menuLabel" = True +maybeNullParameter "gtk_scrolled_window_new" "hadjustment" = True +maybeNullParameter "gtk_scrolled_window_new" "vadjustment" = True +maybeNullParameter "gtk_combo_box_set_model" "model" = True +maybeNullParameter "gtk_menu_set_screen" "screen" = True +maybeNullParameter "gtk_menu_item_set_accel_path" "accelPath" = True +maybeNullParameter "gtk_toolbar_set_drop_highlight_item" "toolItem" = True +maybeNullParameter "gtk_text_buffer_new" "table" = True +maybeNullParameter "gtk_text_buffer_create_mark" "markName" = True +maybeNullParameter "gtk_cell_view_set_displayed_row" "path" = True +maybeNullParameter "gtk_about_dialog_set_logo_icon_name" "iconName" = True +maybeNullParameter "gtk_widget_modify_fg" "color" = True +maybeNullParameter "gtk_widget_modify_bg" "color" = True +maybeNullParameter "gtk_widget_modify_text" "color" = True +maybeNullParameter "gtk_widget_modify_base" "color" = True maybeNullParameter _ _ = False -- similarly for method return values/types. @@ -102,60 +135,251 @@ maybeNullResult "gtk_notebook_get_nth_page" = True maybeNullResult "gtk_notebook_get_tab_label" = True maybeNullResult "gtk_notebook_get_tab_label_text" = True +maybeNullResult "gtk_combo_box_get_model" = True +maybeNullResult "gtk_image_menu_item_get_image" = True +maybeNullResult "gtk_menu_get_title" = True +maybeNullResult "gtk_menu_item_get_submenu" = True +maybeNullResult "gtk_tool_item_retrieve_proxy_menu_item" = True +maybeNullResult "gtk_tool_item_get_proxy_menu_item" = True +maybeNullResult "gtk_toolbar_get_nth_item" = True +maybeNullResult "gtk_file_chooser_get_filename" = True +maybeNullResult "gtk_file_chooser_get_current_folder" = True +maybeNullResult "gtk_file_chooser_get_uri" = True +maybeNullResult "gtk_file_chooser_get_preview_widget" = True +maybeNullResult "gtk_file_chooser_get_preview_filename" = True +maybeNullResult "gtk_file_chooser_get_preview_uri" = True +maybeNullResult "gtk_file_chooser_get_extra_widget" = True +maybeNullResult "gtk_file_chooser_get_filter" = True +maybeNullResult "gtk_font_selection_get_font_name" = True +maybeNullResult "gtk_font_selection_dialog_get_font_name" = True +maybeNullResult "gtk_text_mark_get_name" = True +maybeNullResult "gtk_text_mark_get_buffer" = True +maybeNullResult "gtk_text_tag_table_lookup" = True +maybeNullResult "gtk_text_buffer_get_mark" = True +maybeNullResult "gtk_text_view_get_window" = True +maybeNullResult "gtk_icon_view_get_path_at_pos" = True +maybeNullResult "gtk_combo_box_get_active_text" = True +maybeNullResult "gtk_scale_get_layout" = True +maybeNullResult "gtk_button_get_image" = True +maybeNullResult "gtk_image_get_animation" = True +maybeNullResult "gtk_window_get_transient_for" = True +maybeNullResult "gtk_window_get_role" = True +maybeNullResult "gtk_window_get_title" = True +maybeNullResult "gtk_widget_render_icon" = True +maybeNullResult "gtk_widget_get_composite_name" = True maybeNullResult _ = False -- Often the documentation for parameters or the return value of functions -- that is included in the gtk-doc docs are just pointless. So this table -- lists the function and parameter names for which we do not want to use the -- gtk-doc documentation. -nukeParameterDocumentation :: String -> String -> Bool -nukeParameterDocumentation "gtk_button_box_get_layout" "Returns" = True -nukeParameterDocumentation "gtk_button_set_label" "label" = True -nukeParameterDocumentation "gtk_button_get_label" "Returns" = True -nukeParameterDocumentation "gtk_toggle_button_get_active" "Returns" = True -nukeParameterDocumentation "gtk_image_new_from_file" "filename" = True -nukeParameterDocumentation "gtk_image_new_from_pixbuf" "pixbuf" = True -nukeParameterDocumentation "gtk_label_new" "str" = True -nukeParameterDocumentation "gtk_label_set_text" "str" = True -nukeParameterDocumentation "gtk_label_set_label" "str" = True -nukeParameterDocumentation "gtk_label_set_justify" "jtype" = True -nukeParameterDocumentation "gtk_label_get_justify" "Returns" = True -nukeParameterDocumentation "gtk_label_set_use_underline" "setting" = True -nukeParameterDocumentation "gtk_label_get_use_underline" "Returns" = True -nukeParameterDocumentation "gtk_label_get_text" "Returns" = True -nukeParameterDocumentation "gtk_label_get_label" "Returns" = True -nukeParameterDocumentation "gtk_label_set_text_with_mnemonic" "str" = True -nukeParameterDocumentation "gtk_progress_bar_set_text" "text" = True -nukeParameterDocumentation "gtk_progress_bar_get_orientation" "Returns" = True -nukeParameterDocumentation "gtk_progress_bar_set_orientation" "orientation" = True -nukeParameterDocumentation "gtk_statusbar_set_has_resize_grip" "setting" = True -nukeParameterDocumentation "gtk_statusbar_get_has_resize_grip" "Returns" = True -nukeParameterDocumentation "gtk_editable_get_editable" "Returns" = True -nukeParameterDocumentation "gtk_entry_set_text" "text" = True -nukeParameterDocumentation "gtk_entry_get_text" "Returns" = True -nukeParameterDocumentation "gtk_entry_append_text" "text" = True -nukeParameterDocumentation "gtk_entry_prepend_text" "text" = True -nukeParameterDocumentation "gtk_entry_set_invisible_char" "ch" = True -nukeParameterDocumentation "gtk_entry_set_has_frame" "setting" = True -nukeParameterDocumentation "gtk_entry_set_completion" "completion" = True -nukeParameterDocumentation "spin_button_get_value" "Returns" = True -nukeParameterDocumentation "spin_button_get_value_as_int" "Returns" = True -nukeParameterDocumentation "spin_button_set_value" "value" = True -nukeParameterDocumentation "gtk_expander_new" "label" = True -nukeParameterDocumentation "gtk_expander_set_expanded" "expanded" = True -nukeParameterDocumentation "gtk_expander_get_expanded" "Returns" = True -nukeParameterDocumentation "gtk_expander_set_spacing" "spacing" = True -nukeParameterDocumentation "gtk_expander_set_label" "label" = True -nukeParameterDocumentation "gtk_expander_get_label" "Returns" = True -nukeParameterDocumentation "gtk_expander_get_use_markup" "Returns" = True -nukeParameterDocumentation "gtk_fixed_set_has_window" "hasWindow" = True -nukeParameterDocumentation "gtk_fixed_get_has_window" "Returns" = True -nukeParameterDocumentation "gtk_notebook_get_n_pages" "Returns" = True -nukeParameterDocumentation "gtk_adjustment_set_value" "value" = True -nukeParameterDocumentation "gtk_adjustment_get_value" "Returns" = True -nukeParameterDocumentation "gtk_arrow_new" "arrowType" = True -nukeParameterDocumentation "gtk_arrow_new" "shadowType" = True -nukeParameterDocumentation _ _ = False +nukeParamDoc :: String -> String -> Bool +nukeParamDoc "gtk_button_box_get_layout" "returns" = True +nukeParamDoc "gtk_button_set_label" "label" = True +nukeParamDoc "gtk_button_get_label" "returns" = True +nukeParamDoc "gtk_toggle_button_get_active" "returns" = True +nukeParamDoc "gtk_image_new_from_file" "filename" = True +nukeParamDoc "gtk_image_new_from_pixbuf" "pixbuf" = True +nukeParamDoc "gtk_label_new" "str" = True +nukeParamDoc "gtk_label_set_text" "str" = True +nukeParamDoc "gtk_label_set_label" "str" = True +nukeParamDoc "gtk_label_set_justify" "jtype" = True +nukeParamDoc "gtk_label_get_justify" "returns" = True +nukeParamDoc "gtk_label_set_use_underline" "setting" = True +nukeParamDoc "gtk_label_get_use_underline" "returns" = True +nukeParamDoc "gtk_label_get_layout" "returns" = True +nukeParamDoc "gtk_label_get_text" "returns" = True +nukeParamDoc "gtk_label_get_label" "returns" = True +nukeParamDoc "gtk_label_set_text_with_mnemonic" "str" = True +nukeParamDoc "gtk_progress_bar_set_text" "text" = True +nukeParamDoc "gtk_progress_bar_get_orientation" "returns" = True +nukeParamDoc "gtk_progress_bar_set_orientation" "orientation" = True +nukeParamDoc "gtk_statusbar_set_has_resize_grip" "setting" = True +nukeParamDoc "gtk_statusbar_get_has_resize_grip" "returns" = True +nukeParamDoc "gtk_editable_get_editable" "returns" = True +nukeParamDoc "gtk_entry_set_text" "text" = True +nukeParamDoc "gtk_entry_get_text" "returns" = True +nukeParamDoc "gtk_entry_append_text" "text" = True +nukeParamDoc "gtk_entry_prepend_text" "text" = True +nukeParamDoc "gtk_entry_set_invisible_char" "ch" = True +nukeParamDoc "gtk_entry_set_has_frame" "setting" = True +nukeParamDoc "gtk_entry_set_completion" "completion" = True +nukeParamDoc "gtk_spin_button_get_value" "returns" = True +nukeParamDoc "gtk_spin_button_get_value_as_int" "returns" = True +nukeParamDoc "gtk_spin_button_set_value" "value" = True +nukeParamDoc "gtk_expander_new" "label" = True +nukeParamDoc "gtk_expander_set_expanded" "expanded" = True +nukeParamDoc "gtk_expander_get_expanded" "returns" = True +nukeParamDoc "gtk_expander_set_spacing" "spacing" = True +nukeParamDoc "gtk_expander_set_label" "label" = True +nukeParamDoc "gtk_expander_get_label" "returns" = True +nukeParamDoc "gtk_expander_get_use_markup" "returns" = True +nukeParamDoc "gtk_fixed_set_has_window" "hasWindow" = True +nukeParamDoc "gtk_fixed_get_has_window" "returns" = True +nukeParamDoc "gtk_notebook_get_n_pages" "returns" = True +nukeParamDoc "gtk_adjustment_set_value" "value" = True +nukeParamDoc "gtk_adjustment_get_value" "returns" = True +nukeParamDoc "gtk_arrow_new" "arrowType" = True +nukeParamDoc "gtk_arrow_new" "shadowType" = True +nukeParamDoc "gtk_arrow_set" "arrowType" = True +nukeParamDoc "gtk_arrow_set" "shadowType" = True +nukeParamDoc "gtk_calendar_set_display_options" "flags" = True +nukeParamDoc "gtk_calendar_display_options" "flags" = True +nukeParamDoc "gtk_calendar_get_display_options" "returns" = True +nukeParamDoc "gtk_event_box_set_visible_window" "visibleWindow" = True +nukeParamDoc "gtk_event_box_get_visible_window" "returns" = True +nukeParamDoc "gtk_event_box_set_above_child" "aboveChild" = True +nukeParamDoc "gtk_event_box_get_above_child" "returns" = True +nukeParamDoc "gtk_handle_box_set_shadow_type" "type" = True +nukeParamDoc "gtk_viewport_get_hadjustment" "returns" = True +nukeParamDoc "gtk_viewport_get_vadjustment" "returns" = True +nukeParamDoc "gtk_viewport_set_hadjustment" "adjustment" = True +nukeParamDoc "gtk_viewport_set_vadjustment" "adjustment" = True +nukeParamDoc "gtk_frame_set_label_widget" "labelWidget" = True +nukeParamDoc "gtk_frame_set_shadow_type" "type" = True +nukeParamDoc "gtk_frame_get_shadow_type" "returns" = True +nukeParamDoc "gtk_scrolled_window_get_hadjustment" "returns" = True +nukeParamDoc "gtk_scrolled_window_get_vadjustment" "returns" = True +nukeParamDoc "gtk_scrolled_window_get_placement" "returns" = True +nukeParamDoc "gtk_scrolled_window_set_shadow_type" "type" = True +nukeParamDoc "gtk_scrolled_window_get_shadow_type" "returns" = True +nukeParamDoc "gtk_scrolled_window_set_hadjustment" "hadjustment"= True +nukeParamDoc "gtk_scrolled_window_set_vadjustment" "hadjustment"= True +nukeParamDoc "gtk_window_set_title" "title" = True +nukeParamDoc "gtk_window_set_resizable" "resizable" = True +nukeParamDoc "gtk_window_set_position" "position" = True +nukeParamDoc "gtk_window_set_destroy_with_parent" "setting" = True +nukeParamDoc "gtk_window_set_decorated" "setting" = True +nukeParamDoc "gtk_color_selection_is_adjusting" "returns" = True +nukeParamDoc "gtk_check_menu_item_set_active" "isActive" = True +nukeParamDoc "gtk_check_menu_item_get_active" "returns" = True +nukeParamDoc "gtk_check_menu_item_set_inconsistent" "setting" = True +nukeParamDoc "gtk_check_menu_item_get_inconsistent" "returns" = True +nukeParamDoc "gtk_check_menu_item_set_draw_as_radio" "drawAsRadio" = True +nukeParamDoc "gtk_check_menu_item_get_draw_as_radio" "returns" = True +nukeParamDoc "gtk_combo_set_use_arrows" "val" = True +nukeParamDoc "gtk_combo_set_use_arrows_always" "val" = True +nukeParamDoc "gtk_combo_set_case_sensitive" "val" = True +nukeParamDoc "gtk_combo_box_set_wrap_width" "width" = True +nukeParamDoc "gtk_combo_box_set_row_span_column" "rowSpan" = True +nukeParamDoc "gtk_combo_box_set_column_span_column" "columnSpan"= True +nukeParamDoc "gtk_combo_box_set_model" "model" = True +nukeParamDoc "gtk_combo_box_append_text" "text" = True +nukeParamDoc "gtk_combo_box_prepend_text" "text" = True +nukeParamDoc "gtk_menu_set_title" "title" = True +nukeParamDoc "gtk_menu_item_set_submenu" "submenu" = True +nukeParamDoc "gtk_menu_item_get_right_justified" "returns" = True +nukeParamDoc "gtk_option_menu_get_menu" "returns" = True +nukeParamDoc "gtk_option_menu_set_menu" "menu" = True +nukeParamDoc "gtk_tool_item_get_homogeneous" "returns" = True +nukeParamDoc "gtk_tool_item_set_expand" "expand" = True +nukeParamDoc "gtk_tool_item_get_expand" "returns" = True +nukeParamDoc "gtk_tool_item_set_use_drag_window" "useDragWindow"= True +nukeParamDoc "gtk_tool_item_get_use_drag_window" "returns" = True +nukeParamDoc "gtk_tool_item_set_visible_horizontal" "visibleHorizontal" = True +nukeParamDoc "gtk_tool_item_get_visible_horizontal" "returns" = True +nukeParamDoc "gtk_tool_item_set_visible_vertical" "visibleVertical" = True +nukeParamDoc "gtk_tool_item_get_visible_vertical" "returns" = True +nukeParamDoc "gtk_tool_item_set_is_important" "isImportant" = True +nukeParamDoc "gtk_tool_item_get_icon_size" "returns" = True +nukeParamDoc "gtk_tool_item_get_orientation" "returns" = True +nukeParamDoc "gtk_tool_item_get_toolbar_style" "returns" = True +nukeParamDoc "gtk_tool_item_get_relief_style" "returns" = True +nukeParamDoc "gtk_tool_item_get_is_important" "returns" = True +nukeParamDoc "gtk_tool_item_retrieve_proxy_menu_item" "returns" = True +nukeParamDoc "gtk_toolbar_set_orientation" "orientation" = True +nukeParamDoc "gtk_toolbar_get_orientation" "returns" = True +nukeParamDoc "gtk_toolbar_set_style" "style" = True +nukeParamDoc "gtk_toolbar_get_style" "returns" = True +nukeParamDoc "gtk_toolbar_get_tooltips" "returns" = True +nukeParamDoc "gtk_toolbar_get_icon_size" "returns" = True +nukeParamDoc "gtk_toolbar_get_n_items" "returns" = True +nukeParamDoc "gtk_toolbar_set_show_arrow" "showArrow" = True +nukeParamDoc "gtk_toolbar_get_show_arrow" "returns" = True +nukeParamDoc "gtk_toolbar_get_relief_style" "returns" = True +nukeParamDoc "gtk_toolbar_set_icon_size" "iconSize" = True +nukeParamDoc "gtk_file_chooser_get_action" "returns" = True +nukeParamDoc "gtk_file_chooser_set_local_only" "localOnly" = True +nukeParamDoc "gtk_file_chooser_get_local_only" "returns" = True +nukeParamDoc "gtk_file_chooser_set_select_multiple" "selectMultiple" = True +nukeParamDoc "gtk_file_chooser_get_select_multiple" "returns" = True +nukeParamDoc "gtk_file_chooser_get_filenames" "returns" = True +nukeParamDoc "gtk_file_chooser_add_filter" "filter" = True +nukeParamDoc "gtk_file_chooser_remove_filter" "filter" = True +nukeParamDoc "gtk_file_chooser_set_filter" "filter" = True +nukeParamDoc "gtk_file_chooser_add_shortcut_folder" "returns" = True +nukeParamDoc "gtk_file_chooser_remove_shortcut_folder" "returns"= True +nukeParamDoc "gtk_file_chooser_add_shortcut_folder_uri" "returns" = True +nukeParamDoc "gtk_file_chooser_remove_shortcut_folder_uri" "returns" = True +nukeParamDoc "gtk_file_chooser_get_uris" "returns" = True +nukeParamDoc "gtk_file_chooser_list_filters" "returns" = True +nukeParamDoc "gtk_file_chooser_list_shortcut_folders" "returns" = True +nukeParamDoc "gtk_file_chooser_list_shortcut_folder_uris" "returns" = True +nukeParamDoc "gtk_font_selection_get_preview_text" "returns" = True +nukeParamDoc "gtk_font_selection_set_preview_text" "text" = True +nukeParamDoc "gtk_font_selection_dialog_get_preview_text" "returns" = True +nukeParamDoc "gtk_font_selection_dialog_set_preview_text" "text" = True +nukeParamDoc "gtk_text_mark_get_name" "returns" = True +nukeParamDoc "gtk_text_mark_get_buffer" "returns" = True +nukeParamDoc "gtk_text_mark_get_visible" "returns" = True +nukeParamDoc "gtk_text_mark_get_deleted" "returns" = True +nukeParamDoc "gtk_text_mark_set_visible" "setting" = True +nukeParamDoc "gtk_text_mark_get_left_gravity" "returns" = True +nukeParamDoc "gtk_text_tag_new" "name" = True +nukeParamDoc "gtk_text_tag_get_priority" "returns" = True +nukeParamDoc "gtk_text_tag_set_priority" "priority" = True +nukeParamDoc "gtk_text_tag_table_add" "tag" = True +nukeParamDoc "gtk_text_tag_table_remove" "tag" = True +nukeParamDoc "gtk_text_tag_table_get_size" "returns" = True +nukeParamDoc "gtk_text_buffer_get_line_count" "returns" = True +nukeParamDoc "gtk_text_buffer_get_char_count" "returns" = True +nukeParamDoc "gtk_text_buffer_get_tag_table" "returns" = True +nukeParamDoc "gtk_text_buffer_get_text" "returns" = True +nukeParamDoc "gtk_text_buffer_get_slice" "returns" = True +nukeParamDoc "gtk_text_buffer_insert_at_cursor" "text" = True +nukeParamDoc "gtk_text_buffer_insert_at_cursor" "len" = True +nukeParamDoc "gtk_text_buffer_get_insert" "returns" = True +nukeParamDoc "gtk_text_buffer_get_selection_bound" "returns" = True +nukeParamDoc "gtk_text_buffer_set_modified" "setting" = True +nukeParamDoc "gtk_text_buffer_get_end_iter" "iter" = True +nukeParamDoc "gtk_text_view_new_with_buffer" "buffer" = True +nukeParamDoc "gtk_text_view_set_buffer" "buffer" = True +nukeParamDoc "gtk_text_view_get_buffer" "returns" = True +nukeParamDoc "gtk_text_view_get_iter_location" "iter" = True +nukeParamDoc "gtk_text_view_get_iter_location" "location" = True +nukeParamDoc "gtk_text_view_set_wrap_mode" "wrapMode" = True +nukeParamDoc "gtk_text_view_get_wrap_mode" "returns" = True +nukeParamDoc "gtk_text_view_set_editable" "setting" = True +nukeParamDoc "gtk_text_view_get_editable" "returns" = True +nukeParamDoc "gtk_text_view_set_cursor_visible" "setting" = True +nukeParamDoc "gtk_text_view_get_cursor_visible" "returns" = True +nukeParamDoc "gtk_text_view_set_pixels_above_lines" "pixelsAboveLines" = True +nukeParamDoc "gtk_text_view_get_pixels_above_lines" "returns" = True +nukeParamDoc "gtk_text_view_set_pixels_below_lines" "pixelsBelowLines" = True +nukeParamDoc "gtk_text_view_get_pixels_below_lines" "returns" = True +nukeParamDoc "gtk_text_view_set_pixels_inside_wrap" "pixelsInsideWrap" = True +nukeParamDoc "gtk_text_view_get_pixels_inside_wrap" "returns" = True +nukeParamDoc "gtk_text_view_set_justification" "justification" = True +nukeParamDoc "gtk_text_view_get_justification" "returns" = True +nukeParamDoc "gtk_text_view_get_default_attributes" "returns" = True +nukeParamDoc "gtk_color_button_get_color" "color" = True +nukeParamDoc "gtk_combo_box_get_wrap_width" "returns" = True +nukeParamDoc "gtk_combo_box_get_row_span_column" "returns" = True +nukeParamDoc "gtk_combo_box_get_column_span_column" "returns" = True +nukeParamDoc "gtk_combo_box_get_active_text" "returns" = True +nukeParamDoc "gtk_combo_box_get_add_tearoffs" "returns" = True +nukeParamDoc "gtk_combo_box_set_focus_on_click" "returns" = True +nukeParamDoc "gtk_image_get_pixel_size" "returns" = True +nukeParamDoc "gtk_image_set_from_file" "filename" = True +nukeParamDoc "gtk_progress_bar_set_ellipsize" "mode" = True +nukeParamDoc "gtk_progress_bar_get_ellipsize" "returns" = True +nukeParamDoc "gtk_widget_get_modifier_style" "returns" = True +nukeParamDoc "gtk_widget_get_default_direction" "returns" = True +nukeParamDoc "gtk_widget_get_direction" "returns" = True +nukeParamDoc "gtk_widget_set_direction" "dir" = True +nukeParamDoc "gtk_widget_get_name" "returns" = True +nukeParamDoc _ _ = False +nukeParameterDocumentation = nukeParamDoc -- On win32 for glib/gtk 2.6 they changed the interpretation of functions that -- take or return system file names (as opposed to user displayable |